Startēšanas programmas
Ubuntu un citiem GNOME balstītiem izplatījumiem ir pievienota lietojumprogramma, ko vienkārši sauc par “Startup Applications”. To var izmantot, lai pārvaldītu lietotnes un skriptus, kas darbojas ar jaunu sistēmas atsāknēšanu vai pieteikšanos.
Palaidiet programmu Startup Applications no lietojumprogrammu palaidēja un noklikšķiniet uz pogas Pievienot, lai pievienotu jaunu ierakstu.
Aizpildiet laukus “Nosaukums” un “Komanda” atbilstoši savām vajadzībām un pēc tam noklikšķiniet uz pogas “Pievienot”, lai pabeigtu jauna ieraksta izveidi. Zemāk redzamajā ekrānuzņēmumā izveidotais ieraksts nosūtīs atgādinājumu “Veikt dublējumu” kā sistēmas paziņojumu par katru atsāknēšanu / pieteikšanos. To var aizstāt ar savu komandu vai ar pilnu bash skripta ceļu. Varat arī izmantot jebkuru esošo sistēmas komandu vai izpildāmos failus, kas parasti atrodas dažādās failu sistēmas dažādās “bin” mapēs.
Kā minēts iepriekš, katrā atsāknēšanas reizē tiek parādīts rezerves atgādinājums.
Systemd
Systemd ir dēmonu un pakalpojumu pārvaldnieks, kas satur dažādas utilītas, lai pārvaldītu sistēmas procesus un OS komponentus. Vienkāršotā formā to parasti izmanto, lai sāktu un beigtu pakalpojumus jaunā sāknēšanas ciklā.
Systemd var izmantot, lai automātiski palaistu lietotni vai palaistu skriptu jaunai sāknēšanai. Lai izveidotu to pašu iepriekš aprakstīto dublējuma atgādinājuma paziņojumu, vispirms jāizveido nepieciešamās mapes un fails, izpildot tālāk norādītās komandas:
$ mkdir -p ~ /.config / systemd / user$ nano ~ /.config / systemd / user / backup_reminder.apkalpošana
Aizstājiet “nano” ar iecienītā teksta redaktora komandu. Aizstājiet “backup_reminder” ar jebkuru citu vēlamo vārdu.
Ielīmējiet zemāk esošo kodu backup_reminder.pakalpojuma fails, kas izveidots, izmantojot iepriekš minēto komandu.
[Vienība]Description = Nosūta rezerves atgādinājumu par katru atsāknēšanu
PartOf = grafiskā sesija.mērķis
[Apkalpošana]
ExecStart = bash -c 'miegs 10; paziņot-nosūtīt "Izveidot dublējumu"
Tips = onehot
[Uzstādīt]
WantedBy = grafiskā sesija.mērķis
Iepriekš redzamais kods ir diezgan vienkāršs. Tas 10 sekundes pēc grafiskās sesijas ielādes nosūta paziņojumu “Izveidot dublējumu” (reizi ikreiz atsāknējot vai piesakoties).
Palaidiet tālāk norādītās komandas, lai iespējotu pakalpojumu, lai tas varētu automātiski darboties katrā atsāknēšanas reizē.
$ chmod 644 ~ /.config / systemd / user / backup_reminder.apkalpošana$ systemctl --user iespējo backup_reminder.apkalpošana
$ systemctl --user daemon-reload
$ atsāknēšana
Šis ir tikai vienkāršs pamatkomandas palaišanas sāknēšanas piemērs, izmantojot systemd. Varat arī izveidot uzlabotus pakalpojumus ar vairākiem nosacījumiem un vairākām komandām. Lai iegūtu papildinformāciju, skatiet sistēmas man rokasgrāmatu, izpildot zemāk esošo komandu:
$ man systemdŅemiet vērā, ka šajā piemērā ir izskaidrots jauna pakalpojuma izveide, kuram nav nepieciešama piekļuve root un kas ir piemērots automātiskās palaišanas lietotnēm, kurām nav nepieciešamas root atļaujas. Ja vēlaties automātiski palaist skriptus, kuriem nepieciešama root piekļuve, direktorijā “/ etc / systemd / system” jāizveido jauns systemd pakalpojums, nevis “~ /.config / systemd / user ”mapi un iepriekšminētajās komandās izlaidiet slēdzi“ -user ”.
Cron Job
Cron ir rīks, kas var periodiski izpildīt ieplānotos uzdevumus saskaņā ar lietotāja norādītajiem nosacījumiem. Šīs ieplānotās darba vietas tiek izveidotas Crontab iepriekš noteiktā formātā. Vienkārši sakot, Crontab paziņo Kronam, kuras darba vietas noteiktā brīdī vadīt.
Tāpat kā systemd, crontab darbus var izmantot, lai palaistu lietotnes un automātiski palaistu skriptus sāknēšanas laikā. Lai pievienotu jaunu cron darbu, palaidiet zemāk esošo komandu:
$ crontab -ePievienojiet šādas rindiņas teksta faila beigās (automātiski palaiž GNOME termināli katrā atsāknēšanas reizē):
ČaulA = = bin / bash@reboot sleep 30 && DISPLAY =: 0 gnome-terminal
Varat izmantot savu komandu vai piegādāt pilnu ceļu uz čaulas skriptu.
Ņemiet vērā, ka atšķirībā no systemd, cron nevar noteikt, vai grafiskā sesija ir ielādēta vai nē. Jums jānorāda aptuvenais gaidīšanas periods, līdz tiek ielādēts X serveris, un displeja identifikators. Par displeja ID varat uzzināt, izpildot zemāk esošo komandu:
$ echo $ DISPLAYKavēšanās pirms komandas vai skripta izpildes ir atkarīga no jūsu sistēmas konfigurācijas un sāknēšanas laika.
Rc.vietējais
Vēl viena metode, kā palaist skriptus un komandas startēšanas laikā, ir “rc.vietējais ”fails. Ņemiet vērā, ka testēšanas laikā es nevarēju atlikt skripta izpildi, kamēr grafiskā sesija nebija pieejama. Miega aizkaves pievienošana noved pie paša pieteikšanās ekrāna parādīšanas aizkavēšanās. Tāpēc man nebija panākumu palaist grafiskās lietotnes startēšanas laikā, izmantojot rc.vietējais fails. Rediģē rc.Atšķirībā no visiem citiem iepriekš paskaidrotajiem piemēriem, vietnei ir nepieciešama arī piekļuve root.
Lai pievienotu komandas / skriptus rc.vietējais fails, palaidiet zemāk esošo komandu (izveido jaunu.vietējais fails, ja tāda nav):
$ sudo nano / etc / rc.vietējaisPievienojiet komandas starp “#! / bin / bash ”un“ exit 0 ”rindas, kā parādīts zemāk:
#! / bin / bashceļš / uz / mans_skripts.sh
izeja 0
Padarīt rc.izpildāms vietējais fails, izpildot zemāk esošo komandu:
$ sudo chmod + x / etc / rc.vietējaisVienkārši pārstartējiet, lai startēšanas skripts stātos spēkā.
Secinājums
Šīs ir dažas metodes, kuras var izmantot, lai startējot automātiski palaistu skriptus un lietotnes. Ja vēlaties palaist skriptus, kuriem nav nepieciešama root piekļuve, es ieteiktu izmantot GUI lietotni “Startup Applications”. Ja vēlaties palaist lietotnes un skriptus ar root piekļuvi, es iesaku jums izveidot sistēmas līmeņa systemd pakalpojumu.
Par autoru
Nitesh Kumar
Esmu ārštata programmatūras izstrādātājs un satura autors, kurš mīl Linux, atvērtā pirmkoda programmatūru un brīvās programmatūras kopienu.
Skatīt visas ziņas