sudo ( S øverst I være GØR ) kommando i Linux bruges generelt som et præfiks for nogle kommandoer, som kun superbrugere må køre. Hvis du præfikser en kommando med sudo, vil den køre den kommando med forhøjede privilegier eller med andre ord tillade en bruger med korrekte tilladelser at udføre en kommando som en anden bruger, såsom superbrugeren. Dette svarer til indstillingen Kør som administrator i Windows. Muligheden for sudo lader os have flere administratorer.
Disse brugere, der kan bruge sudo kommando skal have en indtastning i sudoers fil placeret på /etc/sudoers . Husk at for at redigere eller se sudoers-filen skal du bruge sudo-kommandoen. For at redigere sudoers-filen anbefales det at bruge visudo-kommandoen.
Som standard kræver sudo, at brugerne godkender sig selv med en adgangskode, der er brugerens adgangskode, ikke selve root-adgangskoden.
Syntaks for sudo kommando:
sudo -V | -h | -l | -v | -k | -K | -s | [ -H ] [-P ] [-S ] [ -b ] | [ -p prompt ] [ -c class|- ] [ -a auth_type ] [-r role ] [-t type ] [ -u username|#uid ] command>
Tilgængelige indstillinger i sudo-kommandoen
| Muligheder | Beskrivelse | Syntaks |
|---|---|---|
| -I | Indstillingen -V (version) får sudo til at udskrive versionsnummeret og afslutte. Hvis den påkaldende bruger allerede er root, vil valgmuligheden -V udskrive en liste over de standardindstillinger, som sudo blev kompileret med. | sudo -V> |
| -l | Valgmuligheden -l (liste) vil udskrive de kommandoer, der er tilladt (og forbudt) brugeren på den aktuelle vært. | sudo -l> |
| -h eller -hjælp | Indstillingen -h (hjælp) får sudo til at udskrive en brugsmeddelelse og afslutte. | sudo -h> |
| -i | Hvis, givet valgmuligheden -v (valider), opdaterer sudo brugerens tidsstempel, og beder om brugerens adgangskode, hvis det er nødvendigt. Dette forlænger sudo-timeoutet med yderligere 5 minutter (eller som givet i sudoers), men kører ikke en kommando. Dette giver ikke noget output. | sudo -v> |
| -k | Muligheden -k (kill) til sudo ugyldiggør brugerens tidsstempel. Så næste gang sudo køres, kræves der en adgangskode. Denne mulighed kræver ikke en adgangskode og blev tilføjet for at give en bruger mulighed for at tilbagekalde sudo-tilladelser fra en logout-fil. | sudo -k> |
| -K | I lighed med -k-indstillingen, bruges -K (sure kill)-indstillingen til at fjerne brugerens tidsstempel helt. Ligeledes kræver denne mulighed ikke en adgangskode. | sudo -K> |
| -b | Indstillingen -b (baggrund) fortæller sudo at køre den givne kommando i baggrunden. Bemærk, at hvis du bruger muligheden -b, kan du ikke bruge shell jobkontrol at manipulere processen. | sudo -b [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) |
| -s | kommandoen sudo -p prompt giver dig mulighed for at tilpasse adgangskodeprompten, som sudo viser, når den anmoder om brugerens adgangskode. Som standard vil sudo vise en generisk adgangskodeprompt, der ser ud | sudo -p 'Enter your password' [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) java-tegn til int |
| -n | Indstillingen -n tillader sudo at udføre en kommando uden at bede om en adgangskode. Denne mulighed er nyttig, når du kører sudo-kommandoer som baggrundsjob eller i et shell-script. Valgmuligheden -n står for ikke-interaktiv. | sudo -n [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) 'abc' er i tal' |
| -i | Indstillingen -u får sudo til at køre den angivne kommando som en anden bruger end root. Brug #uid for at angive et UID i stedet for et brugernavn. | sudo -u [user] [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) |
| -s | Valgmuligheden -s kører den shell, der er angivet af SHELL-miljøvariablen, hvis den er indstillet, eller shellen som angivet i filen passwd. | sudo -s [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) |
| -H | Indstillingen -H indstiller HOME-miljøvariablen til målbrugerens hjemmemappe (root som standard) som angivet i passwd. Som standard ændrer sudo ikke HOME. | sudo -H [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) |
| -S | Indstillingen -S får sudo til at læse adgangskoden fra standardinput i stedet for terminalenheden. | sudo -S [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) |
| -en | Valgmuligheden -a får sudo til at bruge den angivne godkendelsestype ved validering af brugeren, som tilladt af /etc/login.conf. Systemadministratoren kan angive en liste over sudo-specifikke autentificeringsmetoder ved at tilføje en auth-sudo-indgang i /etc/login.conf. | sudo -a [auth-type] [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) c++ sæt |
| — | Flaget — angiver, at sudo skal stoppe med at behandle kommandolinjeargumenter. Det er mest nyttigt i forbindelse med flaget -s. | sudo -- [command]> (erstat kommandoen med den kommando, du vil køre i baggrunden) |
Output af få kommandoer
1. -V: Indstillingen -V (version) får sudo til at udskrive versionsnummeret og afslutte. Hvis den påkaldende bruger allerede er root, vil valgmuligheden -V udskrive en liste over de standardindstillinger, som sudo blev kompileret med.
sudo -V
2. -l: Valgmuligheden -l (liste) vil udskrive de kommandoer, der er tilladt (og forbudt) brugeren på den aktuelle vært.
sudo -l
3. -h eller -hjælp: Indstillingen -h (hjælp) får sudo til at udskrive en brugsmeddelelse og afslutte.
sudo -h
miljøvariabler
Disse miljøvariabler bruges af sudo
udefineret hældning
| Tag | Beskrivelse |
|---|---|
| REDAKTØR | Standard editor til brug i -Det er (sudoedit)-tilstand, hvis VISUAL ikke er indstillet |
| HJEM | I -s eller -H tilstand (eller hvis sudo blev konfigureret med –enable-shell-sets-home option), indstillet til homedir for målbrugeren |
| STI | Indstil til en fornuftig værdi, hvis sikker_sti sudoers indstilling er indstillet. |
| SKAL | Bruges til at bestemme, at shell skal køre med -s option |
| SUDO_PROMPT | Bruges som standardadgangskodeprompt |
| SUDO_COMMAND | Indstil til kommandoen køres af sudo |
| SUDO_USER | Indstil til login for den bruger, der påberåbte sudo |
| SUDO_UID | Indstil til uid for den bruger, der påkaldte sudo |
| SUDO_GID | Indstil til gid for den bruger, der påberåbte sudo |
| SOUTH_PS1 | Hvis indstillet, vil PS1 blive indstillet til sin værdi |
| BRUGER | Indstil til målbrugeren (root medmindre -i mulighed er angivet) |
| VISUEL | Standard editor til brug i -Det er (sudoedit) tilstand |
sudo Command i Linux – FAQ
Hvad er 'sudo' i Linux?
Sudo er en kommando i Linux, der tillader brugere at køre kommandoer med privilegier, som kun root-brugere har. Det hjælper brugere med at udføre opgaver med administrativ magt uden at logge på som root-bruger, selvom det nogle gange kan være risikabelt.
Hvilke Linux-kommandoer har brug for 'sudo'-rettigheder?
Der er mange Linux-kommandoer, der er nødvendige for at udføre med sudo-privilegier, såsom netværkskommandoer, pakkestyringskommandoer og kommandoer på systemniveau. For eksempel er kommandoer, der kræver sudo-rettigheder for at køre, `yum`, `systemctl`, `mount`, `apt-get`, `fdisk` og `ifconfig`.
Hvad kan jeg køre med sudo?
Der er mange Linux-kommandoer, der kræver sudo-privilegier for at køre, men man skal huske at bruge det med forsigtighed, da de kan ændre kritiske systemkonfigurationer og filer. For at undgå konsekvenser bør vi tjekke to gange, før vi kører kommandoer. Kommandoer som:
- Installation af en ny pakke: `sudo apt-get install package_name`
- Opdatering af systemet: `sudo apt-get update && sudo apt-get upgrade`
- Ændring af systemkonfigurationer: `sudo nano /etc/fstab`
- Start af en systemtjeneste: `sudo systemctl start service_name`
- Stop en systemtjeneste: `sudo systemctl stop service_name`
- Oprettelse af en ny brugerkonto: `sudo useradd brugernavn`
- Ændring af filtilladelser: `sudo chmod 755 filnavn`
Hvad er forskellen mellem su og sudo kommando i Linux?
I Linux gør kommandoen su (skift bruger) brugere i stand til at logge på som en anden bruger, ofte rodbrugeren, og få adgang til deres filer og indstillinger. I modsætning hertil gør sudo-kommandoen brugere i stand til at køre visse kommandoer med øgede privilegier uden at logge ind som root-bruger. Sudo er en mere sikker metode til at give midlertidige root-privilegier til brugere.
streng til tegn java
Hvordan giver og tager jeg bruger sudo-adgang i Linux?
I Linux kan vi give eller tage `sudo` adgang ved at tilføje eller fjerne brugernavnet fra filen kaldet `sudores`. For at tilføje brugernavn til sudoerne skal vi køre `sudo visudo`-kommandoen og redigere filen og tilføje linjen, der giver adgang til brugeren. For eksempel: brugernavn ALLE=(ALLE:ALLE) ALLE giver brugeren fuld adgang til sudo-kommandoen.
Og vi kan deaktivere en brugers sudo-adgang ved at bruge den samme kommando sudo visudo, som vil blive brugt til at redigere sudoers-filen og fjerne linjen, der giver dem sudo-adgang. Når linjen er slettet, vil brugeren ikke længere være i stand til at bruge sudo-kommandoen til at udføre privilegerede kommandoer.
Konklusion
I Linux ersudo>kommandoen fungerer som en magisk nøgle, der låser op for specielle kræfter, og lader dig udføre vigtige opgaver, som normalt kun superbrugeren kan udføre. Det er en måde at bede om tilladelse til at udføre kommandoer med forhøjede rettigheder, som at installere software eller ændre systemindstillinger. Du brugersudo>før en kommando for at vise, at du har lov til at køre den som superbruger. At brugesudo>, skal du normalt indtaste din egen adgangskode for at bevise, at det virkelig er dig, der gør det, ikke en anden. Husk,sudo>er kraftfuld, så brug den forsigtigt! Det kan ændre vigtige ting på din computer. Ved at forståsudo>og dets muligheder, kan du bruge Linux mere effektivt og sikkert.