GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso utilizzare il comando linux flock per impedire a un altro processo root di eliminare un file?

No, il gregge NON impedisce a nessuno di fare qualcosa. I lock Unix sono ADVISORY, il che significa che impediscono ad altri processi di chiamare il flock (o, nel caso di un lock condiviso, impediscono a un altro processo di usarne uno esclusivo).

Non impedisce a root, oa chiunque altro, di leggere, scrivere o eliminare il file.

In ogni caso, anche se fosse un blocco obbligatorio, non impedirebbe l'eliminazione del file, poiché è il file bloccato e non la voce della directory.


sudo chattr +i ./file.xml

MarkR ha ragione chattr'ing il file ne impedirà l'eliminazione:

-(~)-------------------------------------------------------------------------------------------------------(08:40 Mon Mar 29)
[email protected] [2135] --> sudo chattr +i junk.txt
[sudo] password for risk: 
-(~)-------------------------------------------------------------------------------------------------------(08:40 Mon Mar 29)
[email protected] [2136] --> sudo rm ./junk.txt 
rm: cannot remove `./junk.txt': Operation not permitted
zsh: exit 1     sudo rm ./junk.txt
-(~)-------------------------------------------------------------------------------------------------------(08:40 Mon Mar 29)
[email protected] [2137] --> sudo rm -f ./junk.txt
rm: cannot remove `./junk.txt': Operation not permitted
zsh: exit 1     sudo rm -f ./junk.txt
-(~)-------------------------------------------------------------------------------------------------------(08:40 Mon Mar 29)
[email protected] [2138] --> 

flock non è lo strumento giusto per questo lavoro. Se hai un programma che sta cancellando file, non dovresti eseguirlo come root. Dovresti eseguirlo come un altro utente. Unix ha un ottimo supporto per i permessi dei file, ma root è un account divino. Root può fare tutto e non ci sono permessi per root.


Linux
  1. Come usare il comando Linux grep

  2. Come usare il comando cronologia in Linux

  3. Come utilizzare il comando sudo in Linux

  4. Come utilizzare il comando Tar in Linux

  5. Casella degli strumenti Sysadmin:come utilizzare il comando di ordinamento per elaborare il testo in Linux

Come utilizzare il comando Ping di Linux

Come usare Sudo e il file Sudoers

Come usare il comando Tronca in Linux

Come utilizzare il comando uniq per elaborare gli elenchi in Linux

Come utilizzare il comando fd sul sistema Linux

Come utilizzare il comando Gzip in Linux?