Grub
grub2, который появился в Ubuntu начиная с версии 10.04, можно заменить на старый grub (ныне известный как grub-legacy).
Для начала сделаем бэкап важных файлов. Для этого выполните:
sudo cp -R /boot/grub{,.bak}
Теперь удаляем пакеты "grub-pc" и "grub2" (последний может быть не установлен):
sudo apt-get purge grub-pc grub2
Заметьте: удаление пакетов не приведет к полной очистке папки "boot/grub". Теперь установим grub версии 0.97:
sudo apt-get install grub
После установки необходимо создать файл menu.lst и другие файлы загрузчика.
sudo mkdir /boot/grub && sudo update-grub
Эта команда создаст файл меню загрузки. На заданные ей вопросы отвечайте "y".
sudo grub-install /dev/sda
создаст остальные файлы загрузчика и запишет информацию в загрузочный раздел диска (MBR). Вместо "/dev/sda" в конце укажите тот жесткий диск, который используется в качестве загрузочного (установлен загрузочным в bios) Если установка прошла успешно - перезагружаемся и видим старый добрый grub с его menu.lst и без лишних хитростей
В GRUB можно скрыть некоторые пункты меню, которые будут видны только после ввода пароля. К примеру, можно скрыть recovery mode вашей операционной системы.
Для этого нужно сделать два конфигурационных файла. В первом файле будут находится «открытые» пункты меню, загружаемые сразу при старте GRUB, а во втором пункты меню, которые нужно показать только после ввода пароля — «скрытые».
1. Создаем резервную копию конфигурационного файла /boot/grub/menu.lst, чтобы в случае ЧП восстановить все в первоначальное положение:
sudo cp /boot/grub/menu.lst /boot/grub/menu.bak
2. Входим в командную строку GRUB:
grub
Создаем хеш-образ пароля:
md5crypt
Результат:
grub> md5crypt Password: ********** Encrypted: $1$GtD63/$3aUy5vj.INHE4J6UBk/u40
Строчка $1$GtD63/$3aUy5vj.INHE4J6UBk/u40 является хеш-образом введенного пароля.
Копируем ее и нажимаем Ctrl-С — выходим из командной строки GRUB.
3. Создаем второй конфигурационный файл, меню которого будет содержать скрытые пункты:
sudo cp /boot/grub/menu.lst /boot/grub/menu-hidden.lst
Для облегчения настройки второй файл создаем простым копированием первого с последующим редактированием обоих.
4. Редактируем первый конфигурационный файл:
sudo gedit /boot/grub/menu.lst
или в Xubuntu:
sudo mousepad /boot/grub/menu.lst
5. В начале файла, после строки с параметром timeout, добавляем строку, которая показывает системе, что после ввода пароля должен открыться другой файл — /boot/grub/menu-hidden.lst:
password --md5 $1$GtD63/$3aUy5vj.INHE4J6UBk/u40 /boot/grub/menu-hidden.lst
Результат должен быть такой:
## timeout sec # Set a timeout, in SEC seconds, before automatically booting the default entry # (normally the first entry defined). timeout 3 password --md5 $1$GtD63/$3aUy5vj.INHE4J6UBk/u40 /boot/grub/menu-hidden.lst
6. В конце файла добавляем или удаляем пункты меню GRUB, которые должны быть видны или не видны в начале загрузки (в первом меню).
К примеру, чтобы скрыть режим recovery mode, нужно закомментировать или удалить строки файла, содержащие команды загрузки этого режима:
title Ubuntu 9.04, kernel 2.6.28-11-generic uuid 3d11ea5-2b80-4a5e-ba09-cd6909425070 kernel /boot/vmlinuz-2.6.28-11-generic root=UUID=03d11ea5-2b80-4a5e-ba$ initrd /boot/initrd.img-2.6.28-11-generic quiet title Ubuntu 9.04, kernel 2.6.28-11-generic (recovery mode) uuid 03d11ea5-2b80-4a5e-ba09-cd6909425070 kernel /boot/vmlinuz-2.6.28-11-generic root=UUID=03d11ea5-2b80-4a5e-ba$ initrd /boot/initrd.img-2.6.28-11-generic title Windows rootnoverify (hd0,0) savedefault makeactive chainloader +1
7. Закрываем файл, сохраняя все изменения.
8. Открываем второй файл для редактирования:
sudo gedit /boot/grub/menu-hidden.lst
или в Xubuntu:
sudo mousepad /boot/grub/menu-hidden.lst
9. Добавляем или удаляем пункты меню GRUB, которые должны быть видны или не видны после ввода пароля во втором меню.
Если пункт будет только один (например, только Windows), в начале файла ставим timeout 0, чтобы загрузка происходила сразу после ввода пароля.
В конце файла комментируем или удаляем все пункты, кроме Windows:
title Windows rootnoverify (hd0,0) makeactive chainloader +1
Если Windows находится на втором жестком диске, то может потребоваться такая конструкция с мапами:
title Windows map (hd0) (hd1) map (hd1) (hd0) rootnoverify (hd1,0) makeactive chainloader (hd1,0)+1
10. Сохраняем внесенные изменения. После перезагрузки компьютера попадаем в меню, где представлены только выбранные пункты меню.
После набора пароля открывается второе меню со скрытыми пунктами. Чтобы ввести пароль, требуется нажать «p».
http://help.ubuntu.ru/wiki/восстановление_grub
Запустите систему с LiveCD.
Посмотрим таблицу разделов:
sudo fdisk -l
На экран выведется примерно такая таблица:
/dev/sda1 29 8369 66999082+ 83 Linux /dev/sda2 * 8370 13995 45190845 7 HPFS/NTFS /dev/sda3 13996 14593 4803435 5 Extended
Установим Grub на наш Linux раздел (здесь это /dev/sda1):
sudo grub-install --root-directory=/media/disk /dev/sda1
На этом восстановление закончено.
Сначала пройтись testdisk’ом
Затем
sudo fdisk -l
Если Linux на на sda3:
sudo mount /dev/sda3 /mnt sudo grub-install --root-directory=/mnt/ /dev/sda
Boot-Repair — графическая утилита, позволяющая исправить ошибки GRUB, появляющиеся после установки Windows или другого дистибутива Linux после Ubuntu.
Boot-Repair позволяет переустановить загрузчик GRUB за пару кликов, но есть еще несколько расширенных опций, если вы хотите уточнить, куда установить GRUB. Также это приложение позволяет восстановить оригинальный загрузочный сектор (MBR), если он был сохранен, используя утилиту Clean-Ubiquity (созданную разработчиками Boot-Repair) и выбрать ОС по умолчанию.
Вы можете использовать Boot-Repair из установленной системы, но так как он предназначен для восстановления GRUB, вам, скорее всего, придется использовать его из LiveCD, поэтому загрузитесь в Ubuntu LiveCD и установите Boot-Repair, используя команды ниже (да, вы можете поставить Boot-Repair на LiveCD!):
sudo add-apt-repository ppa:yannubuntu/boot-repair sudo apt-get update sudo apt-get install boot-repair
После установки, запустите его через Dash, или если вы используете классический GNOME, вы найдете программу в меню Система > Администрирование > Boot Repair.
Boot-Repair доступен для Ubuntu 11.04, 10.10 и 10.04, и он работает только с GRUB 2.
Узнаем UUID диска, который нужно спрятать:
sudo blkid
Добавить в файл:
sudo vim /etc/fstab
строку с UUID диска:
UUID=14A2410DA240F4B0 /mnt/h ntfs-3g noauto,ro,nodev,noexec,nosuid,uid=1000,gid=1000,fmask=133,dmask=022 0 0
sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt update; sudo apt install grub-customizer