Планета Calculate

Облако тэгов

звуковые карты wi-fi udev news полезное работа mail swap abi_x86_32 KDE5 xsel серые листы winbind tracker ДНК cld cp1251 live-flash valve syslog QupZilla kvm cairo-dock автологин настройка цветов принтера freerdp mpg123 форматирование текста профиль пользователя bonding book dwm NetworkManager apvlv CLDG qemu rtorrent uptime rutorrent ati autologin ccze asus n10j press радио mailman BINHOST builder persistence icons bash CSS клавиатура kde5 cldg strategy benchmark zstd matrix форум lm_sensors screenshot alpha пресса feh tun slim maillist lighttpd шаблоны домашний сервер Gnome3 hdmi CSC remoteapp zswap networking flashplayer atom n270 Книги foto тема pam power KDE dhcpcd android textile bond Tor elogv многопоточная закачка asus x86 revision tint browser ati-drivers asterisk lirc vaio games desktop ups ускорение Xorg windows MultiTail instagram BugTracker cpu family mplayer реестр PowerTOP su ПО RT mencoder package unmasking установка net cl-builder vulnerability blog tint2 программист LXC qrencode сайт утилитки на Icon EFI plymouth ControlMaster calculate-access помощь день рождение LXD vps рассылка man LTE фидонет pre qupzilla db Calculate E17 wiki umd persistence-mode IRC mirrorselect aufs xfce оптимизация AMD bootchart cryptsetup pxe birthday obmenu доступ rdp LXQt emerge radeon pf-kernel udisks ntfs-3g xen grub openbox midori кодировка CP1251 настройка цветов сканера beta keyboard systemd-udevd Calculate package sound gcc handbook ini.env grc MATE kernel pwkl cds xpak командная строка firefox mate make.conf XZ kernek win7 acl jabber recordmydesktop windows 7 firmware tweaks autounmask ext4 minicom двойная загрузка nextcloud Matrix #calculatelinux linux tbn bug xmpp виртуализация benchmarking raid Firefox hibernate calculate2 w2k3 маршрутизатор gnome vpn support calculate-install-gui calculate utilities glx-dock CLC 4G calculate utils otter features profile Windows 7 Huawei new tools CDS dns dhcp настройка цветов фотоаппарата Calculate Linux Enlightenment сглаживание udisks-glue reader цветовой профиль icc фидо перенесено костыли распространение pdf cmc dropbox kde xfce pastebin twitter ssh шрифт authentication cls канал wget uksm LVM world мышка день программиста Midnight Commander lxc-desktop sudo kde nano calculate-sources templates temperature pitivi calculate 2.2 portage CMC xchat ПДУ howto muqss theme звук dvcs meta djvu cl-update-profile X linuxdcpp 1C postgresql apache fontconfig lcdfilter fonts шрифты DPI atheros9285 ratigan монитор экран разрешение CLDXE sony smplayer описание tuxonice flags optimization fonts bluetooth uefi openvpn VirtualBox nm-applet weechat 11.6 backdor qr-code alsa torrent tail forum интервью Audio utilities donation сеты monitoring распространение программ systemd Office security загрузчик dhcp binhost Скоростной алгоритм сжатия LZ4 TV GSC canto браузер CL14 xxkb участие USE samba screensaver MyRuLib lto distro xbmc keyexec python3 Снобизм stage luks pae UTF-8 оптимизация linux lautre дизайн energy saving plan репозиторий Summer Camp 3G курсор мыши dnscrypt install Calculate Utilities Библиотека shorewall gnome3 GPT steam производительность gentoo vlc p2p mp3 Plasma plugn ldap screencast icon w2k8 mc lvm Compose установка Icon в Calculate nexus repo git team CLDC Atheros XFCE cldm сборка из исходников openssh pulseaudio pgo помощь проекту CLDM liveusb ppp0 tap mouse vim перемещаемые профили cl-kernel iptables mirror android kde mtp livecd Gnome cpp livedvd установка linux e4rat calculate3 начало XMPP update caffeine binary code dns calculate linux antivirus free documentation calculate-install dmidecode kde и многопоточный звук codelite euse CLSK rip grub2 интернет unclutter freshplayerplugin hdd most openrc container release Либрусек acoola новости SSD bsa font iphone dconf btrfs E17 nut настройка цветов монитора план RSS безопасность ebuild ядро gnome 2 github ncurses markdown почта удаленная сеть qutim разработка xorg packages openldap udisks template calculate postfix ffmpeg ubuntu clementine глобальное меню загрузка CL17 CLSL EAPI 2 CLS обмен опытом E17 Calculate bridge telegram chromium OpenRC Timeless overlay libvirt создание подсветки синтаксиса bittorrent АТС nouveau network calculate-utils server developers вакансия ParaType facebook locale Desktop eudev DNA CCDX irc оптимизация ядра CDS настройка linux atheros calculate linux obconf automagic reestr pptp MidnightCommander cl-console-bg cl CLDX linux CLDL internet history objecticon видео blueman firewall layout Zen softraid CLD подсветка синтаксиса video python dmix debian localepurge google talk-plugin smart блог bash-completion кеширование proxy Icon Calculate USB Creator Calculate Linux Spamassassin брелок programming сервер Cinnamon unicode

