GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment utiliser la commande sudo sous Linux

Présentation

Sudo signifie SuperUser DO et est utilisé pour accéder aux fichiers et opérations restreints. Par défaut, Linux restreint l'accès à certaines parties du système, empêchant ainsi la compromission des fichiers sensibles.

Le sudo La commande élève temporairement les privilèges permettant aux utilisateurs d'effectuer des tâches sensibles sans se connecter en tant qu'utilisateur root. Dans ce didacticiel, découvrez comment utiliser la commande sudo sous Linux avec des exemples.

Prérequis

  • Un système exécutant Linux
  • Accès à une ligne de commande/fenêtre de terminal (Activités > Recherche > Terminal)
  • Un compte utilisateur avec sudo ou root privilèges

Comment utiliser la commande sudo

sudo a été développé comme un moyen d'accorder temporairement à un utilisateur des droits d'administration. Pour le faire fonctionner, utilisez sudo avant une commande restreinte. Le système vous demandera votre mot de passe. Une fois fourni, le système exécute la commande.

Syntaxe

Pour commencer à utiliser sudo , utilisez la syntaxe suivante :

sudo [command]

Lorsque le sudo est utilisée, un horodatage est entré dans les journaux système. L'utilisateur peut exécuter des commandes avec des privilèges élevés pendant une courte période (15 minutes par défaut). Si un utilisateur non-sudo essaie d'utiliser le sudo commande, il est enregistré en tant qu'événement de sécurité.

Options

sudo peut être utilisé avec des options supplémentaires :

  • -h - aider; affiche la syntaxe et les options de commande
  • -V - version; affiche la version actuelle de l'application sudo
  • -v – valider; actualiser la limite de temps sur sudo sans exécuter de commande
  • -l - liste; répertorie les privilèges de l'utilisateur ou vérifie une commande spécifique
  • -k - tuer; mettre fin aux privilèges sudo actuels

Des options supplémentaires peuvent être trouvées sous le -h option.

Accorder des privilèges sudo

Pour la plupart des distributions Linux modernes, un utilisateur doit être dans le sudo , les sudistes, ou roue groupe pour utiliser le sudo commande. Par défaut, un système mono-utilisateur accorde des privilèges sudo à son utilisateur. Un système ou un serveur avec plusieurs comptes d'utilisateurs peut exclure certains utilisateurs des privilèges sudo.

Nous vous recommandons de n'accorder que les privilèges absolument nécessaires à l'utilisateur pour effectuer des tâches quotidiennes.

Les sections suivantes expliquent comment ajouter un utilisateur au groupe sudoers.

RedHat et CentOS

Dans Redhat/CentOS, la roue le groupe contrôle sudo utilisateurs. Ajoutez un utilisateur au groupe de roues avec la commande suivante :

usermod -aG wheel [username]

Remplacez [username] avec un vrai nom d'utilisateur. Vous devrez peut-être vous connecter en tant qu'administrateur ou utiliser le su commande.

Debian et Ubuntu

Dans Debian/Ubuntu, le sudo le groupe contrôle les utilisateurs sudo. Ajoutez un utilisateur au groupe sudo avec la commande suivante :

usermod -aG sudo [username]

Remplacez [username] avec un vrai nom d'utilisateur. Vous devrez peut-être vous connecter en tant qu'administrateur ou utiliser le su commande.

Utiliser visudo et le groupe sudoers

Dans certaines versions modernes de Linux, les utilisateurs sont ajoutés aux sudoers fichier pour accorder des privilèges. Ceci est fait en utilisant le visudo commande.

1. Utilisez le visudo commande pour modifier le fichier de configuration :

sudo visudo

2. Cela ouvrira /etc/sudoers pour l'édition. Pour ajouter un utilisateur et accorder tous les privilèges sudo , ajoutez la ligne suivante :

[username] ALL=(ALL:ALL) ALL

3. Enregistrez et quittez le fichier.

Voici une ventilation des privilèges sudo accordés :

[username] [any-hostname]=([run-as-username]:[run-as-groupname]) [commands-allowed]

Exemples de sudo sous Linux

Utilisation de base de Sudo

1. Ouvrez une fenêtre de terminal et essayez la commande suivante :

apt-get update

2. Vous devriez voir un message d'erreur. Vous ne disposez pas des autorisations nécessaires pour exécuter la commande.

3. Essayez la même commande avec sudo :

sudo apt-get update

4. Tapez votre mot de passe lorsque vous y êtes invité. Le système exécute la commande et met à jour les référentiels.

Exécuter la commande en tant qu'utilisateur différent

1. Pour exécuter une commande en tant qu'utilisateur différent, dans le terminal, saisissez la commande suivante :

whoami

2. Le système devrait afficher votre nom d'utilisateur. Ensuite, exécutez la commande suivante :

sudo -u [different_username] whoami

3. Entrez le mot de passe pour [different_username] , et le whoami La commande s'exécutera et affichera l'utilisateur différent.

Passer à l'utilisateur racine

Cette commande bascule votre invite de commande vers le shell BASH en tant qu'utilisateur root :

sudo bash

Votre ligne de commande devrait changer en :

[email protected]:/home/[username]

Le hostname valeur sera le nom de réseau de ce système. Le username sera le nom d'utilisateur actuellement connecté.

Exécuter les commandes précédentes avec sudo

La ligne de commande Linux conserve un enregistrement des commandes précédemment exécutées. Ces enregistrements sont accessibles en appuyant sur la flèche vers le haut. Pour répéter la dernière commande avec des privilèges élevés, utilisez :

sudo !!

Cela fonctionne également avec les anciennes commandes. Spécifiez le numéro historique comme suit :

sudo !6

Cet exemple répète la 6ème entrée de l'historique avec le sudo commande.

Exécuter plusieurs commandes sur une seule ligne

Enchaînez plusieurs commandes ensemble, séparées par un point-virgule :

sudo ls; whoami; hostname

Ajouter une chaîne de texte à un fichier existant

L'ajout d'une chaîne de texte à un fichier est souvent utilisé pour ajouter le nom d'un référentiel de logiciels au fichier sources, sans ouvrir le fichier pour le modifier. Utilisez la syntaxe suivante avec les commandes echo, sudo et tee :

echo ‘string-of-text’ | sudo tee -a [path_to_file]

Par exemple :

echo "deb http://nginx.org/packages/debian `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list

Ubuntu
  1. Comment utiliser la commande Linux grep

  2. Comment utiliser la commande history sous Linux

  3. Comment utiliser la commande Apt-Get sous Linux

  4. Comment utiliser la commande id sous Linux

  5. Comment utiliser la commande "screen" sous Linux

Comment utiliser la commande Linux Top

Comment utiliser la commande fd sur le système Linux

Comment utiliser la commande wget sous Linux ?

Comment utiliser la commande xargs sous Linux ?

Comment utiliser la commande RPM sous Linux

Comment utiliser la commande which sous Linux