Установка Debian Wheezy на Buffalo Linkstation Pro

от автора

Начнем с того, что понадобился мне насик. И прикупил себе хоть и б/у зато с гигабиткой и двумя портами USB. Про стандартные прошивки насов, конечно кроме synology, я рассказывать не буду, и судя по сабжу итак понятно что будем ее менять. Вообще то изначально выбиралась модель NASа с возможностью установить что то другое, родное — дебиан например. После генты — дебиан конечно очень консервативный дистибутив. Поэтому уверен что танго с этим насиком еще не окончено. Ожидайте в скором времени гентушечку 🙂 А пока давайте ознакомимся с дебианом. Характер у этого насика еще тот. 2 недели потрачено (обычно после роботы 3-4 часа). Мало того что пока не сделал консольный кабель, понять его было сложно. А теперь как родной.
Сразу скажу что в клин инсталле есть баги, которые мешают установить рабочую систему. Здесь я вам изложу все подробности. Если ты решился %username% порадовать своего сетевого накопителя свеженьким ядёрком, то тебе под кат!

Начнем с технических характеристик. Конечно на 2013 год это уже реаритет, и у роутера моего круче проц стоит, да и оперы побольше. Зато со своей задачей справляется на отлично. И это радует.

Технические характеристики этого устройства :
Buffalo Linkstation Pro V1
Процессор: Marvell 88F5182
Технология: System on Chip(SOC)
Технология: ARM926EJ-Sid(wb) [41069260] revision 0 (ARMv5TEJ)
Частота 400Mhz
Шына: = 200Mhz
Оперативная память: 128MB 2 NANYA NT5TU32M16AG или Elpida EDE5116AF DDR2 SDRAM
Флеш память: SST 256K CMOS Multi-Purpose
NIC: Marvell 88E1111 Gigabit Ethernet Transceiver («Alaska» series).
USB: 2 — USB 2.0 Max: 480 Mbps (HS Mode), Max: 12 Mbps (FS Mode)
SATA Controller: Marvell Serial ATA Adapter

внутри кроме SATA есть еще место под распайку eSATA, спасибо за подарочек, Buffalo!
Для установки я использовал Serial кабель чтобы… да тут и так понятно, для чего консольный кабель. Главное что тебе %username% не обязательно иметь Serial подключения. Ведь делать распайку на плате не каждый хочет (умеет).

Начнем

Для установки вам понадобиться:
TFTP сервер (я использовал tftpd32, скачать можно c tftpd32.jounin.net )
Установочные файлы uImage.buffalo — ядро, и initrd.buffalo рам-диск (скачать можно http.us.debian.org/debian/dists/wheezy/main/installer-armel/current/images/orion5x/network-console/buffalo/lspro ).
Только эти два файла. config-debian нам не понадобится.
Также желательно роутер, и настроить ему подсеть на 192.168.11.х
Прописать адрес 192.168.11.1 на компьютер из которого будем делать все операции.
Или если Вы на ноуте, а роутер далеко, и тебе лень так же как и мне, то можешь %username% смело прописать подсеть на роутере, или сменить просто маску на /16 (255.255.0.0) и бриджануть сетевушку ноута с вайфаем, прописать на бридже нужный адрес, и кроссованым патчкордом подключить до линкстейшена.

К тому же NAS при ребуте в tftp будет издавать “звук кардиограммы”, это нормально. Коротким нажатием кнопки POWER звук можно звук отключить, Если что 🙂

Установку debianа я расписывать не буду ( снял видео-скрин ). Здесь только главные нюансы:
Скопируйте по возможности все данные со своего NASа. Чтобы избежать потери данных.
При настройке разметки диска можно смело использовать Guided, тоесть дать установщику возможность самому сделать разметку за тебя %username%. Но потом нужно будет изменить пару значений: изменить форматирование у /boot и / на ext3 и снять boot-flag с /boot раздела

Установить дебиан на USB носитель не получится. Ведь USB контроллер инициализируется только после загрузки системы.

