GNU/Linux ವಿತರಣೆಗಳೊಂದಿಗೆ ಬೂಟ್ ಮಾಡಬಹುದಾದ ಚಿತ್ರಗಳನ್ನು ರಚಿಸಲು POSIX ಶೆಲ್ನಲ್ಲಿ ಬರೆಯಲಾದ ಬೂಸ್ಟ್ಸ್ಟ್ರಾಪ್ ಎಂಬ ಚೌಕಟ್ಟನ್ನು ನಿಮಗೆ ಪರಿಚಯಿಸಲು ನಾನು ಬಯಸುತ್ತೇನೆ.Linux. Фреймворк позволяет пройти весь пусть в три простых шага: от развёртывания системы в chroot, создания initramfs-образа включающего в себя систему из chroot, и в конечном счёте загрузочного ISO-образа. boobstrap включает в себя три утилиты mkbootstrap, mkinitramfs и mkbootisofs соответсвенно.
mkbootstrap устанавливает систему в отдельную директорию, имеется нативная поддержка CRUX, а в случае Arch Linux / Manjaro и дистрибутивов на основе Debian должны быть использованы сторонние утилиты pacstrap, basestrap и debootstrap соответственно.
mkinitramfs initramfs ಇಮೇಜ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ, ನೀವು ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ ಸ್ಥಾಪಿಸಲಾದ ಸಿಸ್ಟಮ್ ಅನ್ನು "ಓವರ್ಲೇ" ಆಗಿ ಬಳಸಬಹುದು, SquashFS ಬಳಸಿ ಸಂಕುಚಿತಗೊಳಿಸಬಹುದು ಅಥವಾ ಸಿಸ್ಟಮ್ಗೆ ಬೂಟ್ ಮಾಡಿದ ನಂತರ ನೇರವಾಗಿ tmpfs ನಲ್ಲಿ ಕೆಲಸ ಮಾಡಬಹುದು. ಉದಾಹರಣೆಗೆ, mkinitramfs `mktemp -d` --overlay "arch-chroot/" --overlay "/home" --squashfs-xz --output initrd ಆಜ್ಞೆಯು initrd ಫೈಲ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ, ಇದರಲ್ಲಿ "arch- ನೊಂದಿಗೆ ಎರಡು ಓವರ್ಲೇಗಳು ಸೇರಿವೆ. chroot/" ಸಿಸ್ಟಮ್ ಮತ್ತು ನಿಮ್ಮ "/ಹೋಮ್" ಅನ್ನು 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мб. busybox же, кроме своего размера, 3-5мб против 30-50мб полноценного GNU/Linux окружения, никаких преимуществ более не предлагает, таким образом использование busybox в проекте не видится целесообразным.
ಕಾರ್ಯವನ್ನು ತ್ವರಿತವಾಗಿ ಪರಿಶೀಲಿಸುವುದು ಮತ್ತು ಪ್ರಾರಂಭಿಸುವುದು ಹೇಗೆ? ಸ್ಥಾಪಿಸಿ ಮತ್ತು ಚಲಾಯಿಸಿ.
# git ಕ್ಲೋನ್ https://github.com/sp00f1ng/boobstrap.git
# ಸಿಡಿ ಬೂಬ್ಸ್ಟ್ರಾಪ್
# ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿ# ಬೂಬ್ಸ್ಟ್ರಾಪ್/ಪರೀಕ್ಷೆ/ಕ್ರಕ್ಸ್_ಗ್ನುಲಿನಕ್ಸ್-ಡೌನ್ಲೋಡ್-ಮತ್ತು-ಬಿಲ್ಡ್
ನೀವು ಅವಲಂಬನೆಗಳನ್ನು ಸಹ ಸ್ಥಾಪಿಸಬೇಕಾಗಿದೆ, ಅವುಗಳೆಂದರೆ: cpio, grub, grub-efi, dosfstools, xorriso. squashfs-ಉಪಕರಣಗಳನ್ನು ಬಳಸುವುದು ಅನಿವಾರ್ಯವಲ್ಲ; ನೀವು RAM ನ ಸೂಕ್ತ ಮೊತ್ತದೊಂದಿಗೆ tmpfs ನಲ್ಲಿ ಕೆಲಸ ಮಾಡಬಹುದು. ಸಿಸ್ಟಂನಲ್ಲಿ ಏನಾದರೂ ಕಾಣೆಯಾಗಿದ್ದರೆ, ಪ್ರಾರಂಭವಾದ ಮೇಲೆ ಬೂಬ್ಸ್ಟ್ರಾಪ್ ಇದನ್ನು ವರದಿ ಮಾಡುತ್ತದೆ.
ಕಾನ್ಫಿಗರೇಶನ್ಗಳ ರಚನೆಯನ್ನು ಸರಳಗೊಳಿಸಲು, ಬೂಬ್ಸ್ಟ್ರಾಪ್ "ಟೆಂಪ್ಲೇಟ್ಗಳು" ಮತ್ತು "ಸಿಸ್ಟಮ್ಗಳನ್ನು" ಬಳಸುವುದನ್ನು ಸೂಚಿಸುತ್ತದೆ, ಇದರ ಸಾರವೆಂದರೆ ಫೈಲ್ನಿಂದ ಸಿಸ್ಟಮ್ಗಳನ್ನು ತ್ವರಿತವಾಗಿ ಸ್ಥಾಪಿಸಲು "ಟೆಂಪ್ಲೇಟ್ಗಳು" (ಬೂಟ್ಸ್ಟ್ರ್ಯಾಪ್-ಟೆಂಪ್ಲೇಟ್ಗಳು /) ಮತ್ತು ನೇರವಾಗಿ "ಸಿಸ್ಟಮ್ಗಳು" (ಬೂಟ್ಸ್ಟ್ರಾಪ್- ಸಿಸ್ಟಮ್ಸ್/) ಅಂತಿಮ ಸಂರಚನೆಗಳನ್ನು ಹೊಂದಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ.
Так например, запуск скрипта boobstrap/bootstrap-templates/crux_gnulinux-embedded.bbuild установит минимальную конфигурацию системы CRUX GNU/Linux и сохранит её в файле crux_gnulinux-embedded.rootfs, далее вы запускаете boobstrap/bootstrap-systems/default/crux_gnulinux.bbuild который загрузит первичную конфигурацию из упомянутого файла, выполнит всю необходимую настройку и подготовит загрузочный ISO. Это удобно, когда например, множество систем используют однотипную конфигурацию: чтобы каждый раз не описывать одинаковый набор пакетов, вы используете один шаблон, на основе которого уже и создаёте загрузочные образы систем с конечной конфигурацией.
ಇದೆಲ್ಲವನ್ನೂ ನಾನು ಎಲ್ಲಿ ಬಳಸಬಹುದು?
ನೀವು ಒಮ್ಮೆ ಫೈಲ್ನಲ್ಲಿ ಸಿಸ್ಟಮ್ ಅನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ ಮತ್ತು ಅದನ್ನು ರನ್ ಮಾಡುವ ಮೂಲಕ ನೀವು ಅದನ್ನು ನಿರ್ಮಿಸುತ್ತೀರಿ ಮತ್ತು/ಅಥವಾ ನವೀಕರಿಸುತ್ತೀರಿ. ಸಿಸ್ಟಮ್ tmpfs ನಲ್ಲಿ ಚಲಿಸುತ್ತದೆ, ಇದು ಮೂಲಭೂತವಾಗಿ ಬಿಸಾಡುವಂತೆ ಮಾಡುತ್ತದೆ. ಸಿಸ್ಟಮ್ ವಿಫಲವಾದರೆ, ಮರುಹೊಂದಿಸಿ ಬಟನ್ನ ಒಂದು ಕ್ಲಿಕ್ನಲ್ಲಿ ನೀವು ಅದರ ಮೂಲ ಸ್ಥಿತಿಗೆ ಹಿಂತಿರುಗಬಹುದು. ನೀವು ಸುರಕ್ಷಿತವಾಗಿ rm -rf / ಅನ್ನು ಚಲಾಯಿಸಬಹುದು.
ನಿಮ್ಮ ಎಲ್ಲಾ ಸಿಸ್ಟಮ್ಗಳ ಕಾನ್ಫಿಗರೇಶನ್ಗಳನ್ನು ನೀವು ಸ್ಥಳೀಯವಾಗಿ ಕಾನ್ಫಿಗರ್ ಮಾಡಬಹುದು, ಚಿತ್ರಗಳನ್ನು ರಚಿಸಬಹುದು, ಅವುಗಳನ್ನು ವರ್ಚುವಲ್ ಯಂತ್ರ ಅಥವಾ ಪ್ರತ್ಯೇಕ ಹಾರ್ಡ್ವೇರ್ನಲ್ಲಿ ಪರೀಕ್ಷಿಸಿ, ನಂತರ ಅವುಗಳನ್ನು ರಿಮೋಟ್ ಸರ್ವರ್ಗೆ ಅಪ್ಲೋಡ್ ಮಾಡಿ ಮತ್ತು ಕೇವಲ ಎರಡು ಆಜ್ಞೆಗಳನ್ನು ಚಲಾಯಿಸಬಹುದು kexec -l /vmlinuz —initrd=/initrd && kexec -e ಸಂಪೂರ್ಣ ಸಿಸ್ಟಮ್ ಅನ್ನು ನವೀಕರಿಸಲು, ಅದನ್ನು tmpfs ಗೆ ರೀಬೂಟ್ ಮಾಡಿ.
ಅದೇ ರೀತಿಯಲ್ಲಿ, ನೀವು ಎಲ್ಲಾ ಸಿಸ್ಟಮ್ಗಳನ್ನು ವರ್ಗಾಯಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ VDS ನಲ್ಲಿ, tmpfs ನಲ್ಲಿ ಕೆಲಸ ಮಾಡಲು, ಮತ್ತು /dev/vda ಡಿಸ್ಕ್ ಅನ್ನು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಿ ಮತ್ತು ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಂ ಅನ್ನು ಅದರ ಮೇಲೆ ಇರಿಸುವ ಅಗತ್ಯವಿಲ್ಲದೆ ಅದನ್ನು ಡೇಟಾಕ್ಕಾಗಿ ಮಾತ್ರ ಬಳಸಬಹುದು. ಈ ಸಂದರ್ಭದಲ್ಲಿ "ಮಾಹಿತಿ ಸೋರಿಕೆಯ ಬಿಂದು" ಮಾತ್ರ ನಿಮ್ಮ ವರ್ಚುವಲ್ ಗಣಕದ ಮೆಮೊರಿಯ "ಕೋಲ್ಡ್ ಡಂಪ್" ಆಗಿರುತ್ತದೆ ಮತ್ತು ಸಿಸ್ಟಮ್ನ ರಾಜಿ ಸಂದರ್ಭದಲ್ಲಿ (ಉದಾಹರಣೆಗೆ, ssh ಪಾಸ್ವರ್ಡ್ ಅಥವಾ ದುರ್ಬಲತೆಯನ್ನು ಊಹಿಸುವ ಮೂಲಕ ಎಕ್ಸಿಮ್), ನಿಮ್ಮ ಪೂರೈಕೆದಾರರ "ನಿಯಂತ್ರಣ ಫಲಕ" ಮೂಲಕ ನೀವು ಹೊಸ ISO ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಬಹುದು, VDS ಅನ್ನು ಮತ್ತೆ ಕಾರ್ಯಾಚರಣೆಗೆ ತರಲು, ಎಲ್ಲಾ ದುರ್ಬಲತೆಗಳನ್ನು ಮುಚ್ಚಲು ಸಿಸ್ಟಮ್ ಕಾನ್ಫಿಗರೇಶನ್ ಅನ್ನು ಸಂಪಾದಿಸಲು ಮರೆಯದೆ. ಇದು ಮರುಸ್ಥಾಪನೆ, ನಂತರದ ಕಾನ್ಫಿಗರೇಶನ್ ಮತ್ತು/ಅಥವಾ ಬ್ಯಾಕ್ಅಪ್ನಿಂದ ಮರುಸ್ಥಾಪಿಸುವುದಕ್ಕಿಂತ ವೇಗವಾಗಿರುತ್ತದೆ, ಏಕೆಂದರೆ ಮೂಲಭೂತವಾಗಿ, ನಿಮ್ಮ ಸಿಸ್ಟಮ್ನೊಂದಿಗೆ ಡೌನ್ಲೋಡ್ ಮಾಡಬಹುದಾದ ISO ನಿಮ್ಮ ಬ್ಯಾಕಪ್ ಆಗಿದೆ. "ಏಳು ತೊಂದರೆಗಳು - ಒಂದು ಮರುಹೊಂದಿಸಿ."
ಕೊನೆಯಲ್ಲಿ, ನಿಮ್ಮ ಅಗತ್ಯಗಳಿಗಾಗಿ ನೀವು ಯಾವುದೇ ವಿತರಣೆಯನ್ನು ರಚಿಸಬಹುದು, ಅದನ್ನು USB ಡ್ರೈವ್ಗೆ ಬರೆಯಬಹುದು ಮತ್ತು ಅದರಲ್ಲಿ ಕೆಲಸ ಮಾಡಬಹುದು, ಅಗತ್ಯವಿರುವಂತೆ ಅದನ್ನು ನವೀಕರಿಸಿ ಮತ್ತು ಅದನ್ನು ಮತ್ತೆ USB ಡ್ರೈವ್ಗೆ ಪುನಃ ಬರೆಯಬಹುದು. ಎಲ್ಲಾ ಡೇಟಾವನ್ನು ಮೋಡಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗಿದೆ. ಸಿಸ್ಟಮ್ನ ಸುರಕ್ಷತೆಯ ಬಗ್ಗೆ ನೀವು ಇನ್ನು ಮುಂದೆ ಚಿಂತಿಸಬೇಕಾಗಿಲ್ಲ ಮತ್ತು ಸಿಸ್ಟಮ್, ನಾನು ಪುನರಾವರ್ತಿಸುತ್ತೇನೆ, ಮೂಲಭೂತವಾಗಿ "ಬಿಸಾಡಬಹುದಾದ" ಆಗಿರುವಾಗ ಬ್ಯಾಕ್ಅಪ್ ಮಾಡಿ.
ನಿಮ್ಮ ಶುಭಾಶಯಗಳು, ಸಲಹೆಗಳು ಮತ್ತು ಕಾಮೆಂಟ್ಗಳಿಗೆ ಸ್ವಾಗತ.
ಕೆಳಗಿನ ಲಿಂಕ್ನಲ್ಲಿರುವ ರೆಪೊಸಿಟರಿಯಲ್ಲಿ ಪ್ರತಿ ಉಪಯುಕ್ತತೆಯ ವಿವರಣೆ ಮತ್ತು ಬಳಕೆಯ ಉದಾಹರಣೆಗಳೊಂದಿಗೆ ವಿವರವಾದ README ಫೈಲ್ (ಇಂಗ್ಲಿಷ್ನಲ್ಲಿ) ಇದೆ, ರಷ್ಯನ್ ಭಾಷೆಯಲ್ಲಿ ವಿವರವಾದ ದಾಖಲಾತಿ ಮತ್ತು ಅಭಿವೃದ್ಧಿ ಇತಿಹಾಸವು ಲಿಂಕ್ನಲ್ಲಿ ಲಭ್ಯವಿದೆ: ಬೂಬ್ಸ್ಟ್ರಾಪ್ ಬೂಟ್ ಸ್ಕ್ರಿಪ್ಟ್ ಸಂಕೀರ್ಣ.
ಮೂಲ: linux.org.ru

