Zagon aplikacij
Ubuntu in druge distribucije, ki temeljijo na GNOME, so opremljene z aplikacijo, ki se preprosto imenuje "Startup Applications". Uporablja se lahko za upravljanje aplikacij in skriptov, ki se izvajajo ob novem ponovnem zagonu sistema ali prijavi.
V zaganjalniku aplikacij zaženite aplikacijo »Zagon aplikacij« in kliknite gumb »Dodaj«, da dodate nov vnos.
Izpolnite polji "Ime" in "Ukaz" po svojih potrebah in nato kliknite gumb "Dodaj", da končate ustvarjanje novega vnosa. Vnos, ustvarjen na spodnjem posnetku zaslona, bo kot sistemsko obvestilo ob vsakem ponovnem zagonu / prijavi poslal sistemsko opozorilo. Lahko ga nadomestite s svojim ukazom ali s celotno potjo vašega skripta bash. Uporabite lahko tudi kateri koli obstoječi sistemski ukaz ali izvedljive datoteke, ki se običajno nahajajo v različnih mapah "bin" v datotečnem sistemu.
Kot je navedeno zgoraj, se ob vsakem ponovnem zagonu prikaže opomnik za varnostno kopiranje.
Systemd
Systemd je demon in upravitelj storitev, ki vsebuje različne pripomočke za upravljanje sistemskih procesov in komponent OS. V svoji poenostavljeni obliki se običajno uporablja za zagon in konec storitev v novem zagonskem ciklu.
Systemd se lahko uporablja za samodejni zagon aplikacije ali zagon skripta ob novem zagonu. Če želite ustvariti isto zgoraj razloženo obvestilo o varnostnem opomniku, morate najprej ustvariti zahtevane mape in datoteke z zagonom spodnjih ukazov:
$ mkdir -p ~ /.config / systemd / user$ nano ~ /.config / systemd / user / backup_reminder.storitev
Zamenjajte »nano« z ukazom vašega najljubšega urejevalnika besedil. Zamenjajte »backup_reminder« s katerim koli drugim imenom, ki vam je ljubše.
Spodnjo kodo prilepite v backup_reminder.datoteka storitve, ustvarjena z zgornjim ukazom.
[Enota]Opis = Pošlje varnostni opomnik ob vsakem ponovnem zagonu
PartOf = grafična seja.cilj
[Storitev]
ExecStart = bash -c 'spanje 10; notify-send "Ustvari varnostno kopijo" '
Vnesite = onehot
[Namesti]
WantedBy = grafična seja.cilj
Zgornja koda je precej preprosta. Pošlje obvestilo »Napravi varnostno kopijo« 10 sekund po nalaganju grafične seje (enkrat ob vsakem ponovnem zagonu ali prijavi).
Zaženite spodnje ukaze, da omogočite storitev, da se lahko samodejno zažene ob vsakem ponovnem zagonu.
$ chmod 644 ~ /.config / systemd / user / backup_reminder.storitev$ systemctl --user omogoči backup_reminder.storitev
$ systemctl --user daemon-reload
$ reboot
To je le preprost primer izvajanja osnovnega ukaza ob zagonu s sistemom. Ustvarite lahko tudi napredne storitve z več pogoji in z več ukazi. Če želite več informacij, glejte sistemsko man stran z zagonom spodnjega ukaza:
$ man sistemdUpoštevajte, da ta primer pojasnjuje ustvarjanje nove storitve, ki ne zahteva korenskega dostopa in je primerna za samodejni zagon aplikacij, ki ne zahtevajo korenskih dovoljenj. Če želite samodejno zagnati skripte, ki zahtevajo korenski dostop, morate namesto “~ / v imeniku“ / etc / systemd / system ”ustvariti novo sistemsko storitev.mapo config / systemd / user «in v zgornjih ukazih izpustite stikalo» -user «.
Kron Job
Cron je orodje, ki lahko občasno izvaja načrtovane naloge v skladu s pogoji, ki jih določi uporabnik. Ta razporejena opravila so ustvarjena v Crontabu v vnaprej določeni obliki. Preprosto Crontab Cronu pove, katera opravila naj se izvedejo v določenem trenutku.
Tako kot systemd lahko tudi z opravili crontab zaženete aplikacije in samodejno zaženete skripte ob zagonu. Če želite dodati novo opravilo cron, zaženite spodnji ukaz:
$ crontab -eNa koncu besedilne datoteke dodajte naslednje vrstice (samodejno zažene terminal GNOME ob vsakem ponovnem zagonu):
LUŠČINA = / bin / bash@reboot sleep 30 && DISPLAY =: 0 gnome-terminal
Uporabite lahko svoj ukaz ali vnesete celotno pot do skripta lupine.
Upoštevajte, da za razliko od systemd cron ne more zaznati, ali je bila grafična seja naložena ali ne. Določiti morate nekaj predvidenega čakalnega obdobja do nalaganja strežnika X in identifikator zaslona. Z vašim prikaznim ID-jem lahko ugotovite tako, da zaženete spodnji ukaz:
$ echo $ PRIKAZZamuda pred izvajanjem ukaza ali skripta je odvisna od konfiguracije sistema in časa zagona.
Rc.lokalno
Druga metoda za zagon skriptov in ukazov ob zagonu je uporaba “rc.lokalna ”datoteka. Upoštevajte, da med preizkušanjem nisem mogel odložiti izvajanja skripta, dokler ni zaživela grafična seja. Če dodate morebitno zakasnitev spanja, pride do zamude pri prikazu samega prijavnega zaslona. Zaradi tega nisem imel uspeha pri zagonu grafičnih aplikacij ob zagonu z rc.lokalna datoteka. Urejanje rc.local zahteva tudi korenski dostop, za razliko od vseh drugih primerov, pojasnjenih zgoraj.
Če želite rc dodati ukaze / skripte.lokalno datoteko, zaženite spodnji ukaz (ustvari nov rc.lokalna datoteka, če ne obstaja):
$ sudo nano / etc / rc.lokalnoDodajte svoje ukaze med “#! / bin / bash "in" exit 0 ", kot je prikazano spodaj:
#! / bin / bashpot / do / mojega_skripta.sh
izhod 0
Naredite rc.lokalno datoteko, ki jo je mogoče izvršiti z zagonom spodnjega ukaza:
$ sudo chmod + x / etc / rc.lokalnoSamo znova zaženite, da bo zagonski skript začel veljati.
Zaključek
To je nekaj metod, s katerimi lahko samodejno zaženete skripte in aplikacije ob zagonu. Če želite zagnati skripte, ki ne zahtevajo korenskega dostopa, priporočam uporabo GUI aplikacije »Startup Applications«. Če želite zagnati aplikacije in skripte s korenskim dostopom, predlagam, da ustvarite sistemsko storitev na sistemski ravni.
O avtorju
Nitesh Kumar
Sem svobodni razvijalec programske opreme in avtor vsebin, ki obožujem Linux, odprtokodno programsko opremo in skupnost brezplačne programske opreme.
Ogled vseh objav