Hur fungerar Ubuntus live-cd?

Varning! Det som diskuteras här är inte alltid enkelt och det kan hända att vissa installationer/modifieringar kan göra ditt system oanvändbart. Inget för nybörjare. Gör alltid backup av känslig data innan du experimenterar.
Kategoriregler
Varning! Det som diskuteras här är inte alltid enkelt och det kan hända att vissa installationer/modifieringar kan göra ditt system oanvändbart. Inget för nybörjare. Gör alltid backup av känslig data innan du experimenterar.
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av Konservburk »

BadOmen skrev:hej, tyckte det var ett smart ls kommando du hade fixat men jag saknade att man inte kunde se tiden när den var använd så jag ändrade den till följande:
ls --time=access -l -1art ~
Om du inte vill behöva skriva så mycket så fungerar det lika bra med ls -alrtu för att göra samma sak.
BadOmen skrev:vet dock inte vad ~ gör för nåt, jag ser ingen skillnad med eller utan den så du får gärna berätta vad det är för fiffigt med den :)
~ är bara till för att lista hemkatalogen. Om du redan står i hemkatalogen blir det såklart ingen skillnad. Jag tog bara med det så att JeyPeyy verkligen listade rätt ställe oavsett pwd.
Användarvisningsbild
BadOmen
Inlägg: 1172
Blev medlem: 18 aug 2006, 10:45
OS: Kubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Umeå

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av BadOmen »

Konservburk skrev:
BadOmen skrev:hej, tyckte det var ett smart ls kommando du hade fixat men jag saknade att man inte kunde se tiden när den var använd så jag ändrade den till följande:
ls --time=access -l -1art ~
Om du inte vill behöva skriva så mycket så fungerar det lika bra med ls -alrtu för att göra samma sak.
BadOmen skrev:vet dock inte vad ~ gör för nåt, jag ser ingen skillnad med eller utan den så du får gärna berätta vad det är för fiffigt med den :)
~ är bara till för att lista hemkatalogen. Om du redan står i hemkatalogen blir det såklart ingen skillnad. Jag tog bara med det så att JeyPeyy verkligen listade rätt ställe oavsett pwd.
Snabbt och tydligt svar, tack ska du ha! Ja, varför ska man skriva ett längre kommando än nödvändigt :)
Betygsätt din Hårdvara och underlätta inköp av ny för andra:http://ubuntu-se.org/phpBB3/viewforum.php?f=138
Ubuntu-se forsknings team, här.
Min Ubuntu blogg som funkar som en stor post-it lapp för mig http://attminnas.blogspot.com/
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av JeyPeyy »

Tack så mycket konservburk och BadOmen. CD-avbilden jag skapade är fortfarande lite konstig, men det spelar ingen större roll. Det viktiga är nu att jag blir klar med rapporten. Jag skulle gärna vilja förstå varför filesystem.manifest behövs. Räcker det inte om installationen kopierar innehållet i filesystem.squashfs till den nya partitionen? Känns inte jättenödvändigt att ha en lista på alla installerade objekt i en fil.

PS. Jag har använt Ubuntu i över ett år, så jag har några terminalkunskaper. T.ex. förstår jag att jag ska befinna mig i hemkatalogen när jag skriver "ls -1art".
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av JeyPeyy »

Bump
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av Konservburk »

Vem har sagt att den behövs? Jag har aldrig använt vare sig squashfs eller några manifest-filer när jag har satt ihop egenkomponerade installationsskivor.
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av JeyPeyy »

Konservburk skrev:Vem har sagt att den behövs?

https://help.ubuntu.com/community/LiveCDCustomization
Konservburk skrev:Jag har aldrig använt vare sig squashfs eller några manifest-filer när jag har satt ihop egenkomponerade installationsskivor.
Jag vill inte bara göra en installationsskiva, utan även en live-miljö. Då är väl squashfs nödvändigt?
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av Konservburk »

JeyPeyy skrev:
Konservburk skrev:Vem har sagt att den behövs?