Загрузка чистой системы(livecd), без использования CD или флешек

Добавил(а) Михаил Гагауз около 7 лет назад

Порой бывает так - что после обновления система ведет себя неадекватно.
И так сразу не скажешь - это связано с недоделанным обновлением, или что-то в системе поломали(лось).
Также иногда хочется потыкать другой дистр, но только потыкать. Без установки его на соседний раздел, как мало это не занимало бы времени, и насколько ни к чему не обязывающей процедурой это небыло бы. Яркий пример - при переходе с gnome2 на gnome3 хочется попробовать cldx или CLsD .

В общем - я сейчас хочу рассказать о livecd или live-flash но не livecd и не live-flash ;-)
Дело в том, что gentoo linuxrc загрузчик из initrd (это такой скрипт, который разбирает большинство параметров передаваемых ядру при загрузке, и исходя из них выполняет необходимые действия) умеет монтировать iso-образ как cd-диск при помощи параметра isoboot.

С другой стороны - grub2 обладает очень приятной особенностью - он умеет подключать файлы-образы известных ему файловых систем(в т.ч. и iso9660) как loopback-устройства, и брать с них нужные файлы (в нашем случае vmlinux и initrd)

Итак, не буду больше размусоливать и перейду к описанию действий:
Для начала определимся ОТКУДА и КАКОЙ iso-образ мы собираемся грузить.
Допустим - вы сделали все по документации, и скачали образ в /var/calculate/linux
Таким образом предположим, что полное имя файла образа у вас /var/calculate/linux/cldx-11.15-i686.iso
теперь узнаем на какой партиции у вас этот образ лежит
Если при установке вы все делали по документации - то у вас получится нечто вроде

df -h /var/calculate/linux/cldx-11.15-i686.iso

Файловая система Размер Использовано Дост Использовано% Cмонтировано в
/dev/sda5 XXXG YYYG ZZZG NN% /var/calculate

Я же использовал lvm, и поэтому у меня получилось слегка подругому


df -h /var/calculate/linux/cldx-11.15-i686.iso

Файловая система Размер Использовано Дост Использовано% Cмонтировано в
/dev/mapper/VgName-var_calculate XXXG YYYG ZZZG NN% /var/calculate

Если же вы не выделяли отдельную партицию под /var/calculate, то результатом для вас будет нечто вроде
/dev/sda2 XXXG YYYG ZZZG NN% /

В любом случае - запоминаем значения "Файловая система" и "Cмонтировано в"
и создаем в корне этой партиции "маркер" livecd
echo calculate >/var/calculate/livecd

Теперь открываем из под root-а конфиг grub-а
nano -Ysh /boot/grub/grub.cfg
Находим строку
### END /etc/grub.d/10_linux ###

и вписываем после этой строки следующее

 1 set calculate_iso="<полное имя файла, без точки монтирования>" 
 2 ## для классического случая, когда /var/calculate в /dev/sda5
 3 ## либо моего случая с /var/calculate в LogicalVoluve
 4 ## и при полном имени файла /var/calculate/linux/cldx-11.15-i686.iso
 5 ## получим:
 6 # set calculate_iso="/linux/cldx-11.15-i686.iso" 
 7 ## Если /var/calculate не находится в отдельной партиции
 8 ## то получаем
 9 # set calculate_iso="/var/calculate/linux/cldx-11.15-i686.iso" 
10 
11 ## задаем партицию на которой находится образ
12 ## тут проще привести пример
13 ## /dev/sda5
14 # set iso_dev="(hd0,msdos5)" 
15 ## /dev/mapper/VgName-var_calculate
16 # set iso_dev="(VgName-var_calculate)" 
17 
18 ## укажем тип fs на которой лежит образ, узнать можно
19 ## grep /var/calculate /proc/mounts
20 ## у меня это
21 # set dev_fs="ext4" 
22 
23 ## Все, теперь создаем пункт меню
24 menuentry "boot ${calculate_iso} as LiveCD" --class calculate --class gnu-linux --class gnu --class os {
25   echo "Set parameters" 
26   set calculate="lang:ru_RU" 
27   set calculate="${calculate},keymap:ru_RU" 
28   set calculate="${calculate},timezone:Europe/Chisinau" 
29   ## тут задайте свое ---------------^^^
30   set calculate="${calculate},video=auto" 
31   set calculate="${calculate},composite=off" 
32   ## два предыдущих параметра также укажите свои
33   set calculate="calculate=${calculate}" 
34 
35   set kernel_scratch="scratch" 
36   set kernel_docache="docache" 
37   ## оба предыдущих параметра по желанию
38   set md_dm_dev="domdadm dolvm" 
39   ## это --------^^ и это -^^ задать при необходимости
40   echo "Set loopback device ${calculate_iso}" 
41   loopback loop "${iso_dev}/${calculate_iso}" 
42   echo 'Load kernel...'
43   linux (loop)/boot/vmlinuz "isoboot=${calculate_iso}" root=/dev/ram0 init=/linuxrc looptype=squashfs unionfs doload=squashfs,unionfs,isofs,${dev_fs} loop=/livecd.squashfs nodevfs cdroot video=uvesafb:ywrap,1024x768-32@60,mtrr:3,splash=silent,theme:tty1 console=tty1 udev noresume doscsi scandelay=3,panic=15 ${md_dm_dev} ${kernel_scratch} ${kernel_docache} ${calculate}
44   echo 'Load initrd...'
45   initrd (loop)/boot/initrd 
46   echo 'boot...'
47 }

