Sida 3 av 4
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 02 mar 2009, 14:14
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.
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 02 mar 2009, 14:20
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

Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 08 mar 2009, 14:33
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".
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 08 mar 2009, 16:07
av JeyPeyy
Bump
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 08 mar 2009, 16:47
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.
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 08 mar 2009, 16:53
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?
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 08 mar 2009, 17:30
av Konservburk
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.
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 08 mar 2009, 18:22
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?
Re: Ändra egenskaper i panelen och annat från terminalen?
Postat: 08 mar 2009, 19:38
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
Hur fungerar Ubuntus live-cd?
Postat: 08 mar 2009, 19:51
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
Re: Hur fungerar Ubuntus live-cd?
Postat: 08 mar 2009, 20:22
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()
Re: Hur fungerar Ubuntus live-cd?
Postat: 08 mar 2009, 20:51
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!

Re: Hur fungerar Ubuntus live-cd?
Postat: 08 mar 2009, 21:02
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.

Re: Hur fungerar Ubuntus live-cd?
Postat: 20 mar 2009, 17:24
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?
Re: Hur fungerar Ubuntus live-cd?
Postat: 21 mar 2009, 10:41
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?
Re: Hur fungerar Ubuntus live-cd?
Postat: 21 mar 2009, 10:56
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
Re: Hur fungerar Ubuntus live-cd?
Postat: 21 mar 2009, 11:07
av Konservburk
Jag kan ju tipsa om
sed-kommandot
d som passar lite bättre än
s///g i just det här fallet:
Annars är
grep ett alternativ:
Re: Hur fungerar Ubuntus live-cd?
Postat: 21 mar 2009, 11:26
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:
Matchar det hela raden, eller ska det vara:
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
Re: Hur fungerar Ubuntus live-cd?
Postat: 21 mar 2009, 12:09
av Konservburk
micke_nordin skrev:
Matchar det hela raden, eller ska det vara:
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:
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.
Re: Hur fungerar Ubuntus live-cd?
Postat: 21 mar 2009, 13:32
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