https://help.ubuntu.com/community/LiveCDCustomization
Där utgår de helt från ubutus livecd. Men det betyder inte att manifest-filer är ett måste för en livecd i allmänhet.
JeyPeyy skrev:
Konservburk skrev:Jag har aldrig använt vare sig squashfs eller några manifest-filer när jag har satt ihop egenkomponerade installationsskivor.
Jag vill inte bara göra en installationsskiva, utan även en live-miljö. Då är väl squashfs nödvändigt?
Nja... visst underlättar det eftersom du då kan montera ett komprimerat filsystem, men att säga att det är nödvändigt är att ta i. Det finns inte ens med som standard i linux (kärnan) ännu, utan kommer först i nästa version.
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av JeyPeyy »

Konservburk skrev:Där utgår de helt från ubutus livecd. Men det betyder inte att manifest-filer är ett måste för en livecd i allmänhet.
Okej, men jag utgår också från ubuntus live-cd och behöver inte lära mig andra metoder att skapa en live-skiva. Filen är alltså ett måste för Ubuntus live-cd? Används den vid installationen eller är det mer nformation om vilka program som kommer installerade?
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Ändra egenskaper i panelen och annat från terminalen?

Inlägg av Konservburk »

JeyPeyy skrev:Filen är alltså ett måste för Ubuntus live-cd?
Nej, den behövs inte för själva livecd-funktionen.
JeyPeyy skrev:Används den vid installationen eller är det mer nformation om vilka program som kommer installerade?
Den används av ubiquity: https://launchpad.net/ubiquity
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Hur fungerar Ubuntus live-cd?

Inlägg av JeyPeyy »

Konservburk skrev:
JeyPeyy skrev:Används den vid installationen eller är det mer nformation om vilka program som kommer installerade?
Den används av ubiquity: https://launchpad.net/ubiquity
Hur fungerar ubiquity? Kollar den vilka program som finns i manifest-filen och installerar dessa? Var hittar den i så fall de programmen den ska installera?

Utanför ämnet: Jag ändrade trådens namn eftersom det inte längre handlar om att ändra egenskaper i panelen
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur fungerar Ubuntus live-cd?

Inlägg av Konservburk »

JeyPeyy skrev:Hur fungerar ubiquity? Kollar den vilka program som finns i manifest-filen och installerar dessa? Var hittar den i så fall de programmen den ska installera?
Börja med att läsa README-filen och wikin:

http://bazaar.launchpad.net/~ubuntu-ins ... doc/README
http://wiki.ubuntu.com/Ubiquity

Men vill du veta exakt hur ubiquity fungerar så är det källkoden som gäller:

http://bazaar.launchpad.net/~ubuntu-ins ... unk/files/

Det är främst filen scripts/install.py som verkar vara intressant för dig:

http://bazaar.launchpad.net/~ubuntu-ins ... install.py

I synnerhet följande stycke:

Kod: Markera allt

        if (os.path.exists("/cdrom/casper/filesystem.manifest-desktop") and
            os.path.exists("/cdrom/casper/filesystem.manifest")):
            desktop_packages = set()
            manifest = open("/cdrom/casper/filesystem.manifest-desktop")
            for line in manifest:
                if line.strip() != '' and not line.startswith('#'):
                    desktop_packages.add(line.split()[0])
            manifest.close()
            live_packages = set()
            manifest = open("/cdrom/casper/filesystem.manifest")
            for line in manifest:
                if line.strip() != '' and not line.startswith('#'):
                    live_packages.add(line.split()[0])
            manifest.close()
            difference = live_packages - desktop_packages
        else:
            difference = set()
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Re: Hur fungerar Ubuntus live-cd?

Inlägg av JeyPeyy »

Konservburk skrev:
JeyPeyy skrev:Hur fungerar ubiquity? Kollar den vilka program som finns i manifest-filen och installerar dessa? Var hittar den i så fall de programmen den ska installera?
Börja med att läsa README-filen och wikin:

http://bazaar.launchpad.net/~ubuntu-ins ... doc/README
http://wiki.ubuntu.com/Ubiquity

Men vill du veta exakt hur ubiquity fungerar så är det källkoden som gäller:

http://bazaar.launchpad.net/~ubuntu-ins ... unk/files/

Det är främst filen scripts/install.py som verkar vara intressant för dig:

http://bazaar.launchpad.net/~ubuntu-ins ... install.py

I synnerhet följande stycke:

