Når du udsteder en kommando med sudo
i Linux, sker der en række ting, der kan påvirke, hvordan systemet søger efter og udfører kommandoen. Her er en detaljeret forklaring:
sudo
, bruger systemet den aktuelle brugers PATH
miljøvariabel til at finde kommandoen.sudo
, skifter systemet til root-brugeren, og det er root-brugerens PATH
der anvendes til at finde kommandoen.sudo
kan ændre miljøvariabler, herunder PATH
, afhængigt af konfigurationen i /etc/sudoers
filen.PATH
kan være forskellig fra den aktuelle brugers PATH
, hvilket kan føre til, at kommandoen ikke findes.sudo
kan være konfigureret til at bruge et begrænset sæt miljøvariabler, hvilket kan ekskludere brugerens PATH
.PATH
.sudo /usr/local/bin/my-command
.PATH
ved at redigere /etc/sudoers
filen:
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
sudo -E
for at bevare den aktuelle brugers miljøvariabler, herunder PATH
:
sudo -E my-command
sudo env
til at specificere PATH
for en enkelt kommando:
sudo env PATH=$PATH my-command
Ved at forstå, hvordan sudo
håndterer miljøvariabler og PATH, kan du effektivt løse problemer med "command not found" og sikre, at dine kommandoer udføres korrekt.
Spar dig selv for besvær og kom igennem din to-do liste i dag
1
Beskriv din opgave
2
Modtag bud
3
Få løst din opgave
Møbelsamling
Hjælp med at samle Ikea klædeskab
Maler
Klargøring af lejlighed til flyttesyn
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Havearbejde
Beskæring af 4 større træer
IT support
Geninstallering af windows + programmer
Elektriker
Installation af Sonos musikanlæg i hus
Rengøring
Ugentlig rengøring af lejlighed (114kvm)
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Elektriker
Opsætning af lamper i stue og soveværelse
Catering
3-retters menu til 14 mennesker