Bootstrap v1.0 şəkillərinin yaradılması


Bootstrap v1.0 şəkillərinin yaradılması

Diqqətinizə GNU/Linux paylamaları ilə açılış şəkilləri yaratmaq üçün POSIX qabığında yazılmış boobstrap adlı çərçivəni təqdim etmək istərdim. Çərçivə bütün prosesi cəmi üç sadə addımda keçməyə imkan verir: sistemin chroot-da yerləşdirilməsi, chrooted sistemi ehtiva edən initramfs təsvirinin yaradılması və nəticədə yüklənə bilən ISO təsviri. boobstrap müvafiq olaraq mkbootstrap, mkinitramfs və mkbootisofs üç utiliti ehtiva edir.

mkbootstrap sistemi ayrıca bir kataloqda quraşdırır, CRUX üçün yerli dəstək var və Arch Linux / Manjaro və Debian əsaslı paylamalar vəziyyətində, üçüncü tərəfin pacstrap, basestrap və debootstrap kommunal proqramlarından istifadə edilməlidir.

mkinitramfs initramfs görüntüsünü yaradır, qovluqda quraşdırılmış sistemi SquashFS istifadə edərək sıxılmış "örtüşmə" kimi istifadə edə bilərsiniz və ya sistemə yükləndikdən sonra birbaşa tmpfs-də işləyə bilərsiniz. Məsələn, mkinitramfs `mktemp -d` --overlay "arch-chroot/" --overlay "/home" --squashfs-xz --output initrd əmri "arch-" ilə iki üst-üstə düşmə daxil olmaqla initrd faylı yaradacaq. chroot/" sistemini və SquashFS istifadə edərək sıxılmış "/home", sonra PXE vasitəsilə tmpf-lərə yükləyə və ya bu initrd ilə yüklənə bilən ISO təsviri yarada bilərsiniz.

mkbootisofs müəyyən edilmiş qovluqdan BIOS/UEFI yüklənə bilən ISO şəklini yaradır. Kataloqda sadəcə /boot/vmlinuz və /boot/initrd qoyun.

boobstrap busybox-dan istifadə etmir və işləyən initramfs mühiti yaratmaq üçün sistemə yükləmək və sistemə keçmək üçün lazım olan minimal proqramlar toplusu ldd istifadə edərək kopyalanır. Kopyalanacaq proqramların siyahısı, hər şey kimi, /etc/boobstrap/boobstrap.conf konfiqurasiya faylı vasitəsilə konfiqurasiya edilə bilər. Həmçinin, hər hansı minimalist paylamanı ayrıca chroot/-a quraşdıra bilərsiniz, ondan sonra tam hüquqlu initramfs mühiti yarada bilərsiniz. Belə bir minimalist, lakin eyni zamanda tam hüquqlu bir mühit olaraq, xz-dən sonra 37 MB kompromis götürən “crux_gnulinux-daxili” şablonundan istifadə etmək təklif olunur. tam hüquqlu GNU/Linux mühitinin 3-5 MB-a qarşı 30-50 MB ölçüsündən başqa busybox artıq heç bir üstünlük vermir, ona görə də layihədə busybox-dan istifadə məqsədəuyğun görünmür.

Funksionallığı necə tez yoxlamaq və işə başlamaq olar? Quraşdırın və işə salın.

# git klonu https://github.com/sp00f1ng/boobstrap.git
# CD boobstrap
# quraşdırın# boobstrap/tests/crux_gnulinux-download-and-build
# qemu-system-x86_64 -enable-kvm -m 1G -cdrom tmp.*/install.iso

Siz həmçinin asılılıqları quraşdırmalısınız, yəni: cpio, grub, grub-efi, dosfstools, xorriso. Squashfs-tools-dan istifadə etmək lazım deyil, siz tmpfs-də müvafiq RAM miqdarı ilə işləyə bilərsiniz. Sistemdə bir şey çatışmırsa, boobstrap işə salındıqda bu barədə məlumat verəcəkdir.

Konfiqurasiyaların yaradılmasını sadələşdirmək üçün boobstrap “şablonlar” və “sistemlərdən” istifadə etməyi təklif edir, bunların mahiyyəti sistemləri fayldan tez quraşdırmaq üçün “şablonlardan” (bootstrap-templates/) və birbaşa “sistemlərdən” (bootstrap-) istifadə etməyi təklif edir. sistemlər/) son konfiqurasiyaları qurmaq üçün istifadə olunur.