Все, можете перезагружать компьютер.
Последним пунктом в меню груба будет загрузка вашего образа

PS

Я специально предложил редактировать grub.cfg, поскольку ОСТАВЛЯТЬ ЭТОТ ПУНКТ МЕНЮ GRUB-а ОЧЕНЬ НЕБЕЗОПАСНО с liveCD очень легко получить root-а и делать с системой и данными все что угодно. А этот файл каждый раз при обновлении ядра пресоздается. И следовательно, этот пункт меню будет жить до ближайшего апдейта.

UPD
PPS
Если очень хочется сохранить этот пункт даже после обновления ядра несмотря на небезопасность (кстати, тут опыты с паролем на grub2 очень в тему), прописать это все можно в файл /boot/grub/custom.cfg (почему - думаю тем кто смотрел /boot/grub/grub.cfg объяснять не надо)


Комментарии

Comment

Добавил(а) Родион Дорошкевич около 7 лет назад

http://lugnsk.org/lugnskru/2010/12/stavim-parol-na-zagruzku-windows-xp-v-grub2.html
Вариант с установкой пароля на загрузку определенного пункта в меню груб2.

Comment

Добавил(а) Михаил Гагауз около 7 лет назад

Классно, давно пора в кальке в шаблонах добавить возможность установить пароль на загрузку, особенно при вводе в домен, хеш пароля можно и из /var/calculate/calculate.env брать, вдряд ли он кому что даст.
Кстати, при использовании grub2 в pxe (я чуть раньше начинал об этом) тоже будет в тему.
Да и по этой теме тоже подойдет.

Comment

Добавил(а) Anton Novikov около 7 лет назад

Предлагаю удобнее вариант:
запускать через виртуальную машину (KVM/VirtualBox/VMware), без перезагрузки стабильно работающей рабочей станции ;-)
Инструкция: 1. вставить виртуальный iso file, 2. запустить виртуальную машину.

Comment

Добавил(а) Михаил Гагауз около 7 лет назад

Порой бывает так - что после обновления система ведет себя неадекватно. И так сразу не скажешь - это связано с недоделанным обновлением, или что-то в системе поломали(лось)...

Предлагаю удобнее вариант:
запускать через виртуальную машину (KVM/VirtualBox/VMware), без перезагрузки стабильно работающей рабочей станции ;-)

Вот и запустите в виртуалке iso-шку на машине на которой, к примеру, после неудачного обновления Х-ы не стартуют.
И потом из нее сделайте chroot в основную систему дабы разобраться чего и где не хватает.

А еще b если рама - 512-1G

Comment

Добавил(а) Anton Novikov около 7 лет назад

@Михаил у Вас мама-папа был?.. Че наезжаем-то сразу и без повода??

Я, похоже, неправильно понял. Вы пытались запустить ISO на поломанной машине, без X-ов (т.е. "ведет себя неадекватно" ??), с минимальной конфигурацией, стоя в гамаке? Тогда - да, мой метод не подойдет. Извиняюсь.

Comment

Добавил(а) Михаил Гагауз около 7 лет назад

@Михаил у Вас мама-папа был?.. Че наезжаем-то сразу и без повода??

Нет меня звери в лесу воспитали. И представляете Антон, какой глупости они научили - сначала читать пост на который отвечаешь.

Вы пытались запустить ISO на поломанной машине, без X-ов (т.е. "ведет себя неадекватно" ??), с минимальной конфигурацией, стоя в гамаке?

Да, вы видимо как постоялец на этом форуме тоже сталкивались с постами где стояла задача запуска LiveCD без CD/usb-flash. Вот хотябы тут . Вот решил расписать подробнее что к чему.

Я, похоже, неправильно понял.

Попытка извинения принимается.

Comment

Добавил(а) Anton Novikov около 7 лет назад

Михаил Гагауз писал(а):

Попытка извинения принимается.

Это было язвическое замечание, а не извинение. Я не кашпировский, и переводить "неадекватно" в "не стартуют X-ы" не умею. И совсем не понимаю хамства с одной стороны и желание "расписать подробнее" с другой. Тяжело относиться к людям как обществу друзей которые заняты одним делом? Не лезьте в open source.

Comment

Добавил(а) Михаил Гагауз около 7 лет назад

Это было язвическое замечание, а не извинение.

Ах какой же я недогадливый... ну извините, я не Кашпировский.

Тяжело относиться к людям как обществу друзей которые заняты одним делом? Не лезьте в open source

Простите, а каков ваш вклад в open source? Ну кроме этих дельных замечаний по этой, видимо никчемной теме.

Спасибо!