NAS служил файлопомойкой, стоял raid 1 с двумя WD Red 1TB.
Как-то ночью выключался свет. И все бы ничего, но мой 320 мигал синим светодиодом как гирлянда и не запускался. Поискав в инете и найдя кучу инфы принялся его восстанавливать.
Что имеем:
Мигающий и почти бесполезный D-Link DNS-320
Xubuntu 15.10
утилита dns323-firmware-tools-master
прошивка Alt-F-0.1RC4.1-DNS-320-rev-A1A2.bin под мою ревизию платы, скачана с sourceforge
Windows 7
tftpd под вин
putty под вин
USB to TTL адаптер
Сразу скажу что во всем этом не силен, делалось все методом проб и ошибок, читая мануалы за чашкой кофе.
1. Для начала на убунте поставим ruby и ffi:
apt-get install ruby
apt-get install ruby2.1-dev
gem install ffi
2. Скачаем утилиту dns323-firmware-tools:
git clone https://github.com/mpalmer/dns323-firmware-tools
cd dns323-firmware-tools
3. Копируем прошивку Alt-F-0.1RC4.1-DNS-320-rev-A1A2.bin в папку скачанной утилиты dns323-firmware-tools, мне было удобно через WinSCP.
4. Извлекаем из прошивки образ ядра и рамдиска:
./splitdns323fw -k uKernel -i uInitrd -d uDefaults -s uSquashfs Alt-F-0.1RC4.1-DNS-320-rev-A1A2.bin
6. Запускаем tftpd32.exe, выбираем нашу сетевую карту с нашим ip, у меня 192.168.0.70
7. Подключаем пины через USB to TTL адаптер к нашему nas и вставляем в комп с win7:
На моей плате это разъем JP3.
Пины справа на лево:
1pin (квадратный) TXD
2pin отсутствует
3pin 3.3V НЕ ПОДКЛЮЧАЕМ (на хабре автор жаловался, что спалил несколько TTL адаптеров, подключив этот пин. Я не подключал и без него все работает)
4pin GND
5pin RXD
Если у вас не выходит, поменяйте RX и TX местами, в статьях эти пины отображены наоборот.
8. Открываем putty, устанавливаем порт подключения (посмотреть в Диспетчере устройств -> Порты COM и LPT) скорость 115200
В категории serial Data bits – 8, Flow Control — None. Жмем Open.
9. Подключаем питание NAS, подключаем LAN, и нажимаем кнопку включения. Пошла загрузка, ждем надпись: If you want to stop u-boot booting, then press space then 1 when prompted to press any key
Быстро жмем «Пробел», потом «1». Получаем строку ввода:
Marvell>
прописываем IP адрес нашего NAS, пусть будет 192.168.0.71
setenv ipaddr 192.168.0.71
прописываем IP адрес tftp-сервера (нашего компьютера), у меня он 192.168.0.70
setenv serverip 192.168.0.70
загружаем наши файлики в память NAS:
tftp 0xa00000 uKernel
tftp 0xf00000 uInitrd
и запускаем операционную систему без перешивания флеш памяти
bootm 0xa00000 0xf00000
11. после загрузки в putty находим наш новый ip, у меня стал 192.168.0.179, и переходим туда в браузере :

Откроется наша свежезалитая Alt-F
12. в putty пишем:
etc
passwd
Нам предлагают задать новый пароль. Задаем. Подтверждаем.
в Alt-F вводим этот пароль.
Так как при перезагрузке наша прошивка слетит, заходим в System/Firmware,
Выбираем прошивку Alt-F-0.1RC4.1-DNS-320-rev-A1A2.bin или от длинка с их сайта под вашу ревизию. Ставим, перезагружаемся, радуемся.
Здравствуйте!
Используя команду: ./splitdns323fw -k uKernel -i uInitrd -d uDefaults -s uSquashfs Alt-F-0.1RC4.1-DNS-320-rev-A1A2.bin, получил файлы:
uKernel
uInitrd
uDefaults
uSquashfs.
У меня вопрос: Вы используете команды:
tftp 0xa00000 uKernel
tftp 0xf00000 uInitrd
,а для файлов: uDefaults и uSquashfs
tftp 0x??????? uDefaults
tftp 0x??????? uSquashfs
какие адреса использовать?
После мучений с прошивкой, понял что надо ещё uDefaults и uSquashfs прописывать.
Помогите, пожалуйста, как определить эти адреса?
Насчёт их не смогу подсказать. Я делал как описал, тем более это давно было. Попробуйте спросить на 4pda в теме dns320l или по ссылкам в конце статьи посмотреть, может там будут адреса.
Доброго времени суток! Не могли бы пофиксить ссылки на скриншоты в статье?
Заранее благодарен и спасибо за мануал!
Благодарю! Изображения восстановил
Спасибо большое за статью, очень помог. Смог восстановить полностью убитый 320L.