Päivitysskripti

automatisointia

Haluaisin niputtaa "sudo apt update":n ja "sudo apt upgrade -y":n esimerkiksi skripitiksi "päivitä". Siis kaksi riviä. Laitoin nuo tekstieditoriin ja tallensin nimella "päivitä". Kun kirjoitan komentoruutuun "päivitä", niin herjaa "päivitä: command not found". Tiedosto "päivitä" löytyy kuitenkin kotihakemistosta.

Jatkokehityksenä haluaisin yhdistää tuon koneen sammuttamiseen. Siis kun kone sammutetaan, niin ensin tehdään päivitykset ja vasta sen jälkeen sammutetaan virta.

17

63

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • dfhdfhdsgsgsg

      /bin/bash
      sudo apt update
      sudo apt upgrade -y
      --------------------------
      ^toi on sisältö. Sitten muutat sen suoritettavaksi:
      chmod a x päivitä
      ------
      sitten siirretään se vielä suoritettavien ohjelmien hakemistoon:
      sudo mv päivitä /usr/bin
      ----
      nyt pitäisi toimia komennolla
      päivitä

      • automatisointia

        Kiitos ohjeesta. Nyt "päivitä" kyllä suoriutuu, mutta ei ilmeisesti tee mitään, koska niitä normaalisti päivityksen yhteydessä tulostuvia rivejä ei ilmesty. Päivityksiä on kuitenkin tarjolla esimerkiksi graafisen päivitysmanagerin kautta tarkastellessa.

        Mitä tuo ensimmäinen /bin/bash rivi muuten tekee?


      • automatisointia
        automatisointia kirjoitti:

        Kiitos ohjeesta. Nyt "päivitä" kyllä suoriutuu, mutta ei ilmeisesti tee mitään, koska niitä normaalisti päivityksen yhteydessä tulostuvia rivejä ei ilmesty. Päivityksiä on kuitenkin tarjolla esimerkiksi graafisen päivitysmanagerin kautta tarkastellessa.

        Mitä tuo ensimmäinen /bin/bash rivi muuten tekee?

        Ajoin tuon nyt sudolla, jonka jälkeen polku siirtyi root-käyttäjälle. Mitään ei kuitenkaan tapahtunut. Sitten kirjoitin exit, jonka jälkeen päivitysskirpti alkoi tekemään päivityksiä. Toimii siis hieman kummasti, koska vaatii ylimääräistä näpyttelyä.


      • Debianisti
        automatisointia kirjoitti:

        Kiitos ohjeesta. Nyt "päivitä" kyllä suoriutuu, mutta ei ilmeisesti tee mitään, koska niitä normaalisti päivityksen yhteydessä tulostuvia rivejä ei ilmesty. Päivityksiä on kuitenkin tarjolla esimerkiksi graafisen päivitysmanagerin kautta tarkastellessa.

        Mitä tuo ensimmäinen /bin/bash rivi muuten tekee?

        Se kertoo että scripti ajetaan bash komentotulkilla.


      • Debianisti
        Debianisti kirjoitti:

        Se kertoo että scripti ajetaan bash komentotulkilla.

        Ja oikeaoppinen muoto on
        #!/bin/bash


      • automatisointia
        Debianisti kirjoitti:

        Ja oikeaoppinen muoto on
        #!/bin/bash

        Tuo muutos (#! lisäys) ei muuttanut skripitin käyttäytymistä miksikään. Ei siis näyttäisi suorittavan komentoja.


      • automatisointia kirjoitti:

        Ajoin tuon nyt sudolla, jonka jälkeen polku siirtyi root-käyttäjälle. Mitään ei kuitenkaan tapahtunut. Sitten kirjoitin exit, jonka jälkeen päivitysskirpti alkoi tekemään päivityksiä. Toimii siis hieman kummasti, koska vaatii ylimääräistä näpyttelyä.

        sudo aiheuttaa ongelmia.
        Pitäisin kansion /usr/bin puhtaana vain paketinhallinnan asentamia ohjelmia varten.
        Käyttäjän polussa usein kotikansiossa /bin jonne käyttäjän ohjelmat asennetaan. Toinen sallittu paikka /usr/local/bin ja rootin ohjelmat /usr/local/sbin mikä oikea paikka päivitysohjelmalle.

        yksinkertaistettu versio
        #!/bin/bash
        apt update && apt upgrade -y

        suoritus kotihakemistossa (# tarkoittaa rootin oikeuksia)
        #./päivitys


      • Debianisti
        automatisointia kirjoitti:

        Tuo muutos (#! lisäys) ei muuttanut skripitin käyttäytymistä miksikään. Ei siis näyttäisi suorittavan komentoja.

        #!/bin/bash on tiedoksi komentotulkille että scripti on bashia.

        /bin/bash tarkoittaa sitä että ajetaan komentotulkki bash.


      • automatisointia
        Mikko_Tku kirjoitti:

        sudo aiheuttaa ongelmia.
        Pitäisin kansion /usr/bin puhtaana vain paketinhallinnan asentamia ohjelmia varten.
        Käyttäjän polussa usein kotikansiossa /bin jonne käyttäjän ohjelmat asennetaan. Toinen sallittu paikka /usr/local/bin ja rootin ohjelmat /usr/local/sbin mikä oikea paikka päivitysohjelmalle.

        yksinkertaistettu versio
        #!/bin/bash
        apt update && apt upgrade -y

        suoritus kotihakemistossa (# tarkoittaa rootin oikeuksia)
        #./päivitys

        Kiitokset! Tuo yhden rivin versio näyttää toimivan kuten haluankin. Lisäsin vielä perään "&& shutdown now", niin kone sammuu lopuksi.


      • automatisointia kirjoitti:

        Kiitokset! Tuo yhden rivin versio näyttää toimivan kuten haluankin. Lisäsin vielä perään "&& shutdown now", niin kone sammuu lopuksi.

        sudo scripteissä huono idea. Sen voi kiertää muokkaamalla sudoers tiedostoa. Muitakin tapoja on. Tässä tapauksessa ei järkeä. Jos on joku palvelu käynnissä niin sille voi olla aiheellista antaa suorittaa joitain rootin komentoja. Esim digiboxissa käynnistysajan kirjoitus ja koneen sammutus. Silloin sudoers tiedoston muokkaus tarpeen. Tietosuojan kannalta salasanoja ei juuri kirjoitella. Komentotulkin historiaan ym niitä voi jäädä vahingossa.


    • jakkaraongelma

      Mikset päivitä ihan normaalisti, miksi sudotella?????

      • automatisointia

        Haluan minimoida turhan jumppaamisen.


      • jumppa_pois
        automatisointia kirjoitti:

        Haluan minimoida turhan jumppaamisen.

        Laita automaattisesti päivittymään.


      • heiveröistä_on

        Nykynuoriso on niin heikkoa ja heiveröistä, tahtoo säästää aikaa kännykän näpyttelyyn ja facebook-tilanteen tarkasteluun.


      • Eisudojamintissä
        automatisointia kirjoitti:

        Haluan minimoida turhan jumppaamisen.

        toihan sitä jumppaamista on.


      • dist-upgrade
        automatisointia kirjoitti:

        Haluan minimoida turhan jumppaamisen.

        Mielestäni on tärkeää tietää, mitä kukin päivitys asentaa koneelle. Laitteisto on toki viimeisen päälle päivitetty, mutta silloin, kun se on parasta suorittaa.


    • ainakin_ubuntusa

      Komennoista kannattaa tehdä aliaksia.
      Esimerkiksi:
      alias päivitä='sudo apt update && sudo apt -y upgrade'
      Tuo rivi lisätään tiedoston .bashrc loppuun.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Nurmossa kuoli 2 Lasta..

      Autokolarissa. Näin kertovat iltapäivälehdet juuri nyt. 22.11. Ja aina ennen Joulua näitä tulee. . .
      Seinäjoki
      137
      7689
    2. Joel Harkimo seuraa Martina Aitolehden jalanjälkiä!

      Oho, aikamoinen yllätys, että Joel Jolle Harkimo on lähtenyt Iholla-ohjelmaan. Tässähän hän seuraa mm. Martina Aitolehde
      Suomalaiset julkkikset
      38
      1925
    3. Kaksi lasta kuoli kolarissa Seinäjoella. Tutkitaan rikoksena

      Henkilöautossa matkustaneet kaksi lasta ovat kuolleet kolarissa Seinäjoella. Kolmas lapsi on vakasti loukkaantunut ja
      Maailman menoa
      25
      1880
    4. Miten meinasit

      Suhtautua minuun kun taas kohdataan?
      Ikävä
      91
      1623
    5. Miksi pankkitunnuksilla kaikkialle

      Miksi rahaliikenteen palveluiden tunnukset vaaditaan miltei kaikkeen yleiseen asiointiin Suomessa? Kenen etu on se, että
      Maailman menoa
      180
      1555
    6. Tunnekylmä olet

      En ole tyytyväinen käytökseesi et osannut kommunikoida. Se on huono piirre ihmisessä että ei osaa katua aiheuttamaansa p
      Ikävä
      104
      988
    7. Oletko miten

      Valmis läheisyyteen?
      Ikävä
      49
      920
    8. Taisit sä sit kuiteski

      Vihjata hieman ettei se kaikki ollutkaan totta ❤️ mutta silti sanoit kyllä vielä uudelleen sen myöhemmin 😔 ei tässä oik
      Ikävä
      4
      839
    9. Odotathan nainen jälleenkohtaamistamme

      Tiedät tunteeni, ne eivät sammu johtuen ihanuudestasi. Haluan tuntea ihanan kehosi kosketuksen ja sen aikaansaamaan väri
      Ikävä
      28
      820
    10. Muistatko hänen

      Tuoksunsa? Saako se sinut syttymään? ❤️‍🔥
      Ikävä
      33
      783
    Aihe