Je dois faire en sorte que, lors de la suppression d'un user spécifique d'un système, tous ses files sont supprimés. La création / la suppression d'users aura beaucoup de conséquences sur ce système. Je souhaite donc réutiliser les UID et veiller à ce que le nouvel user n'ait pas access aux files de l'ancien user.
Ma question est double:
search -uid n
échelle du système search -uid n
ma seule option? L'user n'a pas de privilèges sudo
, il ne peut donc écrire que dans des endroits accessibles au monde entier dans un système de files Unix standard.
Si vous supprimez un count, utilisez userdel -r
. Cela supprime le directory de base de l'user avec son contenu. En outre, le file de spoule de courrier appartenant à l'user est supprimé.
Je ne supposerais pas que n'importe quel directory n'aurait pas pu contenir des objects appartenant à l'user en question. Cela est particulièrement vrai si l'user disposait de privilèges SUDO.
Utilisez find
pour searchr l'UID du count que vous allez supprimer; ou venez de supprimer:
find / -user <UID> -exec ls -ld {} +
où UID est remplacé par la valeur UID réelle en question, ou le nom d'user si vous n'avez pas déjà supprimé le count;
ou, en général, pour les UID qui ne correspondent plus à un nom:
find / -nouser -exec ls -ld {} +
Ceux-ci sont portables parmi les différentes versions d'Unix (HP-UX, AIX, etc.) et parmi les dissortingbutions Linux. La find
GNU permet de -exec ls -ld {} +
par -ls
.
J'ai fait un peu de search de mon propre. Source principale: http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/c23.html
Longue histoire courte: il n'y a rien qui empêche un user de créer des files . Cependant, en standard FHS linux, seuls certains directorys peuvent être écrits par tout le monde. Tant que vous utilisez une dissortingbution qui suit cette convention, vous ne devriez vérifier que les directorys suivants (comme indiqué par un test sur mon propre système):
La source:
find -type d | while read DIR; do if touch $DIR/test_can_be_removed123 2>/dev/null; then rm $DIR/test_can_be_removed123 echo $DIR >> writable_directories fi done