LFS (Linux From Scratch) is de meest populaire tool om aangepaste Linux-distributies vanaf de bron te maken. Het maken van uw eigen Linux-distributie kan enkele voordelen (en ook nadelen) met zich meebrengen. Een van de voordelen is dat je veel leert over Linux door je eigen Linux-distributie te maken. U zult weten hoe Linux-modules samenwerken en hoe u het systeem kunt aanpassen.
De operationele grootte is ook een voordeel, afhankelijk van uw hardwarebronnen of het gebruik dat u aan het systeem wilt geven. Op hun website zeggen LFS-ontwikkelaars dat ze een webserver hebben gemaakt om met Apache te werken op een grootte van 5 mb. Samen met Gentoo Linux is Linux From Scratch de meest flexibele manier om een Linux-systeem op te zetten. Het bouwen is vrij eenvoudig en het proces wordt stap voor stap beschreven. Hieronder zal ik alleen de eerste stappen laten zien om een idee te geven van de moeilijkheidsgraad en een link naar de officiële documentatie die getoond wordt vanaf de bouwfase.
Om met Linux From Scratch aan de slag te gaan, moet u eerst een partitie maken (minimaal 3 GB vanwege het compilatieproces), het is ook aan te raden om een swappartitie te maken of om uw bestaande te delen (voor instructies over partitionering raadpleegt u Partitionering van harde schijven onder Debian/ Ubuntu en het formaat van partities wijzigen ).
Nadat u de partitie hebt gemaakt, maakt u de $LFS-variabele door uit te voeren:
#exporteren LFS=/mnt/lfs
U kunt het controleren door het volgende uit te voeren:
#gooide uit $LFS
Koppel vervolgens de partitie:
# mkdir -pv $LFS# mount -v -t ext3 /dev/ $LFS
Opmerking: vervangen voor uw partitie .
Voer vervolgens uit voor de swap-partitie:
#/sbin/ruilen-v /dev/<ruil>U moet pakketten downloaden naar een specifieke map met de naam LFS/sources om de directory-run te maken:
#mkdir -v $LFS/bronnenMaak het beschrijfbaar en plakkerig:
#chmod -va+wt$LFS/bronnenDownload en bewaar in de map alle pakketten van http://www.linuxfromscratch.org/lfs/view/6.6/chapter03/packages.html
en
http://www.linuxfromscratch.org/lfs/view/6.6/chapter03/patches.html
U kunt de wget-lijst gebruiken http://www.linuxfromscratch.org/lfs/view/6.6/wget-list
Maak de map met hulpprogramma's en de symbolische koppeling door het volgende uit te voeren:
# mkdir -v $LFS/tools# ln -sv $LFS/tools /
Voer de volgende opdrachten uit om de lfs-gebruiker aan te maken die hem rechten geeft op de gereedschap en bronnen mappen:
# groupadd lfs# useradd -s /bin/bash -g lfs -m -k /dev/null lfs
# wachtwoord lfs
# chown -v lfs $LFS/tools
# chown -v lfs $LFS/bronnen
# su - lfs
Log in als de lfs-gebruiker en voer het volgende uit:
#kat >~/.bash_profile<< 'EOF'Typ dan:
#uitvoerend env -l HUIS=$HUIS TERMIJN=$TERM PS1='u:w$ ' /ben/bashEn loop:
#EOFMaak een nieuwe .bashrc door rennen:
#kat >~/.bashrc<< 'EOF'En voeg toe:
# stel +h . in# umask 022
# LFS=/mnt/lfs
# LC_ALL=POSIX
# LFS_TGT=$(uname -m)-lfs-linux-gnu
# PATH=/tools/bin:/bin:/usr/bin
# export LFS LC_ALL LFS_TGT PATH
# EOF
Voer dan uit:
# bron ~/.bash_profile# set MAKEFLAGS='-j 2'
Vervolgens kun je de tools opslaan om te beginnen met het bouwen van je Linux-distributie door de stappen te volgen op: http://www.linuxfromscratch.org/lfs/view/6.6/chapter05/introduction.html
Nadat u klaar bent, wijzigt u het eigendom van de gereedschapsmap door het volgende uit te voeren:
#chown -Rwortel: wortel$LFS/gereedschapDe officiële documentatie om je distributie te bouwen, de kernel en de basissoftware voor te bereiden kan gevonden worden hier . Het is een opeenvolging van stappen die u nodig heeft om een distributie op maat te maken. De stappen zijn: om virtuele kernelbestandssystemen voor te bereiden , Pakketbeheer , De Chroot-omgeving betreden , Directory's maken , Essentiële bestanden en Symlink maken s, het installeren van aanvullende software vermeld hier Opnieuw strippen en Schoonmaken .
Ga naar de hoofdstukken om het systeem aan te passen:
- LFS-Bootscripts-2010124
- Hoe werken deze bootscripts?
- Het setclock-script configureren
- De Linux-console configureren
- Het sysklogd-script configureren
- Het /etc/inputrc-bestand maken
- De Bash Shell-opstartbestanden
- Apparaat- en moduleverwerking op een LFS-systeem
- Aangepaste symboollinks naar apparaten maken
- Het localnet-script configureren
- Het /etc/hosts-bestand aanpassen
- Het netwerkscript configureren
Het /etc/fstab-bestand maken - Linux-2.6.32.8
Installeer ten slotte GRUB GRUB gebruiken om het opstartproces in te stellen en volg de stappen voordat u voor de eerste keer opnieuw opstart
Ubuntu Live
Het maken van een aangepaste Linux op basis van Ubuntu is vrij eenvoudig, het kan heel snel worden gedaan, het is extreem eenvoudig in vergelijking met Linux From Scratch, maar het is helemaal niet flexibel, je kunt software toevoegen, achtergrond aanpassen en enkele details maar basisaanpassingen zoals de editie van het toepassingsmenu worden niet ondersteund.
En voeg toe:
--boog=amd64--variant=minbasis
bionisch
$HUIS/live-ubuntu-vanuit het niets/chroot
http://us.archive.ubuntu.com/ubuntu/
Aankoppelpunten instellen:
# sudo mount --bind /dev $HOME/live-ubuntu-from-scratch/chroot/dev# sudo mount --bind /run $HOME/live-ubuntu-from-scratch/chroot/run
# sudo chroot $HOME/live-ubuntu-from-scratch/chroot
# mount geen -t proc /proc
# mount geen -t sysfs /sys
# mount geen -t devpts /dev/pts
# export HOME=/root
# export LC_ALL=C
# echo 'ubuntu-fs-live' > /etc/hostname
Dan moet je de repositories bijwerken en apt update en de volgende opdracht uitvoeren:
# apt-get install -y systemd-sysv# dbus-uuidgen > /etc/machine-id
# ln -fs /etc/machine-id /var/lib/dbus/machine-id
# dpkg-divert --local --rename --add /sbin/initctl
# ln -s /bin/true /sbin/initctl
# apt-get install -y ubuntu-standaard casper lupin-casper ontdek laptop-detect os-prober netwerkbeheerder resolvconf net-tools draadloze-tools wpagui locales linux-generiek
Bij het oproepen van configuratieschermen zoals GRUB's druk op BINNENKOMEN standaardkeuzes om door te gaan. Voer dan uit:
#apt-get install-y ubiquity ubiquity-casper ubiquity-frontend-gtk ubiquity-slideshow-ubuntu ubiquity-ubuntu-artworkInstalleer elke gewenste X window manager:
#apt-get install-y plymouth-thema-ubuntu-logo ubuntu-gnome-desktop ubuntu-gnome-wallpapersVoeg eventueel extra software toe aan uw distributie en voer het volgende uit:
# apt-get update# apt-get install -y code
Selecteer uw landinstellingen en configureer de resolv.conf en netwerkbeheerder opnieuw:
# dpkg-landinstellingen opnieuw configureren# dpkg-reconfigure resolv.conf
# dpkg-netwerkbeheerder opnieuw configureren
Voer dan uit:
# truncate -s 0 /etc/machine-id# rm /sbin/initctl
# apt-get clean
# rm -rf /tmp/* ~/.bash_history
Ontkoppel alle bestandssystemen:
# umount /proc# umount /sys
# umount /dev/pts
# export HISTSIZE=0exit
# sudo umount $HOME/live-ubuntu-from-scratch/chroot/dev
# sudo umount $HOME/live-ubuntu-from-scratch/chroot/run
Maak mappen aan en kopieer de kernel en binaire bestanden:
# cd $HOME/live-ubuntu-from-scratch# mkdir -p afbeelding/{casper,isolinux,install}
# sudo cp chroot/boot/vmlinuz-**-**-generic image/casper/vmlinuz
# sudo cp chroot/boot/initrd.img-**-**-generic image/casper/initrd
# sudo cp chroot/boot/memtest86+.bin image/install/memtest86+
# wget --progress=dot https://www.memtest86.com/downloads/memtest86-usb.zip -O image/install/memtest86-usb.zipunzip -p image/install/memtest86-usb.zip memtest86-usb. img > image/install/memtest86rm image/install/memtest86-usb.zip
GRUB instellen
Voer alle volgende opdrachten uit:
# cd $HOME/live-ubuntu-from-scratch# sudo mksquashfs chroot image/casper/filesystem.squashfs
# printf $(sudo du -sx --block-size=1 chroot | cut -f1) > image/casper/filesystem.size
# cd $HOME/live-ubuntu-from-scratch
# cd $HOME/live-ubuntu-from-scratch/afbeelding
# grub-mkstandalone --format=x86_64-efi --output=isolinux/bootx64.efi --locales='' --fonts='' 'boot/grub/grub.cfg=isolinux/grub.cfg'
# grub-mkstandalone --format=i386-pc --output=isolinux/core.img --install-modules='linux16 linux normaal iso9660 biosdisk memdisk zoeken tar ls' --modules='linux16 linux normaal iso9660 biosdisk zoeken' - -locales='' --fonts='' 'boot/grub/grub.cfg=isolinux/grub.cfg'
# cat /usr/lib/grub/i386-pc/cdboot.img isolinux/core.img > isolinux/bios.img
# sudo /bin/bash -c '(vind . -type f -print0 | xargs -0 md5sum | grep -v './md5sum.txt' > md5sum.txt)'
# sudo xorriso -as mkisofs -iso-level 3 -full-iso9660-filenames -volid '' -eltorito-boot boot/grub/bios.img -no-emul-boot -boot-load-size 4 -boot-info- tabel --eltorito-catalog boot/grub/boot.cat
--grub2-boot-info --grub2-mbr /usr/lib/grub/i386-pc/boot_hybrid.img -eltorito-alt-boot -e EFI/efiboot.img -no-emul-boot -append_partition 2 0xef isolinux /efiboot.img -output '../.iso' -graft-punten '.' /boot/grub/bios.img=isolinux/bios.img /EFI/efiboot.img=isolinux/efiboot.img
Zoals je kunt zien is het proces met Ubuntu Live een stuk sneller en gemakkelijker, maar het is niet meer dan een Ubuntu-distributie met lichte aanpassingen in tegenstelling tot Linux From Scratch dat volledig aanpasbaar is. Ik hoop dat je deze tutorial nuttig vond, blijf Linux volgen Hint voor aanvullende tips en updates over Linux en netwerken.