Здравейте! Вероятно използвате блокиращ рекламите софтуер. В това няма нищо нередно, много хора го правят.

     Но за да помогнете този сайт да съществува и за да имате достъп до цялото съдържание, моля, изключете блокирането на рекламите.

  Ако не знаете как, кликнете тук

Създаване на жив диск на Linux Mint - ръчен метод  [РЕШЕНА]

feed Всичко свързано с Линукс. Новини, проблеми, въпроси.
Десктоп Линукс дистибуции, сървърни Линукс дистрибуции, Линукс дистрибуции с общо предназначение, Linux Mint, Ubuntu, Arch Linux, Mandriva, PCLinuxOS, openSUSE, Fedora, Red Hat Enterprise Linux, CentOS, Suse Linux Enterprise Server, Debian, Cross Linux from Scratch, Slackware, Gentoo. Графични среди, новини, игри, драйвъри, въпроси, десктоп, сървър, браузъри, помощ.
Потребителски аватар
cprog
Ветеран
Ветеран
Мнения: 1418
Регистриран: нед юли 19, 2015 08:19
Репутация: 12926
пол: Мъж

Създаване на жив диск на Linux Mint - ръчен метод  [РЕШЕНА]

Мнение от cprog »

Привет,

Тази тема я създавам, за да си питам някои въпроси и неща около създаването на жив къстамизиран образ на Linux Mint и ако накрая ми се получи да го документирам.

Тук ползвам ръчния метод описан тук - https://forums.linuxmint.com/viewtopic. ... 2&t=107350
За основа ползвам исото на @бат-начо - https://drive.google.com/drive/folders/ ... WTJfjSYg29

Засега не искам да ползвам програма като https://github.com/PJ-Singh-001/Cubic защото тя изисква да я пуснеш под Ubuntu или дериват пък аз искам директно под Арч. Макар че, ако много зацикля с ръчния метод ще й дам шанс. :) :) :)

Напрактика единственият ми проблем е със създаването на bootable iso .
По принцип аз го създавам така:

Код: Избери всички

sudo mkisofs -r -V “$LinuxMintCprogEdition” -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../cprog.iso extract-cd

Код: Избери всички

isohybrid  ../cprog.iso
Така създаденото исо буутва нормално под VirtualBox, имам новите програми, всичко на 6.
Но на реалната машина въобще не виждам флашката, като запиша исото, за да буутна от нея.

Вярно е, че тук https://mvallim.github.io/live-custom-u ... m-scratch/ са описани различни начини да направиш буутващо исо, но дадените команди там не пасват на структурата на исото при @бат-начо - например нямаме в структурата EFI/boot/efiboot.img

Затова въпросът ми към @бат-начо да сподели, ако може, как си прави самото буут исо, защото май аз попускам нещо.
Прочетено: 2017 пъти
CPU~Dual core AMD Athlon 64 X2 5200+ (-MCP-) speed~2700 MHz (max) Kernel~4.15.0-33-generic x86_64 Up~1 day Mem~4869.6/7976.7MB HDD~2400.5GB(45.8% used) Procs~313 Client~Shell inxi~2.3.56
Потребителски аватар
petie
Пристрастéн
Пристрастéн
Мнения: 955
Регистриран: съб май 18, 2019 22:35
Репутация: 2709
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от petie »

М най добре е да почнеш от нулата а колкото до командите те се нагласят спрямо ситуацията а и зависи от настройкитш в биоса на реалната машина
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11072
Регистриран: нед мар 03, 2019 20:29
Репутация: 40021
пол: Мъж
Местоположение: /home/$USER
Контакти:

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от Валсо »

cprog написа:
пон дек 25, 2023 05:43
Но на реалната машина въобще не виждам флашката, като запиша исото, за да буутна от нея.
Използвай Ventoy.
Потребителски аватар
бат-начо
Доктор
Доктор
Мнения: 4562
Регистриран: ср фев 21, 2018 15:17
Репутация: 34132
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от бат-начо »

https://github.com/unixabg/remaster-iso ... er-compose

Виж как е зададено да го прави програмата и го промени да ти удиса.

Код: Избери всички

xorriso -as mkisofs -r -D -V "${_ISOTargetTitle} ${_VER}" -cache-inodes -J -l -iso-level 3 -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin -c isolinux/boot.cat -b isolinux/isolinux.bin  -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot -isohybrid-gpt-basdat  -o "${_BASEDIR}/${_BUILDDATE}-${_ISOTargetName}.iso" .
А в исото на оригинала командата която казват, че са използвали (.disk/mkisofs) е

