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

137

    Vastaukset 17

    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. Mulla on ikävä sua

      Pakko se on myöntää, mulla on ikävä sua 🥺💔.. En kyllä haluaisi sitä myöntää kun tämä tilanne on niin hankala. Oon yri
      Ikävä
      39
      1168
    2. Väleistä

      Minkälaiset välit sinulla on kaivattusi kanssa?
      Ikävä
      83
      889
    3. Koska tulet minulle näkyväksi

      Koska astut piilostasi esiin? Miksi pysyttelet niin kaukana? Etkö voisi tulla päättämään tämän ikävöinnin? Saisin vihdoi
      Ikävä
      44
      717
    4. Nainen, olet ihanin maan päällä

      Ei ole toista. Olet ihanteellinen, kaikkien mittapuitteni täyttymys. Sisäinen kauneutesi sinetöi ulkoisen ja juuri se sa
      Ikävä
      40
      710
    5. Poliis. Poliisi osoitti aseella Tampereella kun mies avasi oven

      Poliisi Poliisi osoitti aseella Tampereella, kun mies avasi siviili­poliisiauton oven Mies kuvasi keski­viikkoiltana bus
      Maailman menoa
      214
      586
    6. Romanttisinta

      Mitä hän on tehnyt sinulle?
      Ikävä
      48
      523
    7. Sano rakkaallesi

      Suorat sanat! Mikä mieltä kaihertaa!
      Ikävä
      43
      499
    8. Mikä on mielestäsi keskustelupalstan tarkoitus?

      Tuolla toisessa ketjussa kävi ilmi jotain minkä itse koen hieman hassuksi. Nykypäivänä yllättävän moni ilmeisesti kokee,
      Sinkut
      176
      488
    9. jumala ei auta hittojakaan..

      kuka tahansa voi kirjottaa lapulle mitä vaan ja väittää että jumala olisi sen kirjoittanut... onko yksikään raamatun kir
      Sinkut
      204
      473
    10. " Hae roolisi miljardien Pyhäjärveltä"?

      Perjantain 14.8. viesti TV:ssä oli hätkähdyttävän todellista kuultavaa. Tähän on tultu. Pyhäjärvi- selvitykseen, tied
      Pyhäjärvi
      58
      464
    Aihe