Kod: Markera allt

        if (os.path.exists("/cdrom/casper/filesystem.manifest-desktop") and
            os.path.exists("/cdrom/casper/filesystem.manifest")):
            desktop_packages = set()
            manifest = open("/cdrom/casper/filesystem.manifest-desktop")
            for line in manifest:
                if line.strip() != '' and not line.startswith('#'):
                    desktop_packages.add(line.split()[0])
            manifest.close()
            live_packages = set()
            manifest = open("/cdrom/casper/filesystem.manifest")
            for line in manifest:
                if line.strip() != '' and not line.startswith('#'):
                    live_packages.add(line.split()[0])
            manifest.close()
            difference = live_packages - desktop_packages
        else:
            difference = set()
Tack, med all information du gett mig ska jag nog kunna klura lite för mig själv. =) En sak till bara: var finner jag skriptet i cd-avbilden? Jag antar att den finns i något arkiv, men jag hittar det inte. Jag är inte speciellt high på python, men jag ska nog fixa det. Jag återkommer om jag fortfarande inte fattar, men tack så länge! ;)
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur fungerar Ubuntus live-cd?

Inlägg av Konservburk »

JeyPeyy skrev:En sak till bara: var finner jag skriptet i cd-avbilden? Jag antar att den finns i något arkiv, men jag hittar det inte.
ubuntu-8.10-desktop-i386.iso:/casper/filesystem.squashfs:/usr/share/ubiquity/install.py
JeyPeyy skrev:Jag är inte speciellt high på python, men jag ska nog fixa det. Jag återkommer om jag fortfarande inte fattar, men tack så länge! ;)
Just python är egentligen inte riktigt min grej heller. :-\
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Re: Hur fungerar Ubuntus live-cd?

Inlägg av JeyPeyy »

Jag försöker ju skriva skript för att göra det enklare att skapa en ubuntu derivata (jag vet att UCK finns, men det här är ju PA). Här ser man att man ska räkna ut en ny md5sum. För det första vet jag inte riktigt vad md5sum används till, men det är inte speciellt viktigt, och för det andra försöker jag göra ett skript som gör den här delen för användaren: check that the files "md5sum.txt" and "./isolinux/boot.cat" do NOT appear in md5sum.txt. If they do, delete their lines.

Alltså; hur gör jag ett skript som kollar i md5sum.txt och tar bort raderna som innehåller "md5sum.txt" och "./isolinux/boot.cat"? Jag antar att man ska använda read och sed, men hur?
Användarvisningsbild
JeyPeyy
Inlägg: 768
Blev medlem: 06 aug 2008, 22:41
OS: Xubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: Göteborg

Re: Hur fungerar Ubuntus live-cd?

Inlägg av JeyPeyy »

JeyPeyy skrev:Jag försöker ju skriva skript för att göra det enklare att skapa en ubuntu derivata (jag vet att UCK finns, men det här är ju PA). Här ser man att man ska räkna ut en ny md5sum. För det första vet jag inte riktigt vad md5sum används till, men det är inte speciellt viktigt, och för det andra försöker jag göra ett skript som gör den här delen för användaren: check that the files "md5sum.txt" and "./isolinux/boot.cat" do NOT appear in md5sum.txt. If they do, delete their lines.

Alltså; hur gör jag ett skript som kollar i md5sum.txt och tar bort raderna som innehåller "md5sum.txt" och "./isolinux/boot.cat"? Jag antar att man ska använda read och sed, men hur?
Ingen som är bra på bash här?
Användarvisningsbild
micke_nordin
Inlägg: 1539
Blev medlem: 21 aug 2008, 17:03
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Kontakt:

Re: Hur fungerar Ubuntus live-cd?

Inlägg av micke_nordin »

JeyPeyy skrev:
JeyPeyy skrev:Jag försöker ju skriva skript för att göra det enklare att skapa en ubuntu derivata (jag vet att UCK finns, men det här är ju PA). Här ser man att man ska räkna ut en ny md5sum. För det första vet jag inte riktigt vad md5sum används till, men det är inte speciellt viktigt, och för det andra försöker jag göra ett skript som gör den här delen för användaren: check that the files "md5sum.txt" and "./isolinux/boot.cat" do NOT appear in md5sum.txt. If they do, delete their lines.

