Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/05/2020, à 16:21

Guismo

supprimer des utilisateurs sauf exception

Bonjour,

J'utilise trois ordi chez moi afin de pouvoir faire découvrir Linux a quelques personnes mais je dois toutes les semaines supprimer les utilisateurs enregistrés.
Deux reste, mon profil, et le profil root.

J'aimerais savoir comment je pourrais faire via un script pour supprimer les utilisateurs concernés à l’exception des deux (le mien, et root) .

j'ai bien monter un script qui me permet de supprimer les utilisateur suivant leur nom mais il me semble que je peux faire mieux via les exception ou tous simplement effacer le /home sauf ces deux profil, mais malheureusement j'y réfléchis depuis quelques jours et je ne trouve rien dans les méandre du net et de mes pensée.

Quelqu'un aurais t'il une piste?

Merci par avance pour vos lumières


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#2 Le 29/05/2020, à 17:38

Nasman

Re : supprimer des utilisateurs sauf exception

Et si tu activais la session invitée ?
Cela serait plus commode pour les gens qui veulent tester linux.

Après redémarrage, les données des sessions invité seraient supprimées (à moins de les sauvegarder sur clés usb...)


PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#3 Le 29/05/2020, à 17:47

Guismo

Re : supprimer des utilisateurs sauf exception

Oui vu de cette manière les choses serais simple, mais voila la session invité ne m'arrange pas, il faut que je fasse des sessions utilisateur nommé, le but pour moi c'est de faire partir le script sur le réseau et d'effacer tous les utilisateur hormis les deux qui eux restent smile


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#4 Le 29/05/2020, à 20:04

alex2423

Re : supprimer des utilisateurs sauf exception

Guismo a écrit :

j'ai bien monter un script qui me permet de supprimer les utilisateur suivant leur nom mais il me semble que je peux faire mieux via les exception ou tous simplement effacer le /home sauf ces deux profil, mais malheureusement j'y réfléchis depuis quelques jours et je ne trouve rien dans les méandre du net et de mes pensée.

Quelqu'un aurais t'il une piste?

Merci par avance pour vos lumières

Tu peux par exemple, faire une boucle sur le répertoire /home pour parcourir l'ensemble des sous répertoires correspondant aux home des utilisateurs.

Dans ta boucle, tu mets un "if" pour exclure la suppression de ton home : 
Tu pourrais faire un truc du style (en supposant que tu le lances avec ton compte utilisateur) :
for home_user in $(ls /home)

if [ "$home_user" != "$USER" ]
then
 rm -f /home/$home_user
fi

$USER correspond à l'utilisateur courant.

Pour supprimer l'utilisateur du système : 
- soit tu utilises la commande  https://doc.ubuntu-fr.org/tutoriel/gest … tilisateur
- soit tu es un peu bourrin, et tu peux t'aider de la commande sed pour supprimer la ligne manuellement dans le fichier /etc/passwd

Hors ligne

#5 Le 29/05/2020, à 22:17

Guismo

Re : supprimer des utilisateurs sauf exception

MM, je comprend j'ai bien reçu le message je test demain, et je ferais un retour de mes essais, je fait un script qui en sommes doit s’exécuter et travailler tout seul pour la suppression des utilisateur (sauf un utilisateur et le root)  autres que 2 présent dans le home, il doit aussi pouvoir changer le  hostname des machines et enfin pouvoir aussi ajouter des utilisateur.

En sommes
1-il cherche les ip connectée
2- Il se connecte
3-une fois connecté aux ip, il  supprime les utilisateurs en trop
4-s'il se passe quelques chose, augmentation du nombre de pc, panne de PC etc, être en mesure de pouvoir changer le hostname d'une machine (neuve ou pas).

sur ces quatre points je n'ai que les deux premier qui sont valable maintenant me reste les deux autres pour finir ce script.

Cool merci encore à plus smile smile



Merci à toi @alex2423.

Dernière modification par Guismo (Le 29/05/2020, à 22:17)


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#6 Le 30/05/2020, à 00:06

kamaris

Re : supprimer des utilisateurs sauf exception

Pour supprimer les utilisateurs ajoutés ainsi que leurs répertoires personnels, tu peux faire :

awk -F: '$3 > 1000 && $3 < 60000{print $1}' /etc/passwd | sudo xargs -n1 userdel -r

Hors ligne

#7 Le 30/05/2020, à 08:30

Guismo

Re : supprimer des utilisateurs sauf exception

kamaris a écrit :

Pour supprimer les utilisateurs ajoutés ainsi que leurs répertoires personnels, tu peux faire :

awk -F: '$3 > 1000 && $3 < 60000{print $1}' /etc/passwd | sudo xargs -n1 userdel -r

Salu kamaris, je vais tester ta commande sur une machine virtuelle


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#8 Le 30/05/2020, à 08:58

Guismo

Re : supprimer des utilisateurs sauf exception

Peux tu m'expliquer cette partie?

'$3 > 1000 && $3 < 60000{print $1}'

je ne la comprend pas malheureusement hmm

Je ne sais pas trp comment la traduite mais je vais essayer, merci par avance de me reprendre et de me rectifier.

Tu prend à partir du troisième argument qui serais supérieur à 1000 et inférieur à 60000 ?

