su(1): Skillnad mellan sidversioner
Admin (diskussion | bidrag) (Skapade sidan med '= su(1) = == NAMN == su — kör kommando som annan användare/grupp (substituerad identitet) == SYNOPS == <pre> su [flaggor] [-] [user [argument ...]] </pre> == BESKRIVNING == '''su''' byter till annan användare/grupp och kör skal (eller angivet kommando). Utan ''user'' startas ett interaktivt skal som '''root'''. Av kompatibilitetsskäl byter den normalt inte katalog och sätter bara vissa miljövariabler – använd helst '''--login''' (eller kortformen '''-''')...') |
(Ingen skillnad)
|
Nuvarande version från 31 augusti 2025 kl. 16.40
su(1)
NAMN
su — kör kommando som annan användare/grupp (substituerad identitet)
SYNOPS
su [flaggor] [-] [user [argument ...]]
BESKRIVNING
su byter till annan användare/grupp och kör skal (eller angivet kommando). Utan user startas ett interaktivt skal som root. Av kompatibilitetsskäl byter den normalt inte katalog och sätter bara vissa miljövariabler – använd helst --login (eller kortformen -) för ett rent inloggningsskal.
Denna version använder PAM för autentisering/konto/session. För skript som redan körs som root rekommenderas runuser(1) eller, om PAM-session inte behövs, setpriv(1).
Observera att su först applicerar dina flaggor (t.ex. --login/--preserve-environment) och därefter låter PAM justera miljön. Sedan v2.38 nollställer su vissa resursgränser (RLIMIT_NICE/RTPRIO/FSIZE/AS/NOFILE).
FLAGGOR
| Flagga | Betydelse |
|---|---|
| -c cmd, --command= | Kör cmd via skalets -c.
|
| -f, --fast | Vidarebefordra -f till skalet (skalberoende nytta).
|
| -g grp, --group= | Primär grupp (endast root). |
| -G grp, --supp-group= | Extra (supplementär) grupp; första blir primär om --group saknas (endast root). |
| -, -l, --login | ”Rent” inloggningsskal: rensar miljön (utom TERM + ev. vitlista), sätter HOME/SHELL/USER/LOGNAME/PATH, byter till hemkatalog, sätter argv[0] till ”-”. |
| -m, -p, --preserve-environment | Behåll hela miljön (ignoreras om --login används). |
| -P, --pty | Kör via pseudoterminal (bättre isolering; motverkar TIOCSTI m.m.). Passar interaktivt bruk; eko stängs av om stdin är rör/pipe. |
| -s shell, --shell= | Kör angivet skal. Ignoreras för begränsat skal (ej i /etc/shells) om inte anroparen är root. Urval: flagga → (om --preserve-environment) $SHELL → måluserns skal → /bin/sh.
|
| --session-command= | Som -c men utan ny session (avråds). |
| -T, --no-pty | Tvinga bort PTY (mindre säkert; risk för TIOCSTI). |
| -w lista, --whitelist-environment= | Komma-separerad lista av variabler som bevaras trots --login (gäller inte HOME/SHELL/USER/LOGNAME/PATH). |
| -h, --help | Hjälptext. |
| -V, --version | Versionsinfo. |
SIGNALER
Vid SIGINT, SIGQUIT eller SIGTERM terminerar su först barnet med SIGTERM (och efter ~2 s med SIGKILL vid behov), och avslutar sedan självt med mottagen signal.
KONFIGURATION
su läser /etc/default/su och /etc/login.defs:
- FAIL_DELAY (sek): fördröjning vid misslyckad inloggning.
- ENV_PATH: PATH för vanliga användare (standard
/usr/local/bin:/bin:/usr/bin). - ENV_ROOTPATH / ENV_SUPATH: PATH för root (ENV_SUPATH vinner; standard
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin). - ALWAYS_SET_PATH (yes/no): om --login och --preserve-environment inte används, initiera PATH ändå. Tänk på att PATH även kan påverkas av PAM (t.ex.
pam_env) och systemets kataloglayout.
RETURKODER
- Normalt: returvärdet från körd process (om den dödas av signal → 128 + signalnummer).
- Från su själv: 1 (generiskt fel), 126 (kunde inte köra), 127 (kommando saknas).
FILER
/etc/pam.d/su– PAM för standard/etc/pam.d/su-l– PAM när --login används/etc/default/su– verktygsspecifika inställningar/etc/login.defs– globala inloggningsinställningar
NOTISER
Misslyckade su-försök loggas alltid till btmp; lastlog uppdateras inte automatiskt. Vill du visa varningar via pam_lastlog(8) vid su så konfigurera modulen att även uppdatera lastlog (t.ex. session required pam_lastlog.so nowtmp).
HISTORIK
Denna su härstammar från coreutils’ su (David MacKenzie); util-linux-varianten har refaktoriserats av Karel Zak.
SE ÄVEN
runuser(1), setpriv(1), login.defs(5), shells(5), pam(8)
TILLGÄNGLIGHET
su ingår i paketet util-linux (finns på kernel.org).
Sidslut
Orginalhemsidan på Engelska : https://www.man7.org/linux/man-pages/man1/su.1.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.