Код: Избери всички

xorriso -as mkisofs -R -r -J -joliet-long -l -cache-inodes -iso-level 3 -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin -partition_offset 16 -A "LMDE Live" -p "live-build 20230502; https://salsa.debian.org/live-team/live-build" -publisher "Linux Mint" -V "LMDE 6 Cinnamon 64-bit" --modification-date=2023092216260600 -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot -isohybrid-gpt-basdat -isohybrid-apm-hfsplus -o live-image-amd64.hybrid.iso binary
Селски, Начо Селски.
Потребителски аватар
бат-начо
Доктор
Доктор
Мнения: 4562
Регистриран: ср фев 21, 2018 15:17
Репутация: 34132
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от бат-начо »

Сега погледнах - използваш метод от 2012, който е даден на Минт форума. А ти трябва метод "на един път".
Това е доста добро - https://www.willhaley.com/blog/custom-d ... vironment/

На Дебиан filesystem.squashfs е във live, в Убунту - в casper. Ментата са го решили по същия начин, по който и аз го правя, ако използвам remaster-iso - със символна връзка.

И още https://wiki.debian.org/RepackBootableISO

И още - (по принцип тука трябва да е "по стандарт"), но виж пътя и имената за EFI дали са правилни с командите, и въобще - пътя и имената на файловете дали отговарят. При разни строители има нюанси.
Селски, Начо Селски.
Потребителски аватар
Mozo
Skynet Cyber Unit
Skynet Cyber Unit
Мнения: 284003
Регистриран: пет юни 01, 2007 14:18
Репутация: 334807
Местоположение: Somewhere In Time

Re: Създаване на жив диск на Linux Mint -ръчен метод

Мнение от Mozo »

Пробвай това:
https://penguins-eggs.net/
Изображение
Потребителски аватар
бат-начо
Доктор
Доктор
Мнения: 4562
Регистриран: ср фев 21, 2018 15:17
Репутация: 34132
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от бат-начо »

Mozo написа:
пон дек 25, 2023 11:47
Пробвай това:
https://penguins-eggs.net/
Аз пък бягам от такова надалеч.
Селски, Начо Селски.
Потребителски аватар
бат-начо
Доктор
Доктор
Мнения: 4562
Регистриран: ср фев 21, 2018 15:17
Репутация: 34132
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от бат-начо »

@cprog използвай папката /tmp в chroot-a "като врата" и не забравяй да я изчистиш после (папката).
Последна промяна от бат-начо на пон дек 25, 2023 14:40, променено общо 1 път.
Селски, Начо Селски.
Потребителски аватар
бат-начо
Доктор
Доктор
Мнения: 4562
Регистриран: ср фев 21, 2018 15:17
Репутация: 34132
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от бат-начо »

Преди да събереш исото провери правата на filesystem.squashfs (444), защото ако са леко различни се получават странни резултати след инсталирането - има файлове които си ги инсталират докато си пробвал live-a.

П.П. Възможно е да не е било на Ментата. Възможно е да е било от заигравката ми с Хромиум - дори и да не го искаш, тоя пакет се инсталира, но като snap и не е видим, ако е нещо Убунту-базирано, ако избереш отметката за кодеци и бла-бла. А като изпробваш какво става като live, добавиш хранилище, примерно, смениш приоритетите на източниците и в един момент речеш да го инсталираш и на инсталираното "изгрее" Хромиум... Възможно е сега да не е така...

П.П.2 Сега ми хрумна - ще проиграя какво се случва ако на живо се инсталира Хромиум от снап и после сложа отметка при инсталиране с нещипано оригинално Ксубунту (такова имам). :toothy10:
Селски, Начо Селски.
Потребителски аватар
cprog
Ветеран
Ветеран
Мнения: 1418
Регистриран: нед юли 19, 2015 08:19
Репутация: 12926
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от cprog »

Инструкции под Arch


Теглим исо-то, което ще модваме .

В случая ще ползваме LMDE-6-Rescue-amd64

1. Инсталираме някои зависимости:

Код: Избери всички

sudo pacman -S squashfs-tools xorriso syslinux mtools dosfstools
2. Създаваме работна папка

Код: Избери всички

mkdir ~/livecdtmp
3. Отиваме в нея

