QTS 5.1 从bash换到zsh并替换自启动脚本
虽然NAS的shell后台并不常用,但每次用的时候都想吐槽,自带的bash是真的难用。所以决定给它换成zsh。参考网上几篇古老的教程,终于是成功了,这里简单记录一下。
首先安装Entware。首先从myqnap网站下载entware-std传到NAS上,ssh登录admin,"sh Entware_1.03std.qpkg"安装。试一下opkg命令,无效的话重新登陆ssh或执行/etc/init.d/Entware.sh。然后"opkg update && opkg install git git-http zsh"
接下来安装oh-my-zsh,可以按照官网操作,网络问题的话就用离线方式。装好之后默认在/root目录下生成三个文件
.zshrc
.oh-my-zsh(文件夹)
.zsh_history
重点来了,平时我们并不用root登录,而且重启之后root文件夹也会清空。这里借助entware的启动脚本转移zsh的配置文件。打开"/share/CACHEDEV1_DATA/.qpkg/Entware/Entware.sh",在"start)"区块最后加上自启动脚本,就像这样
init.sh位置随意,不会重启丢失就行写脚本之前先在"/share/CACHEDEV1_DATA"或者其它位置新建".zsh"目录,把上面三个文件mv过去,这个目录可以放在任何不会重启丢失的路径下。修改.zsh下所有文件的权限为755,拥有者改为你正常登录ssh的用户名。
然后就是脚本内容,就像这样
打对勾的是比较重要的第一行是为了在启动时将/opt/bin加入环境变量,中间三行在home目录建立的软链接,这样保证重启之后配置文件不会丢失。我另外还把hosts、apache的conf也写了进去,这样每次重启就能自动恢复相关的配置了,省的每次还要手动执行一次。
搞定之后退出登录,为了安全关闭admin账号,重启NAS。登录ssh,执行zsh就能打开新世界了。这里没有把zsh设为默认,也是担心配置文件出错导致无法登录。
最后友情提醒:公网开放ssh登录是非常危险的,分分钟变成别人的矿机。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

tuutoo
校验提示文案
flyshu
校验提示文案
没事找事啊
校验提示文案
flyshu
校验提示文案
没事找事啊
校验提示文案
tuutoo
校验提示文案