Чтобы загрузится с tftp нужно сделать в правильном последовательности:
1. Выключить полностью NAS. И потом выдернуть шнур питания на 3-4 секунды, и подключить естественно питание.
2. Зажав и не отпуская кнопку RESET на задней стороне устройства нажимаем кнопку POWER. Должна заиграть мелодия. В этот момент у тебя уже включенный и настроенный tftp сервер. (порт 69, если ты забыл. в корне tftp только 2 файла uImage.buffalo и initrd.buffalo скачанные из репозитория дебиана).

Разметка диска должна быть msdos. Первый раздел ext3 (где будет только ядро и рам-диск). Раздел без boot флага. Для uBootа бут-флаг не нужен. Также встречалось что можно установить на ext2 /boot раздел, но так и не попробовал.

Рекомендуемая таблица разделов:
1. primary, size 128M, mount /boot, ext3
2. primary, size 7G, mount /, ext3
3. logical, size 384M, mount swap,swap
4. logical, size -inf, mount /home, ext3|4

Как я уже упоминал, в установщике есть баг который не устанавливает три пакета :
uboot-envtools — отвечает за контролем над памятью uBoot.
uboot-mkimage — создает uBoot совместимый образ ядра и рам-диска.
flash-kernel — надстройка для автоматического создания ядра и рам-диска, посредством uboot-mkimage, дальнейшем прописывания его в раздел /boot, при этом бэкапируя старые ядра.
Их нужно будет установить самому перед пунктом make the system bootable.

Чтобы установить нужные пакеты открываем дополнительное окно терминала, переходим в шелл, монтируем proc и dev. chrootимся в target и там уже apt-getим то что нужно.

mount -t proc none /target/proc
mount -o bind /dev /target/dev
chroot /target /bin/bash
apt-get install uboot-envtools uboot-mkimage flash-kernel

После удачной установки пакетов жмем make the system bootable и завершаем установку.

Если вы хотите получить доступ из системы в флеш uBootа и у вас уже установлен uboot-envtools — выполните следующую комманду:
echo “/dev/mtd0 0x3F000 0x1000 0x1000” > /etc/fw_env.conf

Из файлов прошивки можно извлечь ядро и рам-диск (для восстановления).
Можно грузанутся по tftp, и прошивать насик стоковым прошиватором, в том случае если ти хочешь вернуть всё обратно.
buffalotech.com/support-and-downloads/download/LSPro_103.zip

Полезная утилитка написана на яве для стоковой (оригинальной) прошивки.
потребуется JRE.
(ссылочка sourceforge.net/projects/linkstationwiki/files/acp_commander/)

java -jar acp_commander.jar

ACP_commander out of the linkstationwiki.net project.
Used to send ACP-commands to Buffalo linkstation® LS-PRO.

WARNING: This is experimental software that might brick your linkstation!

Version 0.4.0 (beta)

Usage: acp_commander [options] -t target

options are:
-t target… IP or network name of the Linkstation.
-m MAC… define targets mac address set in the ACP package.
-na… no authorisation, skip the ACP_AUTH packet.
-ba… use bug/bufferoverflow on LS to bypass usuall password
authentication. Standard until acp_commander 0.4.
-pw passwd. your LS admin password.
-i ID… define a connection identifier, standard: random value.
-p port… define alternative target port, default = 22936
-b localIP… bind to local address.

-f… find linkstation(s).
-o… open the linkstation by sending ‘telnetd’ and ‘passwd -d root’.
-c cmd… sends the given shell command cmd to the linkstation.
-s… interactive shell.
-cb… clearoot, output of df follows for control of success.
-ip newIP… change IP to newIP (basic support).
-save… save configuration.
-load… load configuration.
-blink… blink LED’s and play some tones.
-gui nr… set WEB GUI language 0=Jap, 1=Eng, 2=Ger
-addons… install addons.tar from local or linkstationwiki.
-diag… run some diagnostics on LS settings (lang, backup).
-emmode… Linkstation reboots next into EM-mode.
-normmode… Linkstation reboots next into normal mode.
-reboot… reboot Linkstation.
-shutdown… shut Linkstation down.

