For at køre sudo
med adgangskode i én kommandolinje eller automatisere installationen af en applikation uden manuel indtastning af adgangskode, kan du overveje følgende metoder:
echo
og pipe
Du kan bruge echo
til at sende adgangskoden til sudo
kommandoen via en pipe:
echo "din_adgangskode" | sudo -S kommando
Bemærk, at denne metode kan være usikker, da adgangskoden vises i klar tekst.
sudoers
filenDu kan redigere sudoers
filen for at tillade en bestemt kommando at køre uden adgangskode:
sudoers
filen med visudo
:
sudo visudo
brugernavn ALL=(ALL) NOPASSWD: /sti/til/kommando
Erstat brugernavn
med dit brugernavn og /sti/til/kommando
med den fulde sti til den kommando, du vil køre uden adgangskode.
cron
jobsDu kan bruge cron
til at planlægge en opgave til at køre om natten:
crontab
for redigering:
crontab -e
0 2 * * * echo "din_adgangskode" | sudo -S /sti/til/kommando
Dette eksempel kører kommandoen hver nat kl. 2:00. Husk at erstatte din_adgangskode
og /sti/til/kommando
med dine egne værdier.
expect
scriptDu kan bruge et expect
script til at automatisere indtastningen af adgangskoden:
#!/usr/bin/expect -f
spawn sudo kommando
expect "password for brugernavn:"
send "din_adgangskode\r"
interact
Gem dette script som en fil, gør den eksekverbar med chmod +x filnavn
, og kør den.
Vælg den metode, der passer bedst til dine behov og sikkerhedskrav.