Kirjoittaja Aihe: Millä komennolla tarkistan ajanko koe-Ubuntua asennustikulta? [Ratkaistu]  (Luettu 3210 kertaa)

AimoE

  • Käyttäjä
  • Viestejä: 2707
    • Profiili
Miten voin komentotiedostossa tarkistaa, ajetaanko sitä asennetussa Ubuntussa vaiko asennustikulta käynnistettynä kokeiluna?
« Viimeksi muokattu: 17.05.23 - klo:17.45 kirjoittanut AimoE »


nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Löysinkin jo: https://askubuntu.com/questions/885796/how-to-know-if-the-system-is-running-a-live-or-an-installed-version

Joo, noista casperin tunnistaminen vaikuttaisi ehkä luotettavimmalta ratkaisulta. Liveympäristöä tutkimalla varmaan löytyisi muitakin selkeitä vihjeitä. Esimerkiksi asennusohjelma Ubiquity on harvemmin mukana asennetussa järjestelmässä.

AimoE

  • Käyttäjä
  • Viestejä: 2707
    • Profiili
Tämä kyseinen komentojono ei ole turvallinen jos pysyvyys on valittu tikkua tehdessä, joten casper ei löydy. Mutta noista muista saa kolme ehtoa joiden pitää olla voimassa:

Koodia: [Valitse]
isLive(){
    case "$(mount | head)" in
aufs\ on)
    [ "$(users)" == ubuntu ] && [ "$(hostname)" == ubuntu ] &&
return true ;;
    esac
    return false
}

Tajusin juuri, ettei olekaan käsillä tikkua jolla kokeilla.
« Viimeksi muokattu: 17.05.23 - klo:18.02 kirjoittanut AimoE »

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Tämä kyseinen komentojono ei ole turvallinen jos pysyvyys on valittu tikkua tehdessä, joten casper ei löydy.

Kaikissa Ubuntun ja Debianin livesysteemeissä on kernelin komentorivillä BOOT_IMAGE=/casper/... (tai mahdollisesti BOOT=casper).

Tässä 22.04:n live-dvd virtuaalikoneessa:

Lainaus
ubuntu@ubuntu:~$ cat /proc/cmdline
BOOT_IMAGE=/casper/vmlinuz file=/cdrom/preseed/ubuntu.seed maybe-ubiquity quiet splash ---

Ja aufs:n sijaan nykyisissä versioissa juuri on tosiaan overlay-tiedostojärjestelmällä:

Koodia: [Valitse]
/cow on / type overlay (rw,relatime,lowerdir=/filesystem.squashfs,upperdir=/cow/upper,workdir=/cow/work,xino=off)
« Viimeksi muokattu: 17.05.23 - klo:18.46 kirjoittanut nm »

AimoE

  • Käyttäjä
  • Viestejä: 2707
    • Profiili
Ahaa, mutta nyt  täytyy kysyä voiko persistence-ominaisuuden tarkistaa jotenkin, esim. sisältääkö /proc/cmdline merkkijonon "casper-rw" vai pitääkö se kaivaa jostain muualta?

AimoE

  • Käyttäjä
  • Viestejä: 2707
    • Profiili
Olisiko tämä sinne päinkään?

Koodia: [Valitse]
isLive(){
    grep -zq casper /proc/cmdline
}
hasPersistence(){
    grep -zq casper-rw /proc/partitions
}

Äh, ei - riippuu siitä, millä tyokalulla tikku on tehty: https://askubuntu.com/questions/1054364/persistence-casper-rw-partition-problems
« Viimeksi muokattu: 17.05.23 - klo:19.16 kirjoittanut AimoE »