Käynnistysohjelmat
Ubuntu ja muut GNOME-pohjaiset jakelut toimitetaan yksinkertaisesti nimeltään "Startup Applications". Sitä voidaan käyttää sovellusten ja komentosarjojen hallintaan, jotka suoritetaan uudella järjestelmän uudelleenkäynnistyksellä tai kirjautumisella.
Käynnistä ”Startup Applications” -sovellus sovellusten käynnistysohjelmasta ja napsauta Lisää-painiketta lisätäksesi uuden merkinnän.
Täytä Nimi- ja Komento-kentät tarpeidesi mukaan ja napsauta sitten Lisää-painiketta lopettaaksesi uuden merkinnän luomisen. Alla olevassa kuvakaappauksessa luotu merkintä lähettää "Tee varmuuskopio" -muistutuksen järjestelmän ilmoituksena jokaisesta uudelleenkäynnistyksestä / kirjautumisesta. Voit korvata sen omalla komennollasi tai bash-komentosarjosi täydellä polulla. Voit myös käyttää mitä tahansa olemassa olevaa järjestelmäkomentoa tai suoritettavia tiedostoja, jotka yleensä sijaitsevat tiedostojärjestelmän eri "bin" -kansioissa.
Kuten yllä todettiin, varmuuskopio muistutus näytetään jokaisessa uudelleenkäynnistyksessä.
Systemd
Systemd on daemon- ja palveluhallinta, joka sisältää useita apuohjelmia järjestelmän prosessien ja käyttöjärjestelmän komponenttien hallintaan. Yksinkertaisessa muodossaan sitä käytetään tyypillisesti palvelujen käynnistämiseen ja lopettamiseen uudessa käynnistysjaksossa.
Systemd-sovellusta voidaan käyttää sovelluksen automaattiseen käynnistämiseen tai komentosarjan suorittamiseen uudella käynnistysohjelmalla. Jos haluat luoda saman yllä selostetun varmuuskopio-muistutusilmoituksen, sinun on ensin luotava tarvittavat kansiot ja tiedosto suorittamalla alla olevat komennot:
$ mkdir -p ~ /.config / systemd / käyttäjä$ nano ~ /.config / systemd / user / backup_reminder.palvelu
Korvaa "nano" suosikkitekstieditorin komennolla. Korvaa ”backup_reminder” muulla haluamallasi nimellä.
Liitä alla oleva koodi backup_reminder-muistiin.palvelutiedosto luotu yllä olevalla komennolla.
[Yksikkö]Description = Lähettää varmuuskopio muistutuksen jokaisesta uudelleenkäynnistyksestä
PartOf = graafinen istunto.kohde
[Palvelu]
ExecStart = bash -c 'uni 10; ilmoita-lähetä "Tee varmuuskopio" '
Tyyppi = onehot
[Asentaa]
WantedBy = graafinen istunto.kohde
Yllä oleva koodi on melko yksinkertainen. Se lähettää "Tee varmuuskopiointi" -ilmoituksen 10 sekunnin kuluttua graafisen istunnon lataamisesta (kerran uudelleenkäynnistyksen tai kirjautumisen yhteydessä).
Suorita alla olevat komennot ottaaksesi palvelun käyttöön, jotta se voidaan suorittaa automaattisesti jokaisessa uudelleenkäynnistyksessä.
$ chmod 644 ~ /.config / systemd / user / backup_reminder.palvelu$ systemctl --user enable backup_reminder.palvelu
$ systemctl --user daemon-reload
$ uudelleenkäynnistys
Tämä on vain yksinkertainen esimerkki peruskomennon suorittamisesta käynnistyksessä systemd: n avulla. Voit myös luoda edistyneitä palveluja, joissa on useita ehtoja ja useita komentoja. Lisätietoja on systemd-man-sivulla suorittamalla seuraava komento:
$ man systemdHuomaa, että tässä esimerkissä selitetään sellaisen uuden palvelun luominen, joka ei vaadi pääkäyttäjän oikeuksia ja sopii automaattisesti käynnistyville sovelluksille, jotka eivät vaadi pääkäyttäjän oikeuksia. Jos haluat käynnistää pääkäyttäjät edellyttävät skriptit automaattisesti, sinun on luotava uusi systemd-palvelu hakemistoon "/ etc / systemd / system" "~ /": n sijaan.config / systemd / user ”-kansio ja jätä” -user ”-kytkin pois yllä mainituista komennoista.
Cron Job
Cron on työkalu, joka voi ajoittain suorittaa ajoitettuja tehtäviä käyttäjän määrittelemien ehtojen mukaisesti. Nämä ajoitetut työpaikat luodaan Crontabiin ennalta määritetyssä muodossa. Yksinkertaisesti sanottuna Crontab kertoo Cronille, mitkä työpaikat suoritetaan milloin tahansa.
Kuten systemd, crontab-töitä voidaan käyttää sovellusten käynnistämiseen ja komentosarjojen automaattiseen käynnistämiseen. Lisää uusi cron-työ suorittamalla seuraava komento:
$ crontab -eLisää seuraavat rivit tekstitiedoston loppuun (käynnistää GNOME-päätelaitteen jokaisen uudelleenkäynnistyksen yhteydessä):
KUORI = / bin / bash@reboot sleep 30 && DISPLAY =: 0 gnome-pääte
Voit käyttää omaa komentoasi tai toimittaa täyden polun komentosarjakomentoon.
Huomaa, että toisin kuin systemd, cron ei tunnista, onko graafinen istunto ladattu vai ei. Sinun on määritettävä arvioitu odotusaika, kunnes X-palvelin latautuu, ja näyttötunnus. Voit tietää näyttötunnuksestasi suorittamalla alla olevan komennon:
$ echo $ DISPLAYKomennon tai komentosarjan suorittamisen viive riippuu järjestelmän kokoonpanosta ja käynnistysajasta.
Rc.paikallinen
Toinen tapa suorittaa komentosarjoja ja komentoja käynnistyksen yhteydessä on käyttää “rc.paikallinen ”tiedosto. Huomaa, että testaukseni aikana en voinut lykätä komentosarjojen suorittamista, kunnes graafinen istunto oli livenä. Nukkumisviiveen lisääminen johtaa viiveeseen itse kirjautumisnäytössä. Tämän vuoksi minulla ei ollut menestystä graafisten sovellusten suorittamisessa käynnistyksen yhteydessä rc: n avulla.paikallinen tiedosto. Muokkaamalla rc.local vaatii myös pääkäyttäjän oikeudet, toisin kuin kaikki muut yllä selitetyt esimerkit.
Komennojen / komentosarjojen lisääminen rc: hen.suorita alla oleva komento (luo uuden rc: n.paikallinen tiedosto, jos sitä ei ole):
$ sudo nano / etc / rc.paikallinenLisää komennot väliin “#! / bin / bash ”ja“ exit 0 ”-rivit, kuten alla on esitetty:
#! / bin / bashpolku / kohteeseen / oma_skripti.sh
Lopeta 0
Tee rc.suoritettava paikallinen tiedosto suorittamalla alla oleva komento:
$ sudo chmod + x / etc / rc.paikallinenKäynnistä vain, jotta käynnistyskomentosarja tulee voimaan.
Johtopäätös
Nämä ovat muutamia tapoja, joilla komentosarjat ja sovellukset voidaan suorittaa automaattisesti käynnistettäessä. Jos haluat suorittaa komentosarjoja, jotka eivät vaadi pääkäyttöoikeuksia, suosittelen Käynnistysohjelmat-käyttöliittymän käyttöä. Jos haluat suorittaa sovelluksia ja komentosarjoja pääkäyttäjillä, suosittelen, että luot järjestelmätason systemd-palvelun.
Kirjailijasta
Nitesh Kumar
Olen freelancer-ohjelmistokehittäjä ja sisällönkirjoittaja, joka rakastaa Linuxia, avoimen lähdekoodin ohjelmistoja ja vapaiden ohjelmistojen yhteisöä.
Näytä kaikki viestit