GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo uso el comando flock de Linux para evitar que otro proceso raíz elimine un archivo?

No, el rebaño NO impide que nadie haga nada. Los bloqueos de Unix son CONSEJOS, lo que significa que evitan que otros procesos también llamen a flock (o, en el caso de un bloqueo compartido, evitan que otro proceso use uno exclusivo).

No impide que root, ni nadie más, lea, escriba o elimine el archivo.

En cualquier caso, incluso si fuera un bloqueo obligatorio, no detendría la eliminación del archivo, ya que es el archivo el que se bloquea, no la entrada del directorio.


sudo chattr +i ./file.xml

MarkR es correcto al chatear el archivo evitará que se elimine:

-(~)-------------------------------------------------------------------------------------------------------(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 no es la herramienta adecuada para este trabajo. Si tiene un programa que elimina archivos, no debe ejecutar ese programa como root. Debe ejecutarlo como un usuario diferente. Unix tiene muy buen soporte para permisos de archivos, pero la cuenta de root es una buena. La raíz puede hacer todo, y no hay permisos para la raíz.


Linux
  1. Cómo usar el comando grep de Linux

  2. Cómo usar el comando de historial en Linux

  3. Cómo usar el comando sudo en Linux

  4. Cómo usar el comando Tar en Linux

  5. Caja de herramientas Sysadmin:cómo usar el comando ordenar para procesar texto en Linux

Cómo usar el comando ping de Linux

Cómo usar Sudo y el archivo Sudoers

Cómo usar el comando Truncar en Linux

Cómo usar el comando uniq para procesar listas en Linux

Cómo usar el comando fd en el sistema Linux

¿Cómo usar el comando Gzip en Linux?