Det beste av Linux

Verktøy for å lage din egen Linux-distribusjon

Verktøy for å lage din egen Linux-distribusjon
Hvis du trenger å lage en Linux-distribusjon, vil denne opplæringen avklare viktige problemer mens du gir en rask oversikt over opprettelsesprosessene. Denne artikkelen fokuserer på Linux From Scratch og Ubuntu Live som måter å tilpasse en Linux-distribusjon på. Trinnene og kommandoene som vises, er ikke ment å være funksjonelle, men å skildre vanskelighetsgraden til hver prosess. I fremtiden vil hver prosess bli forklart om nye oppdateringer på LinuxHint.

Linux fra bunnen av

LFS (Linux From Scratch) er det mest populære verktøyet for å lage tilpassede Linux-distribusjoner fra kilden. Å lage din egen Linux-distribusjon kan inneholde noen fordeler (og ulemper også). Blant fordelene vil du lære mye om Linux ved å lage din egen Linux-distribusjon. Du vil vite hvordan Linux-moduler samhandler og hvordan du tilpasser systemet.

Driftsstørrelsen er også en fordel avhengig av maskinvarens ressurser eller bruken du vil gi systemet. På deres nettside sier LFS-utviklere at de opprettet en webserver for å jobbe med Apache på 5 MB størrelse. Sammen med Gentoo Linux er Linux From Scratch den mest fleksible måten å sette opp et Linux-system. Å bygge det er ganske enkelt og prosessen er beskrevet trinn for trinn, nedenfor vil jeg bare vise de første trinnene for å skildre en ide om vanskeligheten og en lenke til den offisielle dokumentasjonen som viser fra byggetrinnet.

For å komme i gang med Linux From Scratch må du først opprette en partisjon (minimum 3 GB på grunn av kompileringsprosessen). Det anbefales også å opprette en byttepartisjon eller å dele din eksisterende (for instruksjoner om partisjonering, sjekk Partisjonering av harddisker under Debian / Ubuntu og størrelse på partisjoner).

Når du har opprettet partisjonen, oppretter du $ LFS-variabelen ved å kjøre:

# eksport LFS = / mnt / lfs

Du kan sjekke det ved å kjøre:

# echo $ LFS

Monter deretter partisjonen:

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

Merk: erstatte for partisjonen din.

Kjør deretter for byttepartisjonen:

# / sbin / swapon -v / dev /

Du må laste ned pakker til en bestemt katalog som heter LFS / sources, for å opprette katalogkjøringen:

# mkdir -v $ LFS / kilder

Gjør det skrivbart og klebrig:

# chmod -v a + wt $ LFS / kilder

Last ned og lagre alle pakker i katalogen fra http: // www.linuxfromscratch.org / lfs / view / 6.6 / kapittel 03 / pakker.html

og

http: // www.linuxfromscratch.org / lfs / view / 6.6 / kapittel 03 / lapper.html

Du kan bruke wget-listen http: // www.linuxfromscratch.org / lfs / view / 6.6 / wget-liste

Opprett verktøykatalogen og den symbolske lenken ved å kjøre:

# mkdir -v $ LFS / verktøy
# ln -sv $ LFS / verktøy /

Kjør følgende kommandoer for å opprette lfs-brukeren som gir den rettigheter til verktøy og kilder kataloger:

# groupadd lfs
# brukeradd -s / bin / bash -g lfs -m -k / dev / null lfs
# passwd lfs
# chown -v lfs $ LFS / verktøy
# chown -v lfs $ LFS / kilder
# su - lfs

Logg inn som lfs-bruker og kjør:

# katt> ~ /.bash_profile << "EOF"

Skriv deretter inn:

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

Og løp:

# EOF

Lage en ny .bashrc ved å løpe:

# katt> ~ /.bashrc << "EOF"

Og legg til:

# sett + h
# umask 022
# LFS = / mnt / lfs
# LC_ALL = POSIX
# LFS_TGT = $ (uname -m) -lfs-linux-gnu
# PATH = / tools / bin: / bin: / usr / bin
# eksport LFS LC_ALL LFS_TGT PATH
# EOF

Så løp:

# kilde ~ /.bash_profile
# sett MAKEFLAGS = "- j 2"

Deretter kan du lagre verktøyene for å begynne å bygge din Linux-distribusjon ved å følge trinnene på http: // www.linuxfromscratch.org / lfs / view / 6.6 / kapittel 05 / introduksjon.html

Når du er ferdig, endrer du eierkatalogeierskapet ved å kjøre:

# chown -R root: root $ LFS / tools

Den offisielle dokumentasjonen for å bygge distribusjonen din, forberede kjernen og baseprogramvaren finner du her. Det er en rekke trinn du trenger for å lage en tilpasset distribusjon. Trinnene er å forberede Virtual Kernel File Systems, Package Management, Entering the Chroot Environment, Opprette kataloger, Opprette viktige filer og Symlinks, installere tilleggsprogramvare som er oppført her Stripping Again og Clean Up.

For å begynne å tilpasse systemet, besøk kapitlene:

  • LFS-Bootscripts-20100124
  • Hvordan fungerer disse oppskriften?
  • Konfigurere setclock-skriptet
  • Konfigurere Linux-konsollen
  • Konfigurere sysklogd-skriptet
  • Opprette / etc / inputrc-filen
  • Oppstartsfiler for Bash Shell
  • Enhets- og modulhåndtering på et LFS-system
  • Opprette egendefinerte symlenker til enheter
  • Konfigurere localnet-skriptet
  • Tilpasse / etc / hosts-filen
  • Konfigurere nettverksskriptet
    Opprette / etc / fstab-filen
  • Linux-2.6.32.8

