计算机‎ > ‎软件‎ > ‎Linux‎ > ‎

我的 Buffalo LS-WXL/E NAS 系统魔改一

发布者:guo rue,发布时间:2015年4月18日 09:11   [ 更新时间:2015年4月18日 09:32 ]
之前根据教程 root 了,然后扔在一边。最近因为要运行一些 PHP 程序,但是上面的 PHP 环境版本太低了。所以这是本次魔改的首要任务。其他折腾也顺便贴出来吧。

升级到最新固件
因为 需要升级固件到1.64版本才能支持2TB大容量硬盘,所以

到官网下载好最新固件,我下的是1.64的。
http://www.buffalo-china.com/drvmanual/download_details.php?type=1&id=62
或者到这里下载最新固件备份下载地址:
https://googledrive.com/host/0B6hvW6XtZ2CdYjNscjdtUWxUcVk/ls_series-164.zip

固件需要运行于windows系统。直接运行固件升级程序,升级完成后要注意两个事项,检查网络设置确保ip,dns这些设置正确,关闭windows的防火墙。


开启ROOT并修改ROOT密码
1.下载安装适用于windows系统的JAVA运行环境。
自己选
http://www.java.com/zh_CN/download/manual.jsp
或者用我的
https://googledrive.com/host/0B6hvW6XtZ2CdYjNscjdtUWxUcVk/jre-7u51-windows-i586.exe

2.下载 acp_commander.jar
源地址
http://downloads.nas-central.org/TOOLS/ALL_LS_KB_ARM9/ACP_COMMANDER/acp_commander.jar
我的备份
https://googledrive.com/host/0B6hvW6XtZ2CdYjNscjdtUWxUcVk/acp_commander.jar

3.首先关闭自己电脑的所有防火墙,在 Windows 的命令行模式下,按顺序执行如下命令
开始菜单-运行-cmd
在 cmd 中执行如下命令转到 acp_commander.jar 的存放目录,比如  
cd d:\downloads

3.1运行java修改root命令
java -jar acp_commander.jar -t 192.168.10.102 -ip 192.168.1.11 -pw password -c “(echo 123456;echo 123456)|passwd”
其中 192.168.1.11 为 LS-WVL NAS 的 IP,password 为你的 admin 密码, 默认是 password123456为你要设置的 root 密码

以下是命令执行后的部分结果:
ACP_STATE_OK
ACP_STATE_OK
OK (ACP_STATE_OK)
当有出现上面的三个ok提示就表示密码修改成功。ROOT密码修改成功后我们就可以启用ssh来登录安装其它软件了。

3.2允许使用ssh进行root用户登录
java -jar acp_commander.jar -t 192.168.10.102 -ip 192.168.10.102 -pw 1 -c “sed -i ‘s/UsePAMyes/UsePAM no/g’ /etc/sshd_config”

3.3执行下面这个命令启用ssh登录
java -jar acp_commander.jar -t 192.168.10.102 -ip 192.168.10.102 -pw adminpasswordhere -c “sed -i ‘s/PermitRootLogin no/PermitRootLogin yes/g’ /etc/sshd_config”

3.4重启 ssh 服务
java -jar acp_commander.jar -t 192.168.10.102 -ip 192.168.10.102 -pw 1 -c “/etc/init.d/sshd.sh restart”

提示:你也可以在 GNU/Linux 下面安装 JAVA 执行以上步骤。

用 ssh 登陆主机安装 optware
ssh -p 22 root@192.168.1.11

你的 NAS 没有组 raid 的话 执行以下四个命令
mkdir /mnt/disk1/tmp
cd /mnt/disk1/tmp/
wget http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/lspro-bootstrap_1.2-7_arm.xsh
sh ./lspro-bootstrap_1.2-7_arm.xsh

如果你的 NAS 已经组了 raid 那么命令是这样的
mkdir /mnt/array1/tmp
cd /mnt/array1/tmp/
wget http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/teraprov2-bootstrap_1.2-7_arm.xsh
sh ./teraprov2-bootstrap_1.2-7_arm.xsh

这上面几条命令的意思是安装 ipkg ,接着就可以更新源了。
ipkg update
ipkg upgrade 
之类的。
至此,如果一切顺利的话,改机就完成了,想要安装什么软件就任君选择了。

