Поиск по блогу

9 мая 2010 г.

Установка на WD MyBook World Edition (Blue Rings) Debian lenny

Давным давно приобрёл себе WD MyBook World Edition и уже через несколько недель был разочарован скупой функциональностью и реализацией единственного протокола доступа - SMB. И вот по прошествии двух лет всё-таки дошли руки посмотреть что же находится внутри и как можно настроить данное устройства под себя.

Особую благодарность хочу высказать Mario Pascucci, который был инициатором идеи по установке на MyBook чего-нибудь кроме встроенной урезанной версии linux от WD. (Его руководство по взлому и обновлению WD здесь и здесь -- там же можно найти необходимые файлы образов загрузки MyBook), а так же сообществу mybookworld.wikidot.com.

Итак, весь процесс установки системы на WD MyBook состоит (в простейшем случае) из 5 этапов: разборка MyBook и подключение его к компьютеру, настройка загрузочных областей и установка системы, сборка MyBook. Обо всё по-порядку.

  1. Разборка

    По ободу MyBook идёт уплотнительная резинка, которая играет роль виброизоляционной, так что снимать её надо аккуратно, потом пригодится. Достаточно её в одном месте подцепить.
    На верхней и нижней части MyBook скрыты защёлки, которые закрепляют пластиковый корпус на сетчатом каркасе. Можно освобождать защёлки по очереди. Понадобится две маленькие отверточки: одной необходимо нажимать на защёлку, вторую использовать в качестве рычага, чтобы приоткрыть корпус и освободить защёлку. Такую операцию необходимо провести с обоих сторон, после чего просто снять пластиковый корпус.
    Для экономии времени проще всего разбирать так: открутить плату со светодиодами и микровыключателем на передней панели, а дальше открутить четыре винта крепящих металлическую основу винчестера к пластиковому корпусу. Дальше аккуратно вынуть внутреннюю часть, чтобы не сломать плату MyBook с коннектором для платы светодиодов.
    Отсоединяем информационный и разъём питания S-ATA винчестера и готово! Винчестер готов к перепрошивке.

  2. Подключение к компьютеру

    Здесь два возможных варианта: подключать с помощью usb адаптера для S-ATA винчестеров или на прямую к материнской плате (как я и делал). Два разъема -- разъем питания и информационный.

  3. Подготовка к работе

    Для начала необходимо подготовится к работе: загрузить необходимые образы загрузочных областей, систему и произвести настройку собственной системы.
    Список необходимых файлов:
    • installer -- исполняемый файл для модернизации mbr-области
    • Stage 1 bootloader (bin) -- образ первой загружаемой области
    • U-Boot bootloader (img) -- образ второй загружаемой области
    • MyBook RootFS (tar.bz2) -- файлы самой системы для MyBook
    • Kernel (tar.gz) -- ядро системы

    Все файлы можно скачать отсуда. На момент написания статьи последнее обновление было аж 26.08.2007.

    Так как придеться работать с файловыми системами, то необходимо настроить программу mkfs. Для этого отредактируем файл /etc/mke2fs.conf:

    ext3 = {
        inode_size=128
        base_features = filetype,sparse_super,large_file
        features = has_journal
    }

    Эти изменения понадобятся только на время установки. Так что после завершения установки можно поменять всё обратно. Что мы здесь меняем (спасибо sany_v):
    inode_size = 128, так как u-boot загрузчик может закружать области с inode size 128.
    filesystem features = has_journal filetype sparse_super large_file для соответсвия с файловой системой стандартного WD MyBook World Edition.
    Подготовительный этап закончился, можно приступать к установке загрузочных областей.

  4. Установка загрузочных областей и системы

    Будем считать, что загруженные файлы образов находятся в директории /tmp/mybook/
    Если установленый винчестер расположен на /dev/sdb, то все последующие команды будут в точности, как написано тут:

    • Чистка таблицы разделов и винчестера:

      dd if=/dev/zero of=/dev/sdb bs=1M count=10000

    • Создание таблицы разделов:

      # fdisk /dev/sdb
      Command (m for help): p - проверить, что всё пусто
      
      Device Boot    Start       End    Blocks   Id  System
      
      Command (m for help): n - новый раздел
      Command action
         e   extended
         p   primary partition (1-4)
      p - основной раздел
      Partition number (1-4): 1 - первый раздел
      First cylinder: 2 - начало раздела
      Last cylinder: +10G - установка размера 10GB
      
      Command (m for help): n - новый раздел
      Command action
         e   extended
         p   primary partition (1-4)
      p - основной раздел
      Partition number (1-4): 2 - второй раздел
      First cylinder: 1308 - начало раздела (если первый - 10GB)
      Last cylinder: +1G - установка размера 1GB
      Command (m for help): t
      Partition number (1-4): 2
      Hex code (type L to list codes): 82
      Changed system type of partition 2 to 82 (Linux swap)
      
      Command (m for help): n - новый раздел
      Command action
         e   extended
         p   primary partition (1-4)
      p - основной раздел
      Partition number (1-4): 3 - второй раздел
      First cylinder: 1440 - начало раздела (если первый и второй - 11GB)
      Last cylinder: Enter - использовать всё свободное место
      
      Command (m for help): p - проверить, что всё правильно
      
         Device Boot      Start         End      Blocks   Id  System
      /dev/sdb1               2        1307    10490445   83  Linux
      /dev/sdb2            1308        1439     1060290   82  Linux swap / Solaris
      /dev/sdb3            1440      121601   965201265   83  Linux
      
      Command (m for help): w - записать изменения на диск
      

    • Модернизация mbr и установка загрузчиков:

      # cd /tmp/mybook/
      # dd if=/dev/sdb of=mbr bs=512 count=1
      # chmod +x installer (сделать исполняемым, если понадобится)
      # ./installer mbr
      # dd if=mbr of=/dev/sdb bs=512 count=1
      # dd if=stage1.bin of=/dev/sdb bs=512 seek=1
      # dd if=u-boot.img of=/dev/sdb bs=512 seek=64
      

    • Форматирование файловых систем:

      # mkfs.ext3 -j /dev/sdb1
      # mkswap /dev/sdb2
      # mkfs -j -m0 /dev/sdb3
      

    • Отключение проверки файловых систем:

      # tune2fs -c -1 -i 0 /dev/sdb1
      # tune2fs -c -1 -i 0 /dev/sdb3
      

    • Монтирование файловых систем и установка системы:

      # mkdir /media/mybook/
      # mount /dev/sdb1 /media/mybook
      # cd /media/mybook
      # tar xjf /tmp/mybook/mybook-rootfs-debian-DATE.tar.bz2
      # tar xzf /tmp/mybook/kernel-VERSION.tar.gz
          (Если надо настроить сеть (не DHCP), то
          # vim etc/network/interfaces
          )
      # cd /
      # umount /dev/sdb1
      

  5. Тестирование:

    Для тестирования нет необходимости снова собирать MyBook, достаточно подсоединить кабели питания и информационный кабели и можно пробовать. Подключайте сетевой кабель и ждите загрузки системы: внешние 4 светодиода должны загореться.
    Подключится к MyBook можно с помощью shh:

    username: root
    password: mybook
    

Вот в принципе и всё. Теперь с MyBook можно работать, как с обычным сервером и сделать из него полноценный NAS. :)

Комментариев нет: