Maak uw eigen aangepaste Ubuntu Live-cd

Probeer Ons Instrument Voor Het Oplossen Van Problemen

Hier op Ghacks heb ik een paar tools genoemd waarmee je verschillende soorten Linux-cd's kunt maken. Met de meeste van deze tools kun je live-cd's maken die ofwel afbeeldingen zijn van je huidige werkende distributie of tools om een ​​live-cd met speciale pakketten te maken. Maar tot nu toe heeft geen van deze tools je in staat gesteld echt aan je persoonlijke wensen aan te passen met je Live CD. U kunt geen bureaubladachtergronden of andere configuratie-opties specificeren. Dit zijn taken die het maken van een aangepaste live-cd echt de moeite waard kunnen maken.

In dit artikel ga ik je laten zien hoe je een gedownloade Ubuntu 9.10 iso-afbeelding kunt nemen, deze kunt mounten, aanpassen en de live-cd opnieuw kunt opbouwen op basis van je nieuwe aangepaste afbeelding. Dit proces kan tijdrovend zijn, maar is het waard. Dit hele proces wordt vanaf de opdrachtregel uitgevoerd, dus houd uw vingers klaar om te typen.

Het eerste dat u nodig heeft, is een ISO-image van een recente release. Dus ga maar naar Ubuntu's website en download een nieuwe kopie van 9.10. Zodra dat is gebeurd, bent u klaar om aan de slag te gaan.

Voordat u doorgaat met de aanpassing, moet u enkele benodigde tools installeren. Voer vanaf de opdrachtregel deze opdracht uit:

sudo aptitude installeer squashfs-tools genisoimage

Maak nu een lege map die zal worden gebruikt om met de ISO-afbeelding te werken. Laten we dit maken in de homedirectory van uw gebruikers, dus geef het volgende commando:

mkdir ~ / LIVECD

Verplaats nu die vers gedownloade ISO-afbeelding naar de nieuwe map en maak je klaar om te werken.

Het eerste dat u moet doen, is de ISO-afbeelding mounten met de opdracht. U moet een submap maken om de afbeelding aan te koppelen, dus voer het volgende commando uit:

mkdir ~ / LIVECD / mount

Mount nu de iso met het commando:

sudo mount -o loop ubuntu-9.10-desktop-i386.iso ~ / LIVECD / mount /

Nu moet je nog een map maken waarin je de inhoud van ~ / LIVECD / mount kunt extraheren. Geef het commando:

mkdir ~ / LIVECD / extract-cd

En extraheer vervolgens met het commando:

rsync --exclude = / casper / filesystem.squashfs -a mnt / extract-cd

Pak nu het squashfs-bestandssysteem uit met het commando:

sudo unsquashfs mount / casper / filesystem.squashfs

sudo mv squashfs-root bewerken

De eerste van de bovenstaande twee opdrachten zal enige tijd duren. Dat is normaal.
Als u netwerktoegang met dit systeem nodig heeft (en waarschijnlijk ook), moet u het /etc/resolv.conf bestand zodat het de juiste DNS-adressen heeft. Kopieer hiervoor uw huidige werk resol.conf bestand in het ~ / LIVECD / bewerken / enz directory met het commando:

sudo cp /etc/resolve.conf ~ / LIVECD / edit / etc /

Om nu enkele belangrijke mappen op uw systeem te mounten:

sudo mount --bind / dev / edit / dev
sudo chroot bewerken
mount -t proc geen / proc
mount -t sysfs geen / sys
mount -t devpts geen / dev / pts

Het zal later erg belangrijk zijn om deze mappen te ontkoppelen.

Vervolgens zorgen we ervoor dat we locale problemen vermijden en dat we GPG-sleutels kunnen importeren (indien nodig), we geven de opdrachten uit:

export HOME = / root

exporteer LC_ALL = C

Nu kun je alle pakketten bekijken die op de aangekoppelde ISO zijn geïnstalleerd met het commando:

dpkg-query -W --showformat = '$ {Pakket} n' | sorteer -nr | minder

Je kunt die lijst doorlopen en elk pakket dat je niet wilt op de Live CD verwijderen met het commando:

aptitude purge PACKAGE_NAME

Waar VERPAKKINGSNAAM is de naam van het pakket dat u wilt verwijderen. U kunt vervolgens nieuwe pakketten op de Live-cd installeren door de volgende opdracht te geven:

aptitude installeer PACKAGE_NAME

Waar VERPAKKINGSNAAM is de naam van het pakket dat moet worden geïnstalleerd.

Hoe zit het met bureaubladachtergrondafbeeldingen? Ja, u kunt dit ook aanpassen. Als je naar het bestand kijkt /usr/share/gnome-background-properties/ubuntu-wallpapers.xml u zult zien waar de standaardachtergrond is geconfigureerd. U kunt dat bestand bewerken, maar dan moet u ervoor zorgen dat het .png-bestand dat u wilt gebruiken zich in / usr / share / gconf / defaults / 16_ubuntu-wallpapers .

U kunt ook het /etc/gconf/gconf.xml.defaults/%gconf-tree.xml bestand om eventuele aanvullende aanpassingen (lettertypen, kleuren, paneelopties, enz.) in dat bestand aan te brengen. Begrijp dat dit bestand een leeg bestand is waaraan u nieuwe standaardwaarden zult toevoegen. Als u liever gewoon de gconftool gebruikt om deze waarden te bewerken, kunt u dit doen met een commando zoals:

gconftool-2 --direct --config-source xml: readwrite: /etc/gconf/gconf.xml.defaults --type string --set KEY 'VALUE'

Waar KEY de sleutel is die u wilt wijzigen en WAARDE de waarde is die voor de sleutel moet worden ingesteld.

Er zijn een heleboel andere mogelijke configuraties die u hier kunt ondernemen. Maar voor de reikwijdte van dit artikel laten we het achter bij wat we hebben.

Het is tijd om ervoor te zorgen dat u alle tijdelijke bestanden verwijdert die mogelijk achterblijven bij een pakketinstallatie met de opdracht:

geschiktheid schoon

Je kunt ook het /etc/resolv.conf-bestand verwijderen dat je hebt toegevoegd met het commando:

rm /etc/resolv.conf

Tijd om de mappen te ontkoppelen:

umount / proc
umount / sys
umount / dev / pts
Uitgang
sudo umount edit / dev

Zet het allemaal weer in elkaar

Nu is het tijd om alles weer in elkaar te zetten. Eerst moet u het manifest opnieuw genereren:

chmod + w extract-cd / casper / filesystem.manifest
sudo chroot edit dpkg-query -W --showformat = '$ {Pakket} $ {Versie} n'> extract-cd / casper / filesystem.manifest
sudo cp extract-cd / casper / filesystem.manifest extract-cd / casper / filesystem.manifest-desktop
sudo sed -i '/ ubiquity / d' extract-cd / casper / filesystem.manifest-desktop
sudo sed -i '/ casper / d' extract-cd / casper / filesystem.manifest-desktop

Om het bestandssysteem nu te comprimeren:

sudo rm extract-cd / casper / filesystem.squashfs
sudo mksquashfs bewerk extract-cd / casper / filesystem.squashfs

Het bovenstaande commando zal enige tijd duren.

Open nu het bestand ~ / LIVECD / extract-cd / README.diskdefines en breng de nodige wijzigingen aan.

De volgende stap vereist dat u de oude md5-sommen verwijdert en nieuwe sommen berekent. Doe dit met de volgende commando's:

cd extract-cd
sudo rm md5sum.txt
vind -type f -print0 | xargs -0 md5sum | grep -v isolinux / boot.cat | sudo tee md5sum.txt

Nu is het tijd om de ISO-afbeelding te maken. Doe dat met de volgende commando's:

sudo mkisofs -D -r -V '$ IMAGE_NAME' -cache-inodes -J -l -b isolinux / isolinux.bin -c isolinux / boot.cat -no-emul-boot -boot-load-size 4 -boot- info-table -o ../ubuntu-9.04.1-desktop-i386-custom.iso.

Nu, in de ~ / LIVECD-directory heb je je nieuwe ISO om op schijf te branden en te gebruiken.

Gefeliciteerd, je hebt zojuist je eigen aangepaste Ubuntu Live-cd gemaakt!