Dernière modification par Guismo (Le 30/05/2020, à 09:18)


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#9 Le 30/05/2020, à 18:40

serged

Re : supprimer des utilisateurs sauf exception

Guismo a écrit :

Peux tu m'expliquer cette partie?

'$3 > 1000 && $3 < 60000{print $1}'

je ne la comprend pas malheureusement hmm

Je ne sais pas trp comment la traduite mais je vais essayer, merci par avance de me reprendre et de me rectifier.

Tu prend à partir du troisième argument qui serais supérieur à 1000 et inférieur à 60000 ?

Le 3ème élément de chaque ligne de /etc/passwd est l'UID de l'utilisateur. Par exemple :

root:x:0:0:root:/root:/bin/bash

(root à l'UID 0)
Les utilisateurs (dont toi) ont des UID >= 1000, sauf "nobody" :

nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin

Donc on supprime les utilisateurs d'UID > 1000 (l'UID 1000, c'est toi !) et < 60000 (on ne supprime pas "nobody").


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#10 Le 30/05/2020, à 19:13

MicP

Re : supprimer des utilisateurs sauf exception

Bonjour

Pour l'UID minimum et maximum,
voir :

egrep "^UID_MIN|^UID_MAX" /etc/login.defs

=======
Pour info,

userdel -r nomUser

supprime aussi le groupe principal du compte utilisateur nomUser
si USERGROUPS_ENAB est à yes :

grep ^USERGROUPS_ENAB /etc/login.defs

Dernière modification par MicP (Le 30/05/2020, à 19:38)

Hors ligne

#11 Le 31/05/2020, à 07:29

Guismo

Re : supprimer des utilisateurs sauf exception

Vous êtes tous au top, vraiment merci, maintenant je comprend deux solutions sois on supprime en manuel pour un utilisateur dans l'exemple.

Soit on supprime tout les utilisateurs en une seule fois via leur UID.

Dernière modification par Guismo (Le 31/05/2020, à 09:07)


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#12 Le 03/06/2020, à 20:49

Guismo

Re : supprimer des utilisateurs sauf exception

Je reviens vers vous par ce que lorsque j'execute la commande via un script sur ssh cela ne fonctionne pas

#!/bin/bash

awk -F: '$3 > 1000 && $3 < 6000{print $1}' /etc/passwd | sudo xargs -n1 userdel -r >/dev/null 2<&1

les utilisateurs ne se suppriment pas par contre si je l’exécute sur la machine les utilisateurs se suppriment

Dernière modification par Guismo (Le 03/06/2020, à 20:50)


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#13 Le 03/06/2020, à 21:04

Guismo

Re : supprimer des utilisateurs sauf exception

je vais créer un autre sujet la dessus


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#14 Le 03/06/2020, à 21:09

Guismo

Re : supprimer des utilisateurs sauf exception

Bonjour, je reviens vers vous par ce que lorsque j’exécute cette commande via un script sur ssh cela ne fonctionne pas

#!/bin/bash

awk -F: '$3 > 1000 && $3 < 6000{print $1}' /etc/passwd | sudo xargs -n1 userdel -r >/dev/null 2<&1

les utilisateurs ne se suppriment pas, par contre si j’exécute cette commande sur la machine les utilisateurs se suppriment et en mode utilisateur SVP.

malgré tout les droits apporter à l’utilisateur de la machine j'ai tout de même un message d'erreur:

sudo: pas de TTY présent et pas de programme askpass spécifié

J' ai tout essayé avec visudo et bien aucun résultat

Quelqu'un peut me montrer le chemin pour que cela fonctionne?

Dernière modification par Guismo (Le 03/06/2020, à 21:10)


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne

#15 Le 03/06/2020, à 21:28

cqfd93

Re : supprimer des utilisateurs sauf exception

Modération

Bonjour,

Inutile d'ouvrir une nouvelle discussion. Sujets fusionnés.


cqfd93

Hors ligne

#16 Le 03/06/2020, à 21:29

Watael

Re : supprimer des utilisateurs sauf exception

salut,

... | xargs -n1  sudo userdel -r

?

NB: il est préférable de ne pas rediriger les erreurs vers /dev/null quand on teste des commandes.

PS:

Inutile d'ouvrir une nouvelle discussion

des fois, si.
des fois, non. smile

Dernière modification par Watael (Le 03/06/2020, à 21:30)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#17 Le 03/06/2020, à 22:58

Guismo

Re : supprimer des utilisateurs sauf exception

ARRFF ça y est je vais faire gueuler, je peut supprimer l'autre 'le sujet) si vous voulez!

Cool le conseil pour le /dev/null, yes of course. En faite j'ai trouvé il manquais le -t à ma commande ssh, c'est bon j'ai résolu.

Vous me viré pas hmm, si je peut aider j'aiderais . big_smile:D:D

... | xargs -n1  sudo userdel -r

J'ai pas tester je test demain

En tous cas le -t a été magique cool

Bonne soirée tout le monde

lol:lol:


L'Homme est l'espèce la plus insensée, il vénère un dieu invisible et massacre une nature visible ! Sans savoir que cette nature qu'il massacre est ce dieu invisible qu'il vénère !

Hors ligne