Код: Избери всички

cd ~/livecdtmp 
4. Създаваме папки extract-cd и mnt

Код: Избери всички

mkdir extract-cd mnt
5. Монтираме исо-то (в случая съм го изтеглил в Downloads):

Код: Избери всички

sudo mount -o loop ~/Downloads/LMDE-6-Rescue-amd64.iso  mnt
6. Местим съдържанието на исото в extract-cd (без /casper/filesystem.squashfs)

Код: Избери всички

sudo rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract-cd
7. Разопаковаме squashfs и местим в папка edit

Код: Избери всички

sudo unsquashfs mnt/casper/filesystem.squashfs
sudo mv squashfs-root edit
8. За да пуснем интернет-а на chroot средата, копираме resolv.conf и монтираме /dev


Всеки ред от този файл е DNS IP адрес. Например там може да сложите Google DNS-a 8.8.8.8

Код: Избери всички

sudo cp /etc/resolv.conf edit/etc/
sudo mount --bind /dev/ edit/dev
sudo mount --bind /run/ edit/run
9. Chroot-ваме към edit

Код: Избери всички

sudo chroot edit
10. Монтираме някои важни точки и експотваме променливи:

Код: Избери всички

mount -t proc none /proc && mount -t sysfs none /sys && mount -t devpts none /dev/pts

export HOME=/root && export LC_ALL=C
10.1

Код: Избери всички

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
10.2

Код: Избери всички

cd
ls -la
С първата команда отиваме в chroot домашната папка.
С втората проверяваме какво има в нея и запомняме какво има. Ако има файлове/папки там създадени от нашата работа - ги изтриваме когато приключим.

11. Обновяваме apt индекса

Код: Избери всички

apt-get update
12. Сега e моментът да правим всякакви къстамизации. В случая само ще инсталирам arch-install-scripts.
Този пакет ще инсталира arch-chroot, който е полезен, когато искаме от жива среда да chroot-нем към Arch, за по-лесно:

Код: Избери всички

apt install arch-install-scripts
13. Когато сме готови по предната точка, почистваме, създаваме празен /etc/resolv.conf и излизаме от средата и демонтираме:
Редът е важен на комндите . Всеки ред е отделна команда.

Код: Избери всички