-d1 | -d2… set debug level, generate additional output
-q… quiet, surpress header, does not work with -h or -v
-h | -v… extended help
-u… usage (this output)

*) this is not the MAC address the packet is sent to, but the address within
the ACP packet. The linkstation will only react to ACP packets if they
carry the correct (its) MAC-address or FF:FF:FF:FF:FF:FF

This program is the result of the work done at nas-central.org (linkstationwiki.net), which is
not related with Buffalo® in any way.

Experimental software, use with care, it might brick your Linkstation!

code by Georg, readme here by mindbender

Видео туториал, как и обещал. Рекомендую просмотреть видео перед установкой.

Стоковый fw_printenv на всякий случай.

baudrate=115200
loads_echo=0
ipaddr=192.168.11.150
rootpath=/nfs/arm
cpuName=926
CASset=min
MALLOC_len=4
bootargs_end=:::DB88FXX81:eth0:none
ethact=egiga0
ethaddr=00:68:61:62:72:61 здесь ваш мак адрес. желательно не менять.
buffalo_minor_ver=BOOT_MINOR_VER=1.00
ethprime=egiga0
usb0Mode=host
usb1Mode=host
bootargs=console=ttyS0,115200 root=/dev/sda2 rw initrd=0x00800040,15M panic=5 BOOTVER=1.10
serverip=192.168.11.1
buffalo_ver=BOOTVER=1.01
build_time=10:35:38
initrd=initrd.buffalo
kernel=uImage.buffalo
bootargs_base=console=ttyS0,115200
bootargs_root=root=/dev/sda2 rw initrd=0x00800040,15M panic=5
def_tftp=tftp 0x00100000 $(kernel);tftp 0x00800000 $(initrd);setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver);bootm 0x00100000 0x00800000
stdin=serial
stdout=serial
stderr=serial
enaMonExt=no
enaFlashBuf=yes
enaCpuStream=no
bootdelay=3
disaMvPnp=no
overEthAddr=no
force_tftp=1
bootcmd=ide reset; ext2load ide 1:1 0x00100000 /$(kernel);ext2load ide 1:1 0x00800000 /$(initrd);setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver);bootm 0x00100000 0x00800000

Environment size: 1010/4092 bytes
Note: if you stop uboot via serial or netconsole, and select tftp booting, bootcmd will assume a different value:
bootcmd=tftp 0x00100000 $(kernel);tftp 0x00800000 $(initrd);setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver);bootm 0x00100000 0x00800000

Если Вы разобрали Ваш насик и случайно положили платку на алюминиевый корпус, а потом включили его. И теперь он уже не стартует, не переживайте — скорее всего сгорели предохранители. Попробуйте мультиметром проверить fuse возле входа питания (чёрные такие). Один предохранитель для +12V другой для +5V. Скорее всего они и сгорели. Чтобы долго не искать детали для замены — подсказка: практически любая PCI>USB плата. На них есть такие fuse. 🙂

Сразу ответы на некоторые вопросы:
1. Да, owncloud поставить можно, но лагать будет мама дорогая. 400 МГц процессор.
2. Да, насик видит 2Тб жесткие диски. причем у него есть еще не распаянный eSATA порт, который не так уж и сложно самому поставить.
3. Да, он очень тихий и холодный. На дебиан даже есть тузла для контроля вентилятора, светодиода и прочего.
4. Да, его можно использовать еще и как будильник. у него есть динамик. громкий кстати.
5. По NFS скорость чтения/запись до 42/38 Мб/сек (самбу не поднимал еще).
6. Да, проц можно разогнать. но зачем?
7. Цена? Взял за 26 евро на ибее с доставкой и жестким диском на 250 Гб.

Спасибо за твое внимание. Буду рад ответить на все вопросы.

ссылка на оригинал статьи http://habrahabr.ru/post/181486/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *