பூட்ஸ்ட்ராப் v1.0 படங்களை உருவாக்குகிறது


பூட்ஸ்ட்ராப் v1.0 படங்களை உருவாக்குகிறது

GNU/Linux விநியோகங்களுடன் பூட் பிம்பங்களை உருவாக்க POSIX ஷெல்லில் எழுதப்பட்ட பூப்ஸ்ட்ராப் என்ற கட்டமைப்பை உங்கள் கவனத்திற்கு முன்வைக்க விரும்புகிறேன். கட்டமைப்பானது முழு செயல்முறையையும் மூன்று எளிய படிகளில் செல்ல அனுமதிக்கிறது: கணினியை chroot இல் பயன்படுத்துதல், chrooted கணினியை உள்ளடக்கிய initramfs படத்தை உருவாக்குதல் மற்றும் இறுதியில் துவக்கக்கூடிய ISO படம். பூப்ஸ்ட்ராப்பில் முறையே mkbootstrap, mkinitramfs மற்றும் mkbootisofs ஆகிய மூன்று பயன்பாடுகள் உள்ளன.

mkbootstrap கணினியை ஒரு தனி கோப்பகத்தில் நிறுவுகிறது, CRUX க்கு சொந்த ஆதரவு உள்ளது, மேலும் Arch Linux / Manjaro மற்றும் Debian அடிப்படையிலான விநியோகங்களில், மூன்றாம் தரப்பு பயன்பாடுகளான பேக்ஸ்ட்ராப், பேஸ்ஸ்ட்ராப் மற்றும் டிபூட்ஸ்ட்ராப் முறையே பயன்படுத்தப்பட வேண்டும்.

mkinitramfs ஒரு initramfs படத்தை உருவாக்குகிறது, SquashFS ஐப் பயன்படுத்தி சுருக்கப்பட்ட கோப்பகத்தில் நிறுவப்பட்ட கணினியை "மேலடுக்கு" ஆகப் பயன்படுத்தலாம் அல்லது கணினியில் துவக்கிய பின் நேரடியாக tmpfs இல் வேலை செய்யலாம். எனவே எடுத்துக்காட்டாக, mkinitramfs `mktemp -d` --overlay "arch-chroot/" --overlay "/home" --squashfs-xz --output initrd கட்டளையானது initrd கோப்பை உருவாக்கும், இதில் "arch- உடன் இரண்டு மேலடுக்குகள் அடங்கும். chroot/" அமைப்பு மற்றும் உங்கள் "/home", SquashFS ஐப் பயன்படுத்தி சுருக்கப்பட்டது, அதை நீங்கள் PXE வழியாக tmpfs இல் துவக்கலாம் அல்லது இந்த initrd மூலம் துவக்கக்கூடிய ISO படத்தை உருவாக்கலாம்.

mkbootisofs குறிப்பிட்ட கோப்பகத்தில் இருந்து BIOS/UEFI துவக்கக்கூடிய ISO படத்தை உருவாக்குகிறது. கோப்பகத்தில் /boot/vmlinuz மற்றும் /boot/initrd ஐ வைக்கவும்.

boobstrap busybox ஐப் பயன்படுத்தாது, மேலும் ஒரு வேலை செய்யும் initramfs சூழலை உருவாக்க, ldd ஐப் பயன்படுத்தி குறைந்தபட்ச நிரல்களின் தொகுப்பு நகலெடுக்கப்படுகிறது, இது துவக்க மற்றும் கணினிக்கு மாறுவதற்கு அவசியமானது. எல்லாவற்றையும் போலவே, நகலெடுக்க வேண்டிய நிரல்களின் பட்டியலை உள்ளமைவு கோப்பு /etc/boobstrap/boobstrap.conf மூலம் கட்டமைக்க முடியும். மேலும், நீங்கள் எந்த சிறிய விநியோகத்தையும் ஒரு தனி chroot/ இல் நிறுவலாம், அதில் இருந்து நீங்கள் முழு அளவிலான initramfs சூழலை உருவாக்கலாம். ஒரு சிறிய, ஆனால் அதே நேரத்தில் முழு அளவிலான சூழலாக, "crux_gnulinux-embedded" டெம்ப்ளேட்டைப் பயன்படுத்த முன்மொழியப்பட்டது, இது xz க்குப் பிறகு 37 MB சமரசத்தை எடுக்கும். busybox, அதன் அளவைத் தவிர, 3-5 MB மற்றும் 30-50 MB முழு அளவிலான GNU/Linux சூழலில், இனி எந்த நன்மையையும் வழங்காது, எனவே ஒரு திட்டத்தில் பிஸிபாக்ஸைப் பயன்படுத்துவது பொருத்தமானதாகத் தெரியவில்லை.

செயல்பாட்டை விரைவாக சரிபார்த்து தொடங்குவது எப்படி? நிறுவி இயக்கவும்.

# git குளோன் https://github.com/sp00f1ng/boobstrap.git
# சிடி பூப்ஸ்ட்ராப்
# நிறுவு# பூப்ஸ்ட்ராப்/சோதனைகள்/crux_gnulinux-பதிவிறக்கம் மற்றும் கட்டமை
# qemu-system-x86_64 -enable-kvm -m 1G -cdrom tmp.*/install.iso

நீங்கள் சார்புகளையும் நிறுவ வேண்டும், அதாவது: cpio, grub, grub-efi, dosfstools, xorriso. squashfs-tools ஐப் பயன்படுத்துவது அவசியமில்லை; நீங்கள் tmpfs இல் பொருத்தமான அளவு RAM உடன் வேலை செய்யலாம். கணினியில் ஏதேனும் விடுபட்டால், துவக்கத்தில் பூப்ஸ்ட்ராப் இதைப் புகாரளிக்கும்.

உள்ளமைவுகளை உருவாக்குவதை எளிதாக்க, பூப்ஸ்ட்ராப் "வார்ப்புருக்கள்" மற்றும் "அமைப்புகள்" ஆகியவற்றைப் பயன்படுத்த பரிந்துரைக்கிறது, இதன் சாராம்சம் ஒரு கோப்பிலிருந்து கணினிகளை விரைவாக நிறுவ "வார்ப்புருக்கள்" (பூட்ஸ்ட்ராப்-வார்ப்புருக்கள்/) மற்றும் நேரடியாக "அமைப்புகள்" (பூட்ஸ்ட்ராப்- அமைப்புகள்/) இறுதி கட்டமைப்புகளை அமைக்கப் பயன்படுகிறது.

எடுத்துக்காட்டாக, ஸ்கிரிப்ட் boobstrap/bootstrap-templates/crux_gnulinux-embedded.bbuild ஐ இயக்குவது CRUX GNU/Linux அமைப்பின் குறைந்தபட்ச உள்ளமைவை நிறுவி அதை crux_gnulinux-embedded.rootfs கோப்பில் சேமிக்கும், பிறகு நீங்கள் boobstrap-strapsbootsboots ஐ இயக்கலாம். /default/crux_gnulinux.bbuild குறிப்பிடப்பட்ட கோப்பிலிருந்து முதன்மை உள்ளமைவை ஏற்றும், தேவையான அனைத்து உள்ளமைவுகளையும் செய்து துவக்கக்கூடிய ஐஎஸ்ஓவை தயார் செய்யும். எடுத்துக்காட்டாக, பல கணினிகள் ஒரே மாதிரியான உள்ளமைவைப் பயன்படுத்தும் போது இது வசதியானது: ஒவ்வொரு முறையும் ஒரே மாதிரியான தொகுப்புகளை விவரிக்காமல் இருக்க, நீங்கள் ஒரு டெம்ப்ளேட்டைப் பயன்படுத்துகிறீர்கள், அதன் அடிப்படையில் இறுதி உள்ளமைவுடன் கணினிகளின் துவக்க படங்களை உருவாக்குகிறீர்கள்.

இதையெல்லாம் நான் எங்கே பயன்படுத்தலாம்?

நீங்கள் ஒரு கோப்பில் கணினியை ஒரு முறை கட்டமைத்து, அதை இயக்குவதன் மூலம் அதை உருவாக்க மற்றும்/அல்லது புதுப்பிக்கவும். கணினி tmpfs இல் இயங்குகிறது, இது அடிப்படையில் களைந்துவிடும். கணினி தோல்வியுற்றால், மீட்டமை பொத்தானைக் கிளிக் செய்வதன் மூலம் அதன் அசல் நிலைக்குத் திரும்பலாம். நீங்கள் பாதுகாப்பாக rm -rf / ஐ இயக்கலாம்.

உங்கள் எல்லா கணினிகளின் உள்ளமைவுகளையும் உள்நாட்டில் உள்ளமைக்கலாம், படங்களை உருவாக்கலாம், அவற்றை ஒரு மெய்நிகர் இயந்திரம் அல்லது தனி வன்பொருளில் சோதிக்கலாம், பின்னர் அவற்றை தொலை சேவையகத்தில் பதிவேற்றலாம் மற்றும் kexec -l /vmlinuz —initrd=/initrd && kexec -e என்ற இரண்டு கட்டளைகளை இயக்கலாம். முழு கணினியையும் புதுப்பிக்க, அதை tmpfs இல் மீண்டும் துவக்குகிறது.

அதே வழியில், நீங்கள் அனைத்து கணினிகளையும் மாற்றலாம், எடுத்துக்காட்டாக, VDS இல், tmpfs இல் வேலை செய்ய, மேலும் /dev/vda வட்டை குறியாக்கம் செய்து, இயக்க முறைமையை அதில் வைத்திருக்க வேண்டிய அவசியமின்றி தரவுகளுக்கு மட்டும் பயன்படுத்தலாம். இந்த விஷயத்தில் ஒரே "தகவல் கசிவு புள்ளி" என்பது உங்கள் மெய்நிகர் இயந்திரத்தின் நினைவகத்தின் "கோல்ட் டம்ப்" மட்டுமே, மற்றும் கணினியில் சமரசம் ஏற்பட்டால் (எடுத்துக்காட்டாக, ssh கடவுச்சொல்லை யூகிப்பதன் மூலம் அல்லது பாதிப்பு Exim), உங்கள் வழங்குநரின் "கண்ட்ரோல் பேனல்" மூலம் புதிய ஐஎஸ்ஓவைப் பதிவிறக்கம் செய்து, VDS ஐ மீண்டும் செயல்பாட்டுக்குக் கொண்டு வர, அனைத்து பாதிப்புகளையும் மூடுவதற்கு கணினி உள்ளமைவைத் திருத்த மறந்துவிடாமல். இது மீண்டும் நிறுவுதல், அடுத்தடுத்த உள்ளமைவு மற்றும்/அல்லது காப்புப்பிரதியிலிருந்து மீட்டெடுப்பதை விட வேகமானது, ஏனெனில் சாராம்சத்தில், உங்கள் கணினியுடன் தரவிறக்கம் செய்யக்கூடிய ISO உங்கள் காப்புப்பிரதியாகும். "ஏழு பிரச்சனைகள் - ஒரு மீட்டமைப்பு."

முடிவில், நீங்கள் உங்கள் தேவைகளுக்கு எந்த விநியோகத்தையும் உருவாக்கலாம், அதை USB டிரைவில் எழுதி அதில் வேலை செய்யலாம், தேவைக்கேற்ப புதுப்பித்து மீண்டும் USB டிரைவில் மீண்டும் எழுதலாம். எல்லா தரவும் மேகங்களில் சேமிக்கப்படும். கணினியின் பாதுகாப்பைப் பற்றி நீங்கள் இனி கவலைப்பட வேண்டியதில்லை மற்றும் கணினி "செலவிடக்கூடியது" என்று நான் மீண்டும் சொல்கிறேன்.

உங்கள் விருப்பங்கள், ஆலோசனைகள் மற்றும் கருத்துக்கள் வரவேற்கப்படுகின்றன.

கீழே உள்ள இணைப்பில் உள்ள களஞ்சியத்தில் ஒரு விரிவான README கோப்பு உள்ளது (ஆங்கிலத்தில்) ஒவ்வொரு பயன்பாடு மற்றும் பயன்பாட்டின் எடுத்துக்காட்டுகளுடன், ரஷ்ய மொழியில் விரிவான ஆவணங்கள் மற்றும் இணைப்பில் ஒரு வளர்ச்சி வரலாறு உள்ளது: பூப்ஸ்ட்ராப் பூட் ஸ்கிரிப்ட் காம்ப்ளக்ஸ்.

ஆதாரம்: linux.org.ru

கருத்தைச் சேர்