apt-get clean
truncate -s 0 /etc/machine-id
rm /sbin/initctl
dpkg-divert --rename --remove /sbin/initctl
cd
ls -la
rm -vr .local
echo "" > /etc/resolv.conf
ls -la /tmp/
rm -rf /tmp/* /tmp/.* ~/.bash_history
umount /proc
umount /sys
umount /dev/pts
exit
sudo umount edit/dev
sudo umount edit/run
sudo umount mnt

14.Опаковаме имиджа

Код: Избери всички

sudo mksquashfs edit extract-cd/casper/filesystem.squashfs
15.Обновяваме файлът за размера, като временно му променяме правата, за да можем да го презапишем:

Код: Избери всички

sudo chmod 666 extract-cd/casper/filesystem.size
sudo printf $(sudo du -sx --block-size=1 edit | cut -f1) > extract-cd/casper/filesystem.size
chmod 444 extract-cd/casper/filesystem.size

16.Генерираме нова md5 сума на файловете:

Код: Избери всички

cd extract-cd
sudo rm md5sum.txt
find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/boot.cat | sudo tee md5sum.txt
17. Създаваме FAT16 UEFI boot disk image - efiboot.img
Този efiboot.img съдържа в себе си следното:
bootia32.efi
bootx64.efi
grubx64.efi
grub.cfg
В случая горните файлопве ги има в имиджа
Но ако при вас ги няма, ще трябва да прочетете как да ги създадете .
Аз ги ползвам наготово.
За справка вижте приложените линкове с литература

Kомандата(не ме пуска да я копирам тук директно гърми, затова с pastebin):



18. Накрая стигаме да билднем крайния исо файл





Полученото исо - linuxMintCprog.iso можем вече да го изпечедм на флашка с balena-etcher

Полезни линкове:

https://github.com/syzdek/efibootiso

https://www.willhaley.com/blog/custom-d ... vironment/

https://wiki.debian.org/RepackBootableISO

https://forums.linuxmint.com/viewtopic. ... 2&t=107350
Последна промяна от cprog на пон яну 01, 2024 13:28, променено общо 2 пъти.
CPU~Dual core AMD Athlon 64 X2 5200+ (-MCP-) speed~2700 MHz (max) Kernel~4.15.0-33-generic x86_64 Up~1 day Mem~4869.6/7976.7MB HDD~2400.5GB(45.8% used) Procs~313 Client~Shell inxi~2.3.56
Потребителски аватар
cprog
Ветеран
Ветеран
Мнения: 1418
Регистриран: нед юли 19, 2015 08:19
Репутация: 12926
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от cprog »

17. Създаваме FAT16 UEFI boot disk image - efiboot.img
Този efiboot.img съдържа в себе си следното:
bootia32.efi
bootx64.efi
grubx64.efi
grub.cfg
В случая горните файлопве ги има в имиджа
Но ако при вас ги няма, ще трябва да прочетете как да ги създадете .
Аз ги ползвам наготово.
За справка вижте приложените линкове с литература

Kомандата(не ме пуска да я копирам тук директно гърми, затова с pastebin):



18. Накрая стигаме да билднем крайния исо файл





Полученото исо - linuxMintCprog.iso можем вече да го изпечедм на флашка с balena-etcher

Полезни линкове:

https://github.com/syzdek/efibootiso

https://www.willhaley.com/blog/custom-d ... vironment/

https://wiki.debian.org/RepackBootableISO

https://forums.linuxmint.com/viewtopic. ... 2&t=107350
CPU~Dual core AMD Athlon 64 X2 5200+ (-MCP-) speed~2700 MHz (max) Kernel~4.15.0-33-generic x86_64 Up~1 day Mem~4869.6/7976.7MB HDD~2400.5GB(45.8% used) Procs~313 Client~Shell inxi~2.3.56
Потребителски аватар
Mozo
Skynet Cyber Unit
Skynet Cyber Unit
Мнения: 284003
Регистриран: пет юни 01, 2007 14:18
Репутация: 334807
Местоположение: Somewhere In Time

Re: Създаване на жив диск на Linux Mint -ръчен метод

Мнение от Mozo »

Евала за труда :headbang: :headbang: :headbang:

Но е сложна и дълга история, предпочитам с някоя програма с два-три клика :)
Изображение
Потребителски аватар
бат-начо
Доктор
Доктор
Мнения: 4562
Регистриран: ср фев 21, 2018 15:17
Репутация: 34132
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от бат-начо »

От последния линк в другата тема (от където тръгнахме https://mvallim.github.io/live-custom-u ... m-scratch/) - монтираш /dev, но май /run го няма?
Става и така, но зависи какво инсталираш, в един момент ще излизат грешки, аз ги решавах със задържане на проблемните пакети, докато не изполвах рънърса ;) .
Селски, Начо Селски.
Потребителски аватар
cprog
Ветеран
Ветеран
Мнения: 1418
Регистриран: нед юли 19, 2015 08:19
Репутация: 12926
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от cprog »

бат-начо написа:
вт дек 26, 2023 19:32
От последния линк в другата тема (от където тръгнахме https://mvallim.github.io/live-custom-u ... m-scratch/) - монтираш /dev, но май /run го няма?
Става и така, но зависи какво инсталираш, в един момент ще излизат грешки, аз ги решавах със задържане на проблемните пакети, докато не изполвах рънърса ;) .
A ако трябва колко му е да монтираме и run :)
Помниш ли някой проблемен пакет за пример, при кой може да стане.
CPU~Dual core AMD Athlon 64 X2 5200+ (-MCP-) speed~2700 MHz (max) Kernel~4.15.0-33-generic x86_64 Up~1 day Mem~4869.6/7976.7MB HDD~2400.5GB(45.8% used) Procs~313 Client~Shell inxi~2.3.56
Потребителски аватар
бат-начо
Доктор
Доктор
Мнения: 4562
Регистриран: ср фев 21, 2018 15:17
Репутация: 34132
пол: Мъж

Re: Създаване на жив диск на Linux Mint - ръчен метод

Мнение от бат-начо »

Някой от синия зъб, не помня точно кой. И още поне два ако извършваш dist-upgrade. Но тогава трябва да вземеш от /boot chrota-a задължително и да ги смениш в новото исо. Дори и "малка промяна" в initramfs ако не го направиш няма да е отразена.
Селски, Начо Селски.
Нова тема Отговори

  • Подобни теми
    Отговори
    Преглеждания
    Последно мнение

Върни се в “Линукс - инсталация, настройки, проблеми”