Nous avons déjà examiné comment personnaliser l'invite de bash par défaut dans Linux. Dans ce tutoriel, nous apprendrons à modifier l'invite bash pour un groupe d'utilisateurs spécifiques dans les systèmes Linux et Unix.
Avant de configurer des invites de bash personnalisées vers des groupes d'utilisateurs, il est important de comprendre les avantages et les inconvénients de cette approche.
Table des matières
L'utilisation d'une invite de commande spécifique au groupe dans Linux peut être avantageuse dans certains scénarios, mais il est également livré avec certaines considérations. Voici les avantages et les inconvénients:
1. Identification plus facile des rôles utilisateur :
2. Réduction des erreurs :
3. Expérience utilisateur améliorée :
4. Utile dans les systèmes multi-utilisateurs :
1. Complexité dans la gestion :
2. Potentiel de mauvaise configuration :
3. Considérations de sécurité :
4. Dépendance à l'adhésion au groupe :
5. Remplissez sur les indices visuels :
En résumé, la personnalisation de l'invite de commande en fonction de l'appartenance à groupe peut être utile pour améliorer l'expérience utilisateur et réduire les erreurs dans un environnement multi-utilisateurs ou multi-rôles. Cependant, cela nécessite une mise en œuvre et une gestion minutieuses pour éviter la complexité, la mauvaise configuration et les problèmes de sécurité potentiels.
Allons-y et voyons comment modifier l'invite de commande pour un groupe d'utilisateurs spécifique dans les systèmes Linux et Unix.
Les étapes suivantes ont été testées sur le système LTS Ubuntu 22.04. Nous espérons que cette méthode pourrait également fonctionner sur d'autres distributions Linux.
À des fins de démonstration, je créerai un nouveau groupe appelé «développeurs» et un nouvel utilisateur nommé «Senthil» . Et puis j'ajouterai l'utilisateur «Senthil» au groupe «développeurs» .
En conséquence, chaque fois que l'utilisateur «Senthil» se connecte, leur invite changera automatiquement en «développeur-Senthil @ Ubuntu2204: ~ $» . Voyons comment le faire étape par étape.
Créer le groupe :
Exécutez la commande suivante pour créer un nouveau groupe nommé développeurs:
$ sudo groupadd développeurs
Cette commande crée un nouveau groupe appelé développeurs. Vous devrez peut-être saisir votre mot de passe si vous êtes invité.
Créer un nouvel utilisateur :
Pour créer un nouvel utilisateur nommé Senthil, utilisez la commande:
$ sudo addUser Senthil
Vous serez invité à définir un mot de passe pour le nouvel utilisateur et à remplir certaines informations utilisateur facultatives. Remplissez-les selon les besoins.
Ajoutez l'utilisateur au groupe :
Pour ajouter Senthil au groupe des développeurs, utilisez:
$ sudo usermod -ag développeurs Senthil
L'option -AG ajoute l'utilisateur au groupe tout en gardant ses abonnements de groupe existants.
Lorsque vous souhaitez modifier l'invite de commande pour les utilisateurs qui sont membres d'un groupe spécifique, vous avez deux options pour savoir où placer le script qui vérifie le groupe de l'utilisateur et modifie l'invite. Le choix dépend si vous souhaitez que le changement s'applique à un seul utilisateur ou à plusieurs utilisateurs:
Fichier .Bashrc de l'utilisateur individuel :
Fichier de configuration global /etc/bash.bashrc :
Avant d'apporter des modifications dans le fichier local ~ / .bashrc ou global /etc/bash.bashrc, je vous recommande fortement de les sauvegarder. Cela vous permet de restaurer les paramètres d'origine en cas de problème.
Pour sauvegarder le fichier ~ / .bashrc de l'utilisateur, exécutez:
$ cp ~ / .bashrc ~ / .bashrc_backup
Pour sauvegarder le fichier global bashrc, exécuter:
$ sudo cp /etc/bash.bashrc /etc/bash.bashrc_backup
Après avoir sauvegardé le fichier BASHRC approprié, ouvrez-le en utilisant votre éditeur préféré.
Ici, je vais appliquer cette méthode pour tous les utilisateurs du système, donc je modifie le fichier global /etc/bash.bashrc.
$ sudo nano /etc/bash.bashrc
Ajoutez les lignes suivantes à la fin:
bashrc_file = "/ home / $ (whoami) /. bashrc" développeur_prompt = 'ps1 = "développeur- \ u @ \ h: \ w \ $"' # Fonction pour ajouter ou mettre à jour PS1 dans .Bashrc add_or_update_ps1 () { prompt_line = 1 $ grep -qf - "$ prompt_line" "$ bashrc_file" || echo "$ prompt_line" >> "$ bashrc_file" } Si id -ng "$ (whoami)" | grep -qw "développeurs"; alors add_or_update_ps1 "$ développeur_prompt" FI
Décomposons le code ci-dessus et voyons ce que fait chaque option.
Définir les variables :
Fonction add_or_update_ps1 :
Vérifiez l'appartenance au groupe et appliquez une invite :
En résumé, ce script modifie l'invite de commande pour les utilisateurs qui appartiennent au groupe de développeurs en ajoutant une définition d'invite personnalisée à leur fichier .bashrc. Il garantit que l' invite personnalisée n'est ajoutée qu'une seule fois pour éviter la duplication.
Appuyez sur Ctrl O suivi de Ctrl x pour enregistrer le fichier et quitter.
N'oubliez pas qu'après l'édition de l'un ou l'autre fichier, les modifications ne prendront effet que lorsque une nouvelle session de shell sera démarrée. Les utilisateurs peuvent se déconnecter et revenir en arrière, soit ils peuvent exécuter Source ~ / .Bashrc dans leur session actuelle pour appliquer immédiatement les modifications.
Appliquer les modifications à l'aide de la commande:
$ source /etc/bash.bashrc
Maintenant, déconnectez-vous et connectez-vous en tant que «Senthil» de l'utilisateur. Ouvrez votre terminal et vous verrez que l'invite de l'utilisateur a changé pour quelque chose comme ceci:
Si votre système n'a pas d'interface graphique, vous pouvez le vérifier par SSH dans le système à partir d'autres systèmes.
développeur-Senthil @ Ubuntu2204: ~ $
Voir? L'invite bash de l'utilisateur a été modifiée.
Vous pouvez en outre modifier ce script pour distinguer les différents types d'utilisateurs.
Dites par exemple, vous pouvez distinguer les utilisateurs normaux et les utilisateurs administratifs qui appartiennent au groupe sudo dans Linux. Cela implique de modifier l'invite de commande selon que l'utilisateur a des privilèges sudo.
Ajoutez les lignes suivantes au fichier global /etc/bash.bashrc ou au fichier .bashrc d'un utilisateur individuel:
bashrc_file = "/ home / $ (whoami) /. bashrc" sudo_prompt = 'ps1 = "Sudouser- \ u @ \ h: \ w \ $"' normal_prompt = 'ps1 = "normalUser- \ u @ \ h: \ w \ $"' # Fonction pour ajouter ou mettre à jour PS1 dans .Bashrc add_or_update_ps1 () { prompt_line = 1 $ grep -qf - "$ prompt_line" "$ bashrc_file" || echo "$ prompt_line" >> "$ bashrc_file" } Si id -ng "$ (whoami)" | grep -qw "sudo"; alors add_or_update_ps1 "$ sudo_prompt" autre add_or_update_ps1 "$ normal_prompt" FI
Ce script modifiera l'invite pour sudouser-
La question de savoir si cette configuration est recommandée dépend du contexte et des besoins du système:
Avantages :
Inconvénients :
En résumé, la personnalisation de l'invite de commande pour distinguer les utilisateurs normaux et les utilisateurs sudo peut être utile dans certains environnements, en particulier lorsque l'identification rapide des privilèges des utilisateurs est importante.
Cependant, il n'est pas universellement recommandé, car il ajoute de la complexité et dépend des besoins spécifiques et des capacités de gestion des administrateurs système.
Si vous rencontrez des problèmes, vous pouvez retourner les modifications en restaurant le fichier .bashrc à partir de votre sauvegarde. Si vous n'avez pas effectué de sauvegarde, vous pouvez à nouveau modifier manuellement le fichier et supprimer ou commenter le script personnalisé que vous avez ajouté dans les étapes précédentes.
En outre, il existe une version par défaut du fichier .bashrc dans le répertoire / etc / skel / dans les systèmes Debian et Ubuntu.
$ ls -al / etc / skel / total 32 DRWXR-XR-X 2 racine racine 4096 Jan 8 18:02. DRWXR-XR-X 138 Root Root 12288 Jan 8 17:55 .. -rw-r - r-- 1 racine racine 220 janv. 2022 .bash_logout -rw-r - r-- 1 racine racine 4116 8 janvier 18:00<strong><mark> .Bashrc</mark> -rw-r - r-- 1 racine racine 807 janv. 2022 .profile</strong>
Copiez la version par défaut du fichier ~ / .bashrc dans votre version actuelle comme ci-dessous:
$ cp /etc/skel/.bashrc ~ /
Enfin, exécutez la commande suivante pour mettre à jour les modifications.
$ source ~ / .bashrc
Pour plus de détails, consultez le lien suivant:
Comment restaurer le fichier .bashrc aux paramètres par défaut dans Ubuntu
Dans ce didacticiel, nous avons discuté de la façon de définir une invite de bash personnalisée pour les utilisateurs d'un certain groupe, et les avantages et les inconvénients de la modification de l'invite de commande dans Linux avec des exemples de scripts.
Bien que la modification des invites de bash puisse être utile pour des besoins spécifiques dans certains environnements, il n'est généralement pas recommandé pour les débutants.
Il est toujours une bonne pratique de tester cette approche dans une machine virtuelle et de peser les avantages contre les risques et les complexités potentiels avant de mettre en œuvre ces changements.
Lire connexe:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!