但是我在执行 ipkg update 的时候系统优雅的报错了。你妹!
root@LS-WXL-E:~# ipkg update                      
Downloading http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/Packages.gz
An error ocurred, return value: 1.
Collected errors:
ipkg_download: ERROR: Command failed with return value 4: `wget --passive-ftp    -q -P /opt/ipkg-Qvb1yZ http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/Packages.gz'

补救办法
到 opt/etc/ipkg.conf 里面修改 源
vi opt/etc/ipkg.conf
注意这里可能需要一定的 vi 编辑器技巧,你看到这一堆了没
# src nslu2 http://ipkg.nslu2-linux.org/feeds/optware/nslu2/cross/stable                                                                  
# src fsg3 http://ipkg.nslu2-linux.org/feeds/optware/fsg3/cross/stable                                                                    
# src ddwrt http://ipkg.nslu2-linux.org/feeds/optware/ddwrt/cross/stable                                                                  
# src xwrt http://ipkg.nslu2-linux.org/feeds/optware/ddwrt/cross/stable                                                                   
# src whiterussian http://ipkg.nslu2-linux.org/feeds/optware/ddwrt/cross/stable                                                           
# src oleg http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable                                                                    
# src ts72xx http://ipkg.nslu2-linux.org/feeds/optware/ts72xx/cross/stable                                                                
# src/gz openwrt-brcm24 http://ipkg.nslu2-linux.org/feeds/optware/openwrt-brcm24/cross/unstable                                           
# src/gz openwrt-ixp4xx http://ipkg.nslu2-linux.org/feeds/optware/openwrt-ixp4xx/cross/unstable/    
把光标移动到这一行的 # 上面,
# src oleg http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable   
然后按 键盘字母 a 进入编辑模式,用光标和 Backspace 键删除 # 和后面的空格,变成
src oleg http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable   
好了,按 Esc 键 vi 将进入 命令模式。现在输入 :wq 就可以保存退出了。(不保存退出是 :q!)

再次执行 ipkg update 依然报错
我就 ping 一下 guoruei.com 看看这货是不是连部上外网啊。果然
root@LS-WXL-E:~# ping www.guoruei.com
ping: bad address 'www.guoruei.com'
但是 IP 可以 ping 通
root@LS-WXL-E:~# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
64 bytes from 8.8.8.8: seq=1 ttl=45 time=107.685 ms
64 bytes from 8.8.8.8: seq=4 ttl=45 time=106.934 ms
64 bytes from 8.8.8.8: seq=6 ttl=45 time=106.406 ms
64 bytes from 8.8.8.8: seq=7 ttl=45 time=105.204 ms
^C
--- 8.8.8.8 ping statistics ---
8 packets transmitted, 4 packets received, 50% packet loss
round-trip min/avg/max = 105.204/106.557/107.685 ms

我就估计是 nameserver 坏了。赶紧去修改
vi /etc/resolv.conf
按 a 进入编辑模式写上
nameserver 8.8.8.8
nameserver 8.8.4.4
按 Esc 再输入 :wq 保存退出

然后再 ping guoruei.com
root@LS-WXL-E:~# ping guoruei.com
PING guoruei.com (74.125.22.121): 56 data bytes
64 bytes from 74.125.22.121: seq=0 ttl=34 time=412.092 ms
64 bytes from 74.125.22.121: seq=1 ttl=34 time=406.935 ms
64 bytes from 74.125.22.121: seq=2 ttl=34 time=403.282 ms
64 bytes from 74.125.22.121: seq=3 ttl=34 time=411.000 ms
^C
--- guoruei.com ping statistics ---
5 packets transmitted, 4 packets received, 20% packet loss
round-trip min/avg/max = 403.282/408.327/412.092 ms
哈哈,计划通。

最后一次 ipkg update
root@LS-WXL-E:~# ipkg update
Downloading http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/Packages
Updated list of available packages in /opt/lib/ipkg/lists/oleg
Downloading http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/Packages.gz
Inflating http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/Packages.gz
Updated list of available packages in /opt/lib/ipkg/lists/cross
Successfully terminated.

然后就可以 ipkg upgrade 了
root@LS-WXL-E:~# ipkg upgrade
Nothing to be done
Successfully terminated.

先安装个 NANO 爽爽
root@LS-WXL-E:~# ipkg install nano
Installing nano (2.2.6-1) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/nano_2.2.6-1_arm.ipk
Installing ncurses (5.7-3) to root...
Downloading http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/ncurses_5.7-3_arm.ipk
Configuring nano
Configuring ncurses
update-alternatives: Linking //opt/bin/clear to /opt/bin/ncurses-clear
Successfully terminated.

等等,我发现
http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/
这个源是没有用的,因为这是为 mips 的 U 的源,我的是 ARM的,根本用不上。
所以回 
vi opt/etc/ipkg.conf
注释上
# src oleg http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable   
恩,继续
root@LS-WXL-E:~# ipkg update          
Downloading http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/Packages.gz
Inflating http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/Packages.gz
Updated list of available packages in /opt/lib/ipkg/lists/cross
Successfully terminated.
看吧,没问题。

Optware下可用的软件包
http://www.nslu2-linux.org/wiki/Optware/Packages
事实上,wiki上的包列表不全,要看完全的packages,用下面的页面。
http://ipkg.nslu2-linux.org/feeds/optware/cs05q3armel/cross/stable/
我在上面的页面上搜索 php 结果出来全是 5.2 版本的,没有更新的了,真蛋疼。后续如何请继续关注。