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

74

    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. Janne Ahonen E R O A A

      Taas 2 lasta jää vaille ehjää perhettä!
      Kotimaiset julkkisjuorut
      177
      3691
    2. Tekisi niin mieli laittaa sulle viestiä

      En vaan ole varma ollaanko siihen vielä valmiita, vaikka halua löytyykin täältä suunnalta, ja ikävää, ja kaikkea muuta m
      Ikävä
      85
      1638
    3. Miksi ihmeessä?

      Erika Vikman diskattiin, ei osallistu Euroviisuihin – tilalle Gettomasa ja paluun tekevä Cheek
      Ateismi
      27
      1395
    4. Ootko huomannut miten

      pursuat joka puolelta. Sille joka luulee itsestään liikoja 🫵🙋🏻‍♂️
      Ikävä
      158
      1272
    5. Erika Vikman diskattiin, tilalle Gettomasa ja paluun tekevä Cheek

      Erika Vikman diskattiin, ei osallistu Euroviisuihin – tilalle Gettomasa ja paluun tekevä Cheek https://www.rumba.fi/uut
      Maailman menoa
      19
      1068
    6. Pitääkö penkeillä hypätä Martina?

      Eivätkö puistonpenkit ole istumista varten.Ei niitä kannata liata hyppäämällä koskaa likaantuvat eikä siellä kukaan niit
      Kotimaiset julkkisjuorut
      194
      1053
    7. Kerropa ESA miten kävi tuomioiden

      Osaako ESA kertoa miten haukkumasi kunnanhallituksen kävi.
      Puolanka
      35
      1021
    8. Kuinka kauan

      Olet ollut kaivattuusi ihastunut/rakastunut? Tajusitko tunteesi heti, vai syventyivätkö ne hitaasti?
      Ikävä
      92
      1018
    9. Maikkarin tentti: Orpo jälleen rauhallinen ja erittäin hyvä, myös Purra oli hyvä

      Lindtman ja Kaikkonen oli kohtalaisia, sen sijaan punavihreät Koskela ja Virta olivat taas heikkoja. Ja vastustavat jalk
      Maailman menoa
      121
      952
    10. Se olisi ihan

      Napinpainalluksen päässä. Ei vaatisi paljon
      Ikävä
      62
      785
    Aihe