Linux Command Line Tutorial For Beginners 13 - sudo command
Innehållsförteckning:
- Installera Sudo (sudo-kommando hittades inte)
- Installera Sudo på Ubuntu och Debian
- Installera Sudo på CentOS och Fedora
- Lägga till användare till Sudoers
- Hur man använder Sudo
- Lösenord timeout
- Kör en kommando som annan användare än rot
- Hur man omdirigerar med Sudo
- Slutsats
Med kommandot sudo kan du köra program som en annan användare, som standard root-användare. Om du spenderar mycket tid på kommandoraden, är sudo ett av de kommandon som du kommer att använda ganska ofta.
Att använda sudo istället för att logga in som root är säkrare eftersom du kan ge begränsade administrativa behörigheter till enskilda användare utan att de vet root-lösenordet.
I denna handledning kommer vi att förklara hur du använder
sudo
kommandot.
Installera Sudo (sudo-kommando hittades inte)
Sudo-paketet är förinstallerat på de flesta Linux-distributioner.
För att kontrollera om sudo-paketet är installerat på ditt system öppnar du din konsol, skriver
sudo
och trycker på
Enter
. Om du har installerat sudo kommer systemet att visa ett kort hjälpmeddelande, annars ser du något som
sudo command not found
.
Om sudo inte är installerat kan du enkelt installera det med hjälp av paketansvarig för din distro.
Installera Sudo på Ubuntu och Debian
Installera Sudo på CentOS och Fedora
Lägga till användare till Sudoers
Som standard är de flesta Linux-distributioner som ger sudo-åtkomst lika enkelt som att lägga till användaren i sudo-gruppen som definieras i
sudoers
filen. Medlemmar i denna grupp kommer att kunna köra alla kommandon som root. Gruppens namn kan skilja sig från distribution till distribution.
På RedHat-baserade distributioner som CentOS och Fedora är sudo-gruppens namn
wheel
. Så här lägger du till användaren i gruppkörningen:
usermod -aG wheel username
På Debian, Ubuntu och deras derivat beviljas medlemmar i gruppen
sudo
med sudo-åtkomst:
usermod -aG sudo username
Rotanvändarkontot i Ubuntu avaktiveras som standard av säkerhetsskäl och användare uppmuntras att utföra systemadministrativ uppgift med sudo. Den ursprungliga användaren som skapats av Ubuntu-installationsprogrammet är redan medlem i sudo-gruppen, så om du kör Ubuntu är chansen att användaren du är inloggad som redan har beviljats med sudo-privilegier.
Till exempel för att låta användaren
linuxize
bara
mkdir
kommandot
mkdir
som sudo, skriv:
sudo visudo
och lägg till följande rad:
linuxize ALL=/bin/mkdir
På de flesta system öppnar
visudo
kommandot
/etc/sudoers
med vim-textredigeraren. Om du inte har erfarenhet av vim, kolla vår artikel om hur du sparar en fil och avsluta vim-redigeraren.
Du kan också tillåta användare att köra sudo-kommandon utan att ange lösenord:
linuxize ALL=(ALL) NOPASSWD: ALL
Hur man använder Sudo
Syntaxen för kommandot
sudo
är som följer:
sudo OPTION.. COMMAND
Kommandot
sudo
har många alternativ som styr dess beteende men vanligtvis används
sudo
i dess mest grundläggande form, utan något alternativ.
För att använda sudo, prefixer du bara kommandot med
sudo
:
sudo command
Var
command
är det kommando som du vill använda sudo för.
Sudo kommer att läsa
/etc/sudoers
och kontrollera om den åkallande användaren beviljas med sudo-bedömning. Första gången du använder sudo i en session uppmanas du att ange användarlösenordet och kommandot kommer att köras som root.
För att till exempel lista alla filer i
/root
katalogen du skulle använda:
sudo ls /root
password for linuxize:….bashrc.cache.config.local.profile
Lösenord timeout
Som standard kommer sudo att be dig att ange ditt lösenord igen efter fem minuters sudo-inaktivitet. Du kan ändra standard timeout genom att redigera
sudoers
filen. Öppna filen med
visudo
:
sudo visudo
Ställ in standard timeout genom att lägga till raden nedan, där
10
är tidsgränsen som anges i minuter:
Defaults timestamp_timeout=10
Defaults:user_name timestamp_timeout=10
Kör en kommando som annan användare än rot
Det finns en felaktig uppfattning att
sudo
endast används för att ge rotbehörigheter till en vanlig användare. Egentligen kan du använda
sudo
att köra ett kommando som alla användare.
Alternativet
-u
låter dig köra ett kommando som en specificerad användare.
I följande exempel använder vi
sudo
att köra kommandot
whoami
som en användare "richard":
sudo -u richard whoami
whoami
kommandot skriver ut namnet på den användare som kör kommandot:
Hur man omdirigerar med Sudo
sudo echo "test" > /root/file.txt
bash: /root/file.txt: Permission denied
Detta händer på grund av att omdirigeringen "
>
" för utgången utförs under den användare du är inloggad, inte den användare som anges av sudo. Omdirigering sker innan
sudo
kommandot åberopas.
En lösning är att åberopa ett nytt skal som rot med
sudo sh -c
:
sudo sh -c 'echo "test" > /root/file.txt'
Ett annat alternativ är att leda utgången som en vanlig användare till
tee
kommandot som visas nedan:
echo "test" | sudo tee /root/file.txt
Slutsats
Du har lärt dig hur du använder
sudo
kommandot och hur du skapar nya användare med sudo-privilegier.
Hur man skapar en sudo-användare på centos
Kommandot sudo är utformat så att användare kan köra program med säkerhetsprivilegier för en annan användare, som standard root-användare. I den här guiden visar vi dig hur du skapar en ny användare med sudo-privilegier på CentOS.
Hur man skapar en sudo-användare på debian
Kommandot sudo (förkortning för Super-user do) är ett program som är utformat för att låta användare utföra kommandon med säkerhetsprivilegierna för en annan användare, som standard rotanvändaren. I den här guiden visar vi dig hur du skapar en ny användare på ett Debian-system och ger det sudo-åtkomst.
Hur man skapar en sudo-användare på Ubuntu
I den här guiden visar vi dig hur du skapar en ny användare på en Ubuntu-maskin och ger den sudo-åtkomst. Du kan sedan använda detta användarkonto för att köra administrativa kommandon utan att behöva logga in på din Ubuntu-server som root-användare.







