run0(1)
NAMN
run0 – höj privilegier
SYNOPSIS
run0 [OPTIONER...] [KOMMANDO...]
BESKRIVNING
run0 används för att tillfälligt och interaktivt skaffa högre eller andra privilegier.
Verktyget fyller ungefär samma funktion som sudo(8), men fungerar annorlunda på flera viktiga punkter:
- inga körnings- eller säkerhetsuppgifter ärvs direkt från den anropande processen
- kommandot körs i en ny, isolerad tjänst som startas av tjänstehanteraren
- autentisering sker via polkit
- autentiseringsfrågan isoleras från terminalen när det är möjligt
- en separat pseudo-TTY skapas för kommandot
- implementationen använder inte SetUID- eller SetGID-bitar
Detta är avsett att ge ett säkrare och mer robust alternativ till sudo, särskilt i system där SetUID/SetGID inte används eller inte är tillgängligt.
Ett exempel är system där:
NoNewPrivileges=
har aktiverats i systemd-system.conf(5).
Alla sessioner som startas via run0 körs genom PAM-stacken:
systemd-run0
run0 är implementerat som ett alternativt anropsläge för systemd-run(1).
Det betyder att run0 normalt är en symbolisk länk till programfilen systemd-run. När programmet startas via länken beter det sig som run0, annars som systemd-run.
OPTIONER
--unit=
- Använd angivet unit-namn i stället för ett automatiskt skapat namn.
- Tillagd i version 256.
--property=
- Ange en egenskap för den tjänsteenhet som skapas.
- Formatet är samma som för:
systemctl set-property
- Se systemctl(1).
- Tillagd i version 256.
--description=
- Ange en beskrivning för tjänsteenheten.
- Om ingen beskrivning anges används kommandot självt.
- Se Description= i systemd.unit(5).
- Tillagd i version 256.
--slice=
- Placera den nya tjänsteenheten i angiven slice i stället för user.slice.
- Tillagd i version 256.
--slice-inherit
- Placera den nya tjänsteenheten i den slice där run0 självt körs.
- Kan kombineras med --slice=.
Exempel: om run0 körs i foo.slice och --slice=bar anges placeras enheten i:
foo-bar.slice
- Tillagd i version 256.
--user=, -u
- Byt till angiven användare.
--group=, -g
- Byt till angiven grupp.
- Standard är root, om inte --area= eller --empower används. Då används i stället den anropande användaren.
- Tillagd i version 256.
--nice=
- Kör sessionen med angivet nice-värde.
- Tillagd i version 256.
--chdir=, -D
- Kör sessionen i angiven arbetskatalog.
- Vid byte till root används normalt klientens aktuella katalog.
- Vid byte till en annan användare används normalt målanvändarens hemkatalog.
- Tillagd i version 256.
--via-shell
- Starta målanvändarens inloggningsskal och kör kommandot genom det.
- Tillagd i version 258.
-i
- Kortform för:
--via-shell --chdir='~'
- Tillagd i version 258.
--setenv= NAMN[=VÄRDE]
- Sätt en miljövariabel för sessionen.
- Optionen kan anges flera gånger.
- Om =VÄRDE utelämnas används värdet från den anropande miljön.
- Tillagd i version 256.
--background= FÄRG
- Ändra terminalens bakgrundsfärg under sessionen.
- Om ingen färg anges används normalt en rödaktig ton för root och en gulaktig ton för annan UID.
- Färgen ska anges som en ANSI X3.64 SGR-bakgrundsfärg.
Exempel:
--background=44
ger blå bakgrund.
- En tom sträng stänger av färgändringen.
- Tillagd i version 256.
--pty
- Skapa en pseudo-TTY för sessionen.
--pty-late
- Som --pty, men börja använda TTY:n först när tjänstestarten är klar.
- Detta lämnar terminalinmatningen till lösenords- eller polkit-agenter under uppstarten.
--pipe
- Skicka den anropande processens standardflöden direkt till den nya processen.
Om ingen av dessa anges väljs läget automatiskt.
Om standardindata, standardutdata och standardfel är anslutna till en TTY används normalt pseudo-TTY.
Annars skickas filbeskrivarna direkt.
--pty och --pipe lades till i version 257.
--pty-late lades till i version 258.
--shell-prompt-prefix= STRÄNG
- Ange prefix för skalprompten.
- Detta styr miljövariabeln:
SHELL_PROMPT_PREFIX
- Standard är en superhjälte-emoji om terminalen stöder detta.
- En tom sträng stänger av prefixet.
- Tillagd i version 257.
--lightweight= BOOLEAN
- Styr om målanvändarens per-user service manager ska aktiveras.
- Standard är auto.
- För root och systemanvändare aktiveras den normalt inte.
- För vanliga användare aktiveras den normalt.
- Detta påverkar XDG_SESSION_CLASS som används av pam_systemd(8).
- Tillagd i version 258.
--area= OMRÅDE
- Logga in i ett särskilt område för målkontot.
- Ett område är en sekundär hemkatalog under användarens vanliga hemkatalog.
Exempel:
~/Areas/foobar
- Om endast ett område anges, utan --user=, används den anropande användaren.
- Detta påverkar miljövariabeln XDG_AREA.
- Tillagd i version 258.
--empower
- Höj privilegierna för vald användare eller aktuell användare.
- För närvarande innebär detta att processen får alla tillgängliga capabilities och att gruppen empower läggs till som extra grupp.
- Andra processer som körs som samma användare kan fortfarande påverka den privilegierade processen.
- Funktionen bör därför användas försiktigt i miljöer där skadliga processer kan köras som samma användare.
- Tillagd i version 259.
--same-root-dir
- Kör sessionen i samma rotkatalog som det anropande run0-kommandot.
- Tillagd i version 259.
--machine=
- Kör operationen i en lokal container.
- Ange containerns namn.
- Tillagd i version 256.
--no-ask-password
- Fråga inte användaren efter autentisering för privilegierade operationer.
-h, --help
- Visa kort hjälptext och avsluta.
--version
- Visa kort versionsinformation och avsluta.
Alla kommandoradsargument efter det första argument som inte är en option blir del av kommandot som startas.
Om inget kommando anges startas ett interaktivt skal.
Med --via-shell används målanvändarens skal.
Annars kan skalet anges med:
--setenv=SHELL=...
Lokalt används normalt den anropande användarens skal.
Med --machine= används normalt:
/bin/sh
Till skillnad från sudo startar run0 alltid skal med inloggningsskalets semantik, oavsett om -i används.
AVSLUTNINGSSTATUS
0
- Sessionen startades och kommandot lyckades.
Ett värde som inte är noll returneras om sessionen inte kunde startas eller om det angivna kommandot misslyckades.
MILJÖVARIABLER
Liksom systemd-run(1) ärver sessionen systemmiljön från tjänstehanteraren.
Dessutom sätts följande variabler:
TERM
- Kopieras från den anropande processen.
- Kan åsidosättas med --setenv=.
SUDO_USER
- Sätts till den ursprungliga användarens användarnamn.
SUDO_UID
- Sätts till den ursprungliga användarens numeriska UID.
SUDO_GID
- Sätts till den ursprungliga sessionens primära numeriska GID.
SHELL_PROMPT_PREFIX
- Sätts normalt till en superhjälte-emoji om detta stöds.
- Kan ändras med SYSTEMD_RUN_SHELL_PROMPT_PREFIX eller --shell-prompt-prefix=.
Följande variabel kan skickas till run0:
SYSTEMD_RUN_SHELL_PROMPT_PREFIX
- Åsidosätter standardprefixet för skalprompten.
- En tom sträng stänger av prefixet.
SE ÄVEN
- systemd(1)
- systemd-run(1)
- sudo(8)
- machinectl(1)
- pam_systemd(8)
- pam_systemd_home(8)
- systemd-system.conf(5)
- systemd.unit(5)
- systemctl(1)
ANMÄRKNINGAR
Polkit:
https://www.freedesktop.org/wiki/Software/polkit
ANSI Escape Code:
https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_(Select_Graphic_Rendition)_parameters
KOLOFON
Denna sida är en del av projektet systemd, system- och tjänstehanteraren.
Information om projektet finns på:
http://www.freedesktop.org/wiki/Software/systemd
Sidan hämtades från projektets uppströms Git-förråd:
https://github.com/systemd/systemd.git
den 24 maj 2026.
Vid den tidpunkten var den senaste hittade commiten daterad den 24 maj 2026.
Renderingsfel och förbättringar av HTML-versionen kan rapporteras till:
man-pages@man7.org
HÄNVISAD FRÅN
KORT SAMMANFATTNING
run0 är systemd:s alternativ till sudo.
Kör ett kommando som root:
run0 id
Starta ett interaktivt root-skal:
run0
Kör som en annan användare:
run0 --user=annan id
Starta via målanvändarens skal:
run0 --via-shell kommando
Kör i en viss katalog:
run0 --chdir=/root ls
Kör i en lokal container:
run0 --machine=min-container id
Till skillnad från sudo körs kommandot i en separat systemd-tjänst med polkit-autentisering och isolerad pseudo-TTY.
Sidslut
Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/run0.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 Stockholm som har sponsrat Linux.se med webbhotell.