Het beste van Linux

Tools om je eigen Linux-distributie te maken

Tools om je eigen Linux-distributie te maken
Als je een Linux-distributie moet maken, zal deze tutorial belangrijke problemen verduidelijken en tegelijkertijd een snel overzicht geven van de creatieprocessen. Dit artikel richt zich op Linux From Scratch en Ubuntu Live als manieren om een ​​Linux-distributie aan te passen. De getoonde stappen en opdrachten zijn niet bedoeld om functioneel te zijn, maar om de moeilijkheidsgraad van elk proces weer te geven. In de toekomst zal elk proces worden uitgelegd bij nieuwe updates op LinuxHint.

Linux vanaf het begin

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) hebben. Een van de voordelen is dat je veel leert over Linux door je eigen Linux-distributie te maken. U zult weten hoe Linux-modules op elkaar inwerken 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 te zien is 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 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:

# export LFS=/mnt/lfs

U kunt het controleren door het volgende uit te voeren:

# echo $LFS

Koppel vervolgens de partitie:

# mkdir -pv $LFS
# mount -v -t ext3 /dev/ $LFS

Opmerking: vervangen voor je partitie.

Voer vervolgens uit voor de swap-partitie:

# /sbin/swapon -v /dev/

U moet pakketten downloaden naar een specifieke map met de naam LFS/sources om de directory-run te maken:

# mkdir -v $LFS/bronnen

Maak het beschrijfbaar en plakkerig:

# chmod -v a+wt $LFS/bronnen

Download en bewaar in de map alle pakketten van http://www.linuxfromscratch.org/lfs/view/6.6/hoofdstuk03/pakketten.html

en

http://www.linuxfromscratch.org/lfs/view/6.6/hoofdstuk03/patches.html

U kunt de wget-lijst gebruiken http://www.linuxfromscratch.org/lfs/view/6.6/wget-lijst

Maak de directory met tools en de symbolische link 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 hulpmiddelen 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:

# exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash

En loop:

# EOF

Maak 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 kunt u de tools opslaan om te beginnen met het bouwen van uw Linux-distributie door de stappen te volgen op http://www.linuxfromscratch.org/lfs/view/6.6/hoofdstuk05/inleiding.html

Nadat u klaar bent, wijzigt u het eigendom van de gereedschapsmap door uit te voeren:

# chown -R root:root $LFS/tools

De officiële documentatie om uw distributie te bouwen, de kernel en de basissoftware voor te bereiden, vindt u hier. Het is een opeenvolging van stappen die u nodig hebt om een ​​aangepaste distributie te maken. De stappen zijn het voorbereiden van virtuele kernelbestandssystemen, pakketbeheer, invoeren van de Chroot-omgeving, mappen maken, essentiële bestanden maken en Symlinkzo, aanvullende software installeren die hier wordt vermeld Opnieuw strippen en opruimen.

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 Gebruik GRUB 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 applicatiemenu worden niet ondersteund.

# sudo debootstrap

En voeg toe:

--arch=amd64
--variant=minbase
bionisch
$HOME/live-ubuntu-van-nul/chroot

http://ons.archief.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-standard  casper  lupin-casper  ontdek laptop-detect   os-prober   network-manager   resolvconf   net-tools wireless-tools    wpagui    locales    linux-generic

Bij het oproepen van configuratieschermen zoals GRUB's druk op ENTER naar standaardkeuzes om door te gaan. Voer dan uit:

# apt-get install -y    ubiquity    ubiquity-casper ubiquity-frontend-gtk   ubiquity-slideshow-ubuntu ubiquity-ubuntu-artwork

Installeer elke gewenste X window manager:

# apt-get install -y    plymouth-theme-ubuntu-logo    ubuntu-gnome-desktop ubuntu-gnome-wallpapers

Voeg 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 oplossing opnieuw.conf en netwerkbeheerder:

# 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 afbeelding/casper/bestandssysteem.squashfs
# printf $(sudo du -sx --block-size=1 chroot | cut -f1) > afbeelding/casper/bestandssysteem.grootte
# 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 . -typ f -print0 | xargs -0 md5sum | grep -v "./md5sum.txt" > md5sum.tekst)"
# 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-table    --eltorito-catalog boot/grub/boot.kat
--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 -uitvoer "… /.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.

Top 10 spellen om te spelen op Ubuntu
Het Windows-platform is een van de dominante platforms voor gaming geweest vanwege het enorme percentage games dat tegenwoordig wordt ontwikkeld om Wi...
5 beste arcade-spellen voor Linux
Tegenwoordig zijn computers serieuze machines die worden gebruikt om te gamen. Als je de nieuwe hoge score niet kunt halen, weet je wat ik bedoel. In ...
Strijd om Wesnoth 1.13.6 Ontwikkeling vrijgegeven
Strijd om Wesnoth 1.13.6 die vorige maand werd uitgebracht, is de zesde ontwikkelingsrelease in de 1.13.x-serie en het levert een aantal verbeteringen...