readynas102とAmazon Driveを同期させる その2
「readynas102とAmazon Driveを同期させる その1」から色々と調べました。
Web管理でできないならCUIで何とかしよう!!ということで直接、テラタームで接続ログインしてどうにかしたいと思います。
WEB管理画面でSSHの項目が有効化されていればログイン可能です。下画面赤枠のが緑色ならOKです。
これであとは、テラタームをインターネットより持ってきてインストールすれば準備OK
通常パソコンと同じネットワークにあると思うのでそのIPアドレスをホストに、入力サービスをSSH、TCPポート22に設定してOKを押す。
ユーザ名とWEB管理でログインするときと同じかユーザ名:rootでパスワードは、管理メニューと同じ。
これでNASサーバに接続できますがこの後の処置で最悪は、文鎮化する可能性もあるのでデータのバックアップは、確実にしておきましょう!!
ということで昔のterastationにバックアップをするのに約3日要しました。
では、次へ!!
Welcome to ReadyNASOS 6.2.5
Last login: Mon Oct 2 09:47:53 2017 from admin-pc
root@nas-E4-DC-C3:~#
ここでファームウェアを直接6.5.2にあげる方法もありますが、無限ループのときに使用したdedファイルで直してみようと思います。
このdebファイルとは、なんぞや?ということで調べます。
UNIXのOSであるdebianのファイルらしいです。
詳しくは、DebianやUbuntuなどでは、dpkgなどのツールを使ったパッケージ管理が行われている。これにより、Debパッケージ(拡張子は.deb)という形式で配布されているソフトウェアやファイルをインストールしたり、インストールしたソフトウェアのアップデートやアンインストールなどの管理が行える。
とのこと
じゃあこれを使ってコマンドでこのDEBファイルをインストールしてみます。
wgetコマンドでdeb先ほどパソコンへダウンロードしたのですがNASサーバへダウンロードしてみます。
root@nas-E4-DC-C3:~# wget http://www.downloads.netgear.com/files/ReadyNAS/complete-flash-update_1.0_armel.deb
--2017-10-02 09:50:19-- http://www.downloads.netgear.com/files/ReadyNAS/complete-flash-update_1.0_armel.deb
Resolving www.downloads.netgear.com (www.downloads.netgear.com)... 104.71.150.131
Connecting to www.downloads.netgear.com (www.downloads.netgear.com)|104.71.150.131|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 23784 (23K) [text/plain]
Saving to: ‘complete-flash-update_1.0_armel.deb’
complete-flash-upda 100%[=====================>] 23.23K --.-KB/s in 0.1s
2017-10-02 09:50:20 (200 KB/s) - ‘complete-flash-update_1.0_armel.deb’ saved [23784/23784]
4096 Oct 2 09:50 .
root@nas-E4-DC-C3:~# ls -la
total 56
drwx------ 4 root root 4096 Oct 3 13:34 .
drwxr-xr-x 26 root root 4096 Oct 1 17:44 ..
-rw------- 1 root root 7677 Oct 2 09:15 .bash_history
-rw-r--r-- 1 root root 570 Jan 31 2010 .bashrc
-rw-r--r-- 1 root root 23784 Oct 17 2015 complete-flash-update_1.0_armel.deb
drwxr-xr-x 2 root root 4096 Oct 1 17:50 .ncftp
-rw-r--r-- 1 root root 140 Nov 20 2007 .profile
drwx------ 2 root root 4096 Dec 27 2014 .ssh
きちんとダウンロードされました。
これでdebパッケージをインストールするには、dpkgコマンドを使います。インストールは、-iオプションです。
root@nas-E4-DC-C3:~# dpkg -i complete-flash-update_1.0_armel.deb
Selecting previously unselected package complete-flash-update.
(Reading database ... 14919 files and directories currently installed.)
Unpacking complete-flash-update (from complete-flash-update_1.0_armel.deb) ...
Setting up complete-flash-update (1.0) ...
+ [ ! -s /etc/.flash_update ]
+ test -s /etc/.flash_update
+ cat /etc/.flash_update
+ IMG=/var/readynasd/fw_image
+ test -s /var/readynasd/fw_image
+ awk /sku:/ { print $2 } /proc/sys/dev/boot/info
+ SKU=RN102
+ KERNEL=kernel.arm
+ UBOOT=u-boot-rn102-*
+ echo RN102
RN102
+ head -n1
+ + + sed -e s/.*md5sum=//cut
dd -d, -f1
if=/var/readynasd/fw_image bs=16k count=1
+ MD5_GOOD=34b8b991c91124a8a652ba22387d5910
+ md5sum+
+ awk { print $1 }
dd if=/var/readynasd/fw_image bs=16k skip=1
+ MD5=34b8b991c91124a8a652ba22387d5910
+ test 34b8b991c91124a8a652ba22387d5910 = 34b8b991c91124a8a652ba22387d5910
+ [ -d /tmp/update ]
+ rm -rf /tmp/update
+ mkdir /tmp/update
+ cd /tmp/update
+ tar+ x
dd if=/var/readynasd/fw_image bs=16k skip=1
+ md5sum -c csums.md5
initrd.gz: OK
kernel: OK
kernel.alpine: OK
kernel.arm: OK
root.tlz: OK
u-boot-rn102-2.0.img: OK
u-boot-rn104-2.0.img: OK
u-boot-rn202-1.1.img: OK
u-boot-rn204-1.1.img: OK
u-boot-rn2120-2.0.img: OK
u-boot-rn25-2.0.img: OK
+ mount -t ubifs /dev/ubi0_0 /mnt
mount: mount point /mnt does not exist
dpkg: error processing complete-flash-update (--install):
subprocess installed post-installation script returned error exit status 32
Errors were encountered while processing:
complete-flash-update
最後のほうでエラーがでてだめなようです。
mountポイント/mntがないからマウントできないとほざいてます。
確認してみます。
root@nas-E4-DC-C3:/dev# cd /
root@nas-E4-DC-C3:/# ls -la
total 124
drwxr-xr-x 26 root root 4096 Oct 3 13:09 .
drwxr-xr-x 26 root root 4096 Oct 3 13:09 ..
drwxrwxrwx 1 root root 122 Oct 3 13:09 apps
drwxr-xr-x 2 root root 4096 Aug 2 2015 bin
drwxr-xr-x 2 root root 4096 Jun 17 2012 boot
drwxr-xr-x 1 root root 202 Oct 2 08:31 data
drwxr-xr-x 11 root root 2280 Oct 3 13:09 dev
drwxr-xr-x 75 root root 4096 Oct 3 13:14 etc
drwxr-xr-x 6 root root 4096 Aug 2 2015 frontview
drwxr-xr-x 1 admin admin 34 Sep 28 13:54 home
lrwxrwxrwx 1 root root 5 Mar 12 2015 homes -> /home
drwx------ 2 root root 4096 Oct 1 17:44 job_001
drwxr-xr-x 14 root root 4096 Aug 2 2015 lib
drwx------ 2 root root 16384 Dec 26 2014 lost+found
drwxr-xr-x 2 root root 40 Oct 3 13:09 media
drwxr-xr-x 8 root root 4096 Jun 18 2015 opt
dr-xr-xr-x 147 root root 0 Jan 1 1970 proc
-rw------- 1 root root 1024 Dec 26 2014 .rnd
drwx------ 4 root root 4096 Oct 2 09:50 root
drwxrwxr-x 24 root admin 820 Oct 3 13:10 run
drwxr-xr-x 2 root root 4096 Aug 2 2015 sbin
drwxr-xr-x 2 root root 4096 Jun 10 2012 selinux
drwxr-xr-x 2 root root 4096 Nov 18 2012 srv
drwxr-xr-x 12 root root 0 Oct 3 13:09 sys
drwxr-xr-x 2 root root 4096 Jan 5 2017 tera
drwxrwxrwt 8 root root 4096 Oct 3 13:15 tmp
-rw-r--r-- 1 root root 25 Oct 3 13:09 .update_fail
drwxr-xr-x 10 root root 4096 Jun 18 2015 usr
drwxr-xr-x 17 root root 4096 Aug 2 2015 var
ルート直下を調べてみても確かに/mntディレクトリは、ないようです。
じゃあ安易ですが作ってみます。
root@nas-E4-DC-C3:/# mkdir /mnt
root@nas-E4-DC-C3:/# ls -la
total 128
drwxr-xr-x 27 root root 4096 Oct 3 13:16 .
drwxr-xr-x 27 root root 4096 Oct 3 13:16 ..
drwxrwxrwx 1 root root 122 Oct 3 13:09 apps
drwxr-xr-x 2 root root 4096 Aug 2 2015 bin
drwxr-xr-x 2 root root 4096 Jun 17 2012 boot
drwxr-xr-x 1 root root 202 Oct 2 08:31 data
drwxr-xr-x 11 root root 2280 Oct 3 13:09 dev
drwxr-xr-x 75 root root 4096 Oct 3 13:14 etc
drwxr-xr-x 6 root root 4096 Aug 2 2015 frontview
drwxr-xr-x 1 admin admin 34 Sep 28 13:54 home
lrwxrwxrwx 1 root root 5 Mar 12 2015 homes -> /home
drwx------ 2 root root 4096 Oct 1 17:44 job_001
drwxr-xr-x 14 root root 4096 Aug 2 2015 lib
drwx------ 2 root root 16384 Dec 26 2014 lost+found
drwxr-xr-x 2 root root 40 Oct 3 13:09 media
drwxr-xr-x 2 root root 4096 Oct 3 13:16 mnt
drwxr-xr-x 8 root root 4096 Jun 18 2015 opt
dr-xr-xr-x 148 root root 0 Jan 1 1970 proc
-rw------- 1 root root 1024 Dec 26 2014 .rnd
drwx------ 4 root root 4096 Oct 2 09:50 root
drwxrwxr-x 24 root admin 820 Oct 3 13:10 run
drwxr-xr-x 2 root root 4096 Aug 2 2015 sbin
drwxr-xr-x 2 root root 4096 Jun 10 2012 selinux
drwxr-xr-x 2 root root 4096 Nov 18 2012 srv
drwxr-xr-x 12 root root 0 Oct 3 13:09 sys
drwxr-xr-x 2 root root 4096 Jan 5 2017 tera
drwxrwxrwt 8 root root 4096 Oct 3 13:15 tmp
-rw-r--r-- 1 root root 25 Oct 3 13:09 .update_fail
drwxr-xr-x 10 root root 4096 Jun 18 2015 usr
drwxr-xr-x 17 root root 4096 Aug 2 2015 var
作成できました。
ということでもう一度dpkgコマンドでインストールしてみます。
root@nas-E4-DC-C3:~# dpkg -i complete-flash-update_1.0_armel.deb
(Reading database ... 14925 files and directories currently installed.)
Preparing to replace complete-flash-update 1.0 (using complete-flash-update_1.0_armel.deb) ...
Unpacking replacement complete-flash-update ...
Setting up complete-flash-update (1.0) ...
+ [ ! -s /etc/.flash_update ]
+ test -s /etc/.flash_update
+ cat /etc/.flash_update
+ IMG=/var/readynasd/fw_image
+ test -s /var/readynasd/fw_image
+ awk /sku:/ { print $2 } /proc/sys/dev/boot/info
+ SKU=RN102
+ KERNEL=kernel.arm
+ UBOOT=u-boot-rn102-*
+ echo RN102
RN102
+ head+ -n1
+ + sed -e s/.*md5sum=//cut
-d, -f1
dd if=/var/readynasd/fw_image bs=16k count=1
+ MD5_GOOD=34b8b991c91124a8a652ba22387d5910
+ md5sum+
+ awk { print $1 }
dd if=/var/readynasd/fw_image bs=16k skip=1
+ MD5=34b8b991c91124a8a652ba22387d5910
+ test 34b8b991c91124a8a652ba22387d5910 = 34b8b991c91124a8a652ba22387d5910
+ [ -d /tmp/update ]
+ rm -rf /tmp/update
+ mkdir /tmp/update
+ cd /tmp/update
+ + tar x
dd if=/var/readynasd/fw_image bs=16k skip=1
+ md5sum -c csums.md5
initrd.gz: OK
kernel: OK
kernel.alpine: OK
kernel.arm: OK
root.tlz: OK
u-boot-rn102-2.0.img: OK
u-boot-rn104-2.0.img: OK
u-boot-rn202-1.1.img: OK
u-boot-rn204-1.1.img: OK
u-boot-rn2120-2.0.img: OK
u-boot-rn25-2.0.img: OK
+ mount -t ubifs /dev/ubi0_0 /mnt
+ cp root.tlz /mnt
+ grep root.tlz csums.md5
+ umount /mnt
+ [ -s u-boot-rn102-2.0.img ]
+ stat -c%s u-boot-rn102-2.0.img
+ SIZE=892696
+ awk { print $1 }
+ md5sum u-boot-rn102-2.0.img
+ MD5_GOOD=5f52ce392d68715c8a943841d362df75
+ md5sum
+ + awk { print $1 }
dd if=/dev/mtd0ro bs=892696 count=1
1+0 records in
1+0 records out
892696 bytes (893 kB) copied, 0.0776695 s, 11.5 MB/s
+ MD5=29a8143cb2a9e411ffb4adb15025b388
+ [ 29a8143cb2a9e411ffb4adb15025b388 != 5f52ce392d68715c8a943841d362df75 ]
+ flash_erase /dev/mtd0 0 0
Erasing 128 Kibyte @ 160000 -- 100 % complete
+ nandwrite -pq /dev/mtd0 u-boot-rn102-2.0.img
+ flash_erase /dev/mtd2 0 0
Erasing 128 Kibyte @ 5e0000 -- 100 % complete
+ nandwrite -pq /dev/mtd2 kernel.arm
+ flash_erase /dev/mtd3 0 0
Erasing 128 Kibyte @ 3e0000 -- 100 % complete
+ nandwrite -pq /dev/mtd3 initrd.gz
+ rm /etc/.flash_update
+ mv /var/readynasd/fw_image /var/backups/current_os.img
+ echo Successfully updated flash.
Successfully updated flash.
Successfullyと表示されたので大丈夫そうです。
ここで再起動します。
root@nas-E4-DC-C3:~# reboot
しばらくファームウェアのバージョンアップで起動するまでに少し時間がかかりましたが
やっとファームウェアのバージョンアップできました。
なぜ/mntがなかったのか?自分で間違って消していたのか?なぞですがなんとか成功しました。
データも特に壊れることもなく良かったです。
Amazon Cloud Drive項目も出てきましたので一安心です。
次回にReadynasとAmazon Cloud Driveをやってみたいと思います。
*****************************************************************************