Til slutt installerer du GRUB ved å bruke GRUB for å sette opp oppstartsprosessen og følg trinnene før du starter på nytt for første gang

Ubuntu Live


Å lage en tilpasset Linux basert på Ubuntu er ganske enkelt, det kan gjøres veldig raskt, det er ekstremt enkelt sammenlignet med Linux From Scratch, men det er ikke fleksibelt i det hele tatt, du vil kunne legge til programvare, tilpasse bakgrunn og noen detaljer men grunnleggende tilpasninger som applikasjonsmenyutgaven støttes ikke.

# sudo debootstrap

Og legg til:

--bue = amd64
--variant = minbase
bionisk
$ HJEM / live-ubuntu-fra-bunnen / chroot

http: // oss.arkiv.ubuntu.com / ubuntu /

Sett monteringspunkter:

# sudo mount - bind / dev $ HOME / live-ubuntu-from-scratch / chroot / dev
# sudo mount - bind / kjør $ HOME / live-ubuntu-from-scratch / chroot / run
# sudo chroot $ HOME / live-ubuntu-from-scratch / chroot
# monter ingen -t proc / proc
# monter ingen -t sysfs / sys
# monter ingen -t devpts / dev / pts
# eksport HJEM = / root
# eksport LC_ALL = C
# echo "ubuntu-fs-live"> / etc / vertsnavn

Da må du oppdatere repositoriene og kjøre apt update og følgende kommando:

# apt-get install -y systemd-sysv
# dbus-uuidgen> / etc / machine-id
# ln -fs / etc / machine-id / var / lib / dbus / machine-id
# dpkg-viderekoble --lokal --navn --add / sbin / initctl
# ln -s / bin / true / sbin / initctl
# apt-get install -y ubuntu-standard casper lupin-casper oppdag laptop-detect os-prober network-manager resolvconf net-tools wireless-tools wpagui locales linux-generic

Når du ber konfigurasjonsskjermbilder som GRUBs trykk TAST INN til standardvalg for å fortsette. Så løp:

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

Installer hvilken som helst X-vindusbehandling du vil:

# apt-get install -y plymouth-tema-ubuntu-logo ubuntu-gnome-desktop ubuntu-gnome-bakgrunnsbilder

Legg til eventuell ekstra programvare du vil ha i distribusjonen din, og kjør deretter:

# apt-get oppdatering
# apt-get install -y kode

Velg lokaliteter og konfigurer oppløsningen på nytt.conf og nettverksleder:

# dpkg-re-konfigurere lokaliteter
# dpkg-omkonfigurer resolv.konf
# dpkg-omkonfigurer nettverksadministrator

Så løp:

# trunker -s 0 / etc / machine-id
# rm / sbin / initctl
# apt-get clean
# rm -rf / tmp / * ~ /.bash_history

Demonter alle filsystemene:

# umount / proc
# umount / sys
# umount / dev / pts
# eksport HISTSIZE = 0utgang
# sudo umount $ HOME / live-ubuntu-from-scratch / chroot / dev
# sudo umount $ HOME / live-ubuntu-from-scratch / chroot / run

Opprett kataloger og kopier kjernen og binærfilene:

# cd $ HJEM / live-ubuntu-fra bunnen av
# mkdir -p image / casper, isolinux, install
# sudo cp chroot / boot / vmlinuz - ** - ** - generisk bilde / casper / vmlinuz
# sudo cp chroot / boot / initrd.img - ** - ** - generisk bilde / casper / initrd
# sudo cp chroot / boot / memtest86+.bin image / install / memtest86+
# wget --progress = dot https: // www.memtest86.no / nedlastinger / 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.glidelås

Oppsett GRUB

Kjør alle følgende kommandoer:

# cd $ HJEM / live-ubuntu-fra bunnen av
# sudo mksquashfs chroot image / casper / filesystem.squashfs
# printf $ (sudo du -sx --block-size = 1 chroot | cut -f1)> image / casper / filesystem.størrelse
# cd $ HJEM / live-ubuntu-fra bunnen av
# cd $ HJEM / live-ubuntu-fra bunnen av / bilde
# 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 normal iso9660 biosdisk memdisk search tar ls" --modules = "linux16 linux normal iso9660 biosdisk search" --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 "(finn . -skriv f -print0 | xargs -0 md5sum | grep -v "./ md5sum.txt "> md5sum.tekst)"
# sudo xorriso -as mkisofs -iso-level 3 -full-iso9660-filnavn -volid ""-Eltorito-boot boot / grub / bios.img -no-emul-boot-boot-load-size 4-boot-info-table --eltorito-catalog boot / grub / boot.katt
--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-poeng"."/ boot / grub / bios.img = isolinux / bios.img / EFI / efiboot.img = isolinux / efiboot.img

Som du kan se er prosessen med Ubuntu Live mye raskere og enklere, men det er ikke mer enn en Ubuntu-distribusjon med lette tilpasninger i motsetning til Linux From Scratch som er fullt tilpassbar. Jeg håper du fant denne opplæringen nyttig, fortsett å følge LinuxHint for flere tips og oppdateringer om Linux og nettverk.

Åpne kildeporter for kommersielle spillmotorer
Gratis, åpen kildekode og plattformspillmotorrekreasjoner kan brukes til å spille gamle så vel som noen av de ganske nylige spilletitlene. Denne artik...
Beste kommandolinjespill for Linux
Kommandolinjen er ikke bare din største allierte når du bruker Linux, den kan også være kilden til underholdning fordi du kan bruke den til å spille m...
Beste Gamepad Mapping Apps for Linux
Hvis du liker å spille spill på Linux med en gamepad i stedet for et vanlig tastatur- og musinngangssystem, er det noen nyttige apper for deg. Mange P...