Beləliklə, məsələn, boobstrap/bootstrap-templates/crux_gnulinux-embedded.bbuild skriptini işə salmaq CRUX GNU/Linux sisteminin minimum konfiqurasiyasını quraşdıracaq və onu crux_gnulinux-embedded.rootfs faylında saxlayacaq, sonra siz boobstrap/bootstrap-systems-i işə salacaqsınız. /default/crux_gnulinux.bbuild qeyd olunan fayldan əsas konfiqurasiyanı yükləyəcək, bütün lazımi konfiqurasiyanı edəcək və yüklənə bilən ISO hazırlayacaq. Bu, məsələn, bir çox sistem eyni tip konfiqurasiyadan istifadə etdikdə əlverişlidir: hər dəfə eyni paketlər dəstini təsvir etməmək üçün bir şablondan istifadə edirsiniz, onun əsasında son konfiqurasiya ilə sistemlərin açılış şəkillərini yaradırsınız.

Bütün bunları harada istifadə edə bilərəm?

Siz sistemi bir dəfə faylda konfiqurasiya edirsiniz və onu işə salmaqla onu qurur və/və ya yeniləyirsiniz. Sistem tmpfs-də işləyir, bu da onu mahiyyətcə birdəfəlik edir. Sistem uğursuz olarsa, Sıfırla düyməsini bir kliklə orijinal vəziyyətinə qayıda bilərsiniz. Siz təhlükəsiz rm -rf / işlədə bilərsiniz.

Siz bütün sistemlərinizin konfiqurasiyalarını yerli olaraq konfiqurasiya edə, şəkillər yarada, onları virtual maşında və ya ayrıca aparatda sınaya, sonra onları uzaq serverə yükləyə və yalnız iki əmri icra edə bilərsiniz kexec -l /vmlinuz —initrd=/initrd && kexec -e bütün sistemi yeniləmək, onu tmpfs-ə yenidən yükləmək.

Eyni şəkildə, bütün sistemləri, məsələn, VDS-də, tmpfs-də işləmək üçün köçürə və /dev/vda diskini şifrələyə və əməliyyat sistemini üzərində saxlamağa ehtiyac olmadan yalnız məlumat üçün istifadə edə bilərsiniz. Bu vəziyyətdə yeganə "məlumat sızması nöqtəsi" yalnız virtual maşınınızın yaddaşının "soyuq tullantısı" olacaq və sistemin bir kompromissi olduqda (məsələn, ssh parolunu və ya bir zəifliyi təxmin etməklə) Exim), bütün zəiflikləri bağlamaq üçün sistem konfiqurasiyasını redaktə etməyi unutmadan VDS-ni yenidən işə salmaq üçün provayderinizin “idarəetmə paneli” vasitəsilə yeni ISO yükləyə bilərsiniz. Bu, yenidən quraşdırmaqdan, sonrakı konfiqurasiyadan və/və ya ehtiyat nüsxədən bərpa etməkdən daha sürətlidir, çünki mahiyyət etibarı ilə sisteminizlə yüklənə bilən ISO sizin ehtiyat nüsxənizdir. "Yeddi çətinlik - bir sıfırlama."

Sonda ehtiyaclarınız üçün hər hansı bir paylama yarada, onu USB sürücüsünə yaza və orada işləyə, lazım olduqda onu yeniləyə və yenidən USB sürücüsünə yaza bilərsiniz. Bütün məlumatlar buludlarda saxlanılır. Sistem, təkrar edirəm, mahiyyətcə "birdəfəlik" halına gələndə sistemin təhlükəsizliyindən narahat olmaq və ehtiyat nüsxəsini çıxarmaq lazım deyil.

İstək, təklif və şərhləriniz qəbul olunur.

Aşağıdakı linkdəki depoda hər bir yardım proqramının təsviri və istifadə nümunələri ilə ətraflı README faylı (ingilis dilində), rus dilində ətraflı sənədlər və keçiddə inkişaf tarixi var: Boobstrap açılış skript kompleksi.

Mənbə: linux.org.ru

Добавить комментарий