Автор Гілка: Як установити Debian з USB флешки  (Прочитано 3727 раз)

Відсутній mzenyk

  • Новачок
  • *
  • дописів: 7
  • Карма: +0/-0
Виникла потреба встановлювати/відновлювати debian з флешки. Компютерів у господарстві багато а CD приводи не всюди є (бо і не треба). Проаналізувавши стандартний спосіб (див. джерело 1) вперся в обмеження vfat на розмір файлу 4Gb, образ DVD не поміщається. Тому вирішив застосувати комбінований спосіб: 2 розділи на флешці vfat і ext2. Використав 8Gb флешку, куди помістилася власне інсталяція Debian, LibreOffice і купа cпеціалізованих програм і примочок для роботи аптеки/касових апаратів/штрихкодових сканерів/... словом все, що треба, для розгортання робочих місць.

Ну і ось власне сам спосіб приготування флешки:


Припустимо, що флека розпізналяся ядром, як /dev/sdb. В іншому випадку приведені комади підкоректувати, щоб вказували правильний пристрій.

1. Розбиваємо диск на розділи з допомогою fdisk на /dev/sdb1=50M /dev/sdb2=решта.

2. Робимо файлову систему /dev/sdb1 і загрузчик

   mkdosfs -I /dev/sda
   syslinux /dev/sda

3. Монтуємо перший розділ

   mount /dev/sdb1 /mnt

4. Качаємо інсталятор boot.img.gz.

5. Розпаковуємо і монтуємо образ

   gunzip boot.img.gz
   mkdir tempboot
   mount -o loop -t vfat ./boot.img tempboot

6. Копіюємо загрузчик на флешку

   cp -n tempboot/* /mnt

7. Ставимо grub

   grub-install --root-directory=/mnt /dev/sdb

8. Робимо /mnt/boot/grub/grub.cfg з наступним вмістом, де 6F21-DC35 замінити реальним UUID можна взнати "ls -l /dev/disk/by-uuid/ |grep sdb1"

 if [ -s $prefix/grubenv ]; then
  load_env
 fi
 set default="0"
 if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
 fi
 
 function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
 }
 
 function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
 }
 
 insmod part_msdos
 insmod ext2
 set root='(hd0,msdos1)'
 search --no-floppy --fs-uuid --set 6F21-DC35
 if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
 fi
 terminal_output gfxterm
 insmod part_msdos
 insmod ext2
 set root='(hd0,msdos1)'
 search --no-floppy --fs-uuid --set 6F21-DC35
 set locale_dir=($root)/boot/grub/locale
 set lang=uk
 insmod gettext
 
 set timeout=2
 
 insmod part_msdos
 insmod ext2
 set root='(hd0,msdos1)'
 search --no-floppy --fs-uuid --set 6F21-DC35
 insmod png
 if background_image /usr/share/images/desktop-base/spacefun-grub.png; then
  set color_normal=light-gray/black
  set color_highlight=white/black
 else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
 fi
 
 menuentry 'Debian installer' {
            set root=(hd0,1)
            chainloader +1
            }
 
 if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
 fi

9. Заміняємо вміст /mnt/adtxt.cfg на наступне, щоб одержати додаткові способи інсталяції в "Expert install";

 label expert
       menu label ^Expert install - gnome
       kernel linux
       append priority=low vga=788 initrd=initrd.gz --
 label auto
       menu label ^Automated install - gnome
       kernel linux
       append auto=true priority=critical vga=788 initrd=initrd.gz -- quiet
 label expert-kde
       menu label ^Expert install - kde
       kernel linux
       append desktop=kde priority=low vga=788 initrd=initrd.gz --
 label auto-kde
       menu label ^Automated install - kde
       kernel linux
       append desktop=kde auto=true priority=critical vga=788 initrd=initrd.gz -- quiet
 label expert-xfce
       menu label ^Expert install - xfce
       kernel linux
       append desktop=xfce priority=low vga=788 initrd=initrd.gz --
 label auto-xfce
       menu label ^Automated install- xfce
       kernel linux
       append desktop=xfce auto=true priority=critical vga=788 initrd=initrd.gz -- quiet
 label expert-lxde
       menu label ^Expert install - lxde
       kernel linux
       append desktop=lxde priority=low vga=788 initrd=initrd.gz --
 label auto-kde
       menu label ^Automated install - lxde
       kernel linux
       append desktop=lxde auto=true priority=critical vga=788 initrd=initrd.gz -- quiet
 include rqtxt.cfg

10. Форматуємо /dev/sdb2

   mkfs.ext2 /dev/sdb2

11. Розмонтовуємо /dev/sdb1 i монтуємо /dev/sdb2

   umount /dev/sdb1
   mount /dev/sdb2 /mnt  

12. Скачуємо 1 DVD інсталяції (або CD якщо флешка мала) і поміщаємо в /mnt. Сюди ж додаємо інші потрібні файли (наприклад LibreOffice).
Розмонтовуємо /dev/sdb2 і пробуємо перегрузитися з флешки.


Джерела:
1. Installing Debian from USB
2. Using Grub2 and LUA installed on USB booting ISO images

Відсутній dector

  • Графоман
  • ****
  • дописів: 269
  • Карма: +0/-0
  • Deb'user
Re: Як установити Debian з USB флешки
« Відповідей #1 : 2011-02-27 13:54:45 »
Можливо, варто розмістити це тут: http://linux.org.ua/cgi-bin/yabb/YaBB.pl?board=general ?

M.: Дякую, переніс.
« Змінено: 2011-02-27 14:29:32 від Re. »
Debian Wheezy + Asus Eee PC 901 + Awesome 3

Відсутній peinguin

  • Літератор
  • ******
  • дописів: 1419
  • Карма: +0/-0
Re: Як установити Debian з USB флешки
« Відповідей #2 : 2011-02-27 15:40:39 »
unetbootin ???

Відсутній mzenyk

  • Новачок
  • *
  • дописів: 7
  • Карма: +0/-0
Re: Як установити Debian з USB флешки
« Відповідей #3 : 2011-02-27 21:34:29 »
Цитата
unetbootin ???

Не пробував, але скоріше за все загрузиться інсталятор і не знайде установочного диска.
Debian має спеціальний інсталятор для установки з флешки, який послідовно шукає в корені всіх дисків образ загрузочного CD/DVD і монтує його.
Саме його видобувається з boot.img.gz.