GNU/Linux >> Tutoriels Linux >  >> Linux

Comment utiliser la commande linux flock pour empêcher un autre processus root de supprimer un fichier ?

Non, flock n'empêche personne de faire quoi que ce soit. Les verrous Unix sont CONSULTATIFS, ce qui signifie qu'ils empêchent d'autres processus d'appeler également flock (ou dans le cas d'un verrou partagé, empêchent un autre processus d'utiliser un verrou exclusif).

Cela n'empêche pas root, ni personne d'autre, de lire, d'écrire ou de supprimer le fichier.

Dans tous les cas, même s'il s'agissait d'un verrou obligatoire, cela n'empêcherait pas la suppression du fichier, car c'est le fichier qui est verrouillé et non l'entrée du répertoire.


sudo chattr +i ./file.xml

MarkR a raison de discuter du fichier pour l'empêcher d'être supprimé :

-(~)-------------------------------------------------------------------------------------------------------(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 n'est pas le bon outil pour ce travail. Si vous avez un programme qui supprime des fichiers, vous ne devez pas exécuter ce programme en tant que root. Vous devez l'exécuter en tant qu'utilisateur différent. Unix a un très bon support pour les autorisations de fichiers, mais root est un compte divin. Root peut tout faire, et il n'y a pas d'autorisations pour root.


Linux
  1. Comment utiliser la commande Linux grep

  2. Comment utiliser la commande history sous Linux

  3. Comment utiliser la commande sudo sous Linux

  4. Comment utiliser la commande Tar sous Linux

  5. Boîte à outils Sysadmin :comment utiliser la commande sort pour traiter du texte sous Linux

Comment utiliser la commande Linux Ping

Comment utiliser Sudo et le fichier Sudoers

Comment utiliser la commande Truncate sous Linux

Comment utiliser la commande uniq pour traiter des listes sous Linux

Comment utiliser la commande fd sur le système Linux

Comment utiliser la commande Gzip sous Linux ?