Alltså; hur gör jag ett skript som kollar i md5sum.txt och tar bort raderna som innehåller "md5sum.txt" och "./isolinux/boot.cat"? Jag antar att man ska använda read och sed, men hur?
Ingen som är bra på bash här?
Jag vet inte hur filen ser ut, men sed kan ta bort alla rader som innehåller "md5sum.txt" och "./isolinux/boot.cat" så här (tror jag):

Kod: Markera allt

sed -e 's/^.*md5sum\.txt.*$//g' -e 's/^.*\.\/isolinux\/boot\.cat.*$//g' 
För att testa om det funkar kan du göra så här:

Kod: Markera allt

sed -e 's/^.*md5sum\.txt.*$//g' -e 's/^.*\.\/isolinux\/boot\.cat.*$//g' md5sum.txt 
Den skriver då ut texten på skärmen, förhoppningsvis utan de rader du vill ha bort.
/Micke
Edit: Fixade till det som det skulle vara
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur fungerar Ubuntus live-cd?

Inlägg av Konservburk »

Jag kan ju tipsa om sed-kommandot d som passar lite bättre än s///g i just det här fallet:

Kod: Markera allt

sed '/md5sum\.txt/d'
Annars är grep ett alternativ:

Kod: Markera allt

grep -v 'md5sum\.txt'
Användarvisningsbild
micke_nordin
Inlägg: 1539
Blev medlem: 21 aug 2008, 17:03
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Kontakt:

Re: Hur fungerar Ubuntus live-cd?

Inlägg av micke_nordin »

Konservburk skrev:Jag kan ju tipsa om sed-kommandot d som passar lite bättre än s///g i just det här fallet:

Kod: Markera allt

sed '/md5sum\.txt/d'
Matchar det hela raden, eller ska det vara:

Kod: Markera allt

sed -e '/^.*md5sum\.txt.*$/d' md5sum.txt 

Konservburk skrev:

Kod: Markera allt

grep -v 'md5sum\.txt'
Den är nog bra, kan man bara pipe:a tillbaka detta till ursprungsfilen sedan? När jag testade med en testfil blev den blank nämligen (med mitt ursprungliga sedkommando, även om det såg bra ut på skärmen) ::).

/Micke
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Hur fungerar Ubuntus live-cd?

Inlägg av Konservburk »

micke_nordin skrev:
Konservburk skrev:

Kod: Markera allt

sed '/md5sum\.txt/d'
Matchar det hela raden, eller ska det vara:

Kod: Markera allt

sed -e '/^.*md5sum\.txt.*$/d' md5sum.txt 
Du behöver faktiskt aldrig använda varken ^.* eller .*$ eftersom .* ändå matchar så mycket den bara kan (greedy). När det gäller d så behöver du inte matcha hela raden för att ta bort den. Du kan t.ex. plocka bort alla rader som någonstans innehåller siffran 2 med sed /2/d.

Sen kan det också vara värt att nämna att 's/.*matchning.*//' lämnar tomrader efter sig, medan '/matchning/d' istället tar bort raderna helt.
micke_nordin skrev:
Konservburk skrev:

Kod: Markera allt

grep -v 'md5sum\.txt'
Den är nog bra, kan man bara pipe:a tillbaka detta till ursprungsfilen sedan? När jag testade med en testfil blev den blank nämligen (med mitt ursprungliga sedkommando, även om det såg bra ut på skärmen) ::).
Du är aldrig säkert att "pipe:a" tillbaka till ursprungsfilen. Mellanlagra resultatet i en temporär fil och ersätt därefter orginalet. GNU sed kan göra det åt dig om du använder sed -i.
Användarvisningsbild
micke_nordin
Inlägg: 1539
Blev medlem: 21 aug 2008, 17:03
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Kontakt:

Re: Hur fungerar Ubuntus live-cd?

Inlägg av micke_nordin »

Ok, tack för klargörandet. I det här fallet skulle vi alltså kunna ta bort alla rader med texten ovan genom detta:

Kod: Markera allt

sed -i '/md5sum\.txt/d;/\.\/isolinux\/boot\.cat/d' md5sum.txt 
/Micke
Skriv svar

Återgå till "Experimentverkstad"