【原文出处】
某些台过于强悍的ARM软路由,但是更多合适的系统只有OpenWRT,故可使用chroot
建立一个桌面环境来利用多余的性能。
首先,通常OpenWRT重置的shell
为ash
,在chroot
后会因为找到替代的ash
而切换失败,需要替换的shell
为bash
,通过$SHELL
环境变量可以查看当前的shell
:
echo $SHELL
如果已经是/bin/bash
,则无需手动安装,否则需要使用opkg
安装bash
并手动设置:
opkg update && opkg install bash
随后可以开始安装debian
替代,假设放置路径为/debian
,版本使用debian10 (buster),构架使用arm64,配置。然后修改/etc/passwd
中根行的/bin/ash
为/bin/bash
立即。清华源:
opkg install debootstrap
mkdir /debian
debootstrap --arch=arm64 buster /debian http://mirrors.tuna.tsinghua.edu.cn/debian
debootstrap
将重置安装完毕后,需手动将/proc
,/sys
,/dev
添加到目录的目录中:
mount -o bind /proc/debian/proc
mount -o bind /sys/debian/sys
mount -o bind /dev/debian/dev
mount -o bind /dev/pts/debian/dev/pts
注意,重启后上述挂载目录重置,需要重新挂载,当然也可以添加到OpenWRT的启动脚本中。
之后就可以使用chroot
切换到debian
环境了:
chroot /debian
如果需要将这个切换的终端在后台保持,可配合screen
命令(可使用opkg install screen
安装)使用:
screen -S myterminal
chroot /debian
之后可通过点击Ctrl + A后再点击D将终端切换回后台。再使用
screen -r myterminal
返回该终端。使用屏幕将终端搁置到后台后,当前登录的终端即使退出了,debian
中的程序仍会保持在后台运行,这样就可以在debian
中配置桌面和vnc
,再从外部连接到该桌面了。
安装xfce4
桌面和vncserver
:
apt-get update && apt-get upgrade -y
apt-get install xfce4 tightvncserver
安装完成后配置vncserver
:
先直接运行vncserver
以生成配置文件,这里将要求设置vnc
的连接密码,此部分日志记录如下:
root@RLink:~# vncserver
You will require a password to access your desktops.
Password:
Warning: password truncated to the length of 8.
Verify:
Would you like to enter a view-only password (y/n)? n
xauth: file /root/.Xauthority does not exist
xauth: (argv):1: bad display name "RLink:1" in "add" command
xauth: file /root/.Xauthority does not exist
New 'X' desktop is RLink:1
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/RLink:1.log
之后会初始化创建:1(端口5901),已可以使用vnc登录,但是并不显示桌面。故需先进入桌面kill
掉:
vncserver -kill :1
然后修改启动脚本:在〜/.vnc/xstartup
中添加一行:startxfce4&
使该文件应为如下内容:
#!/bin/sh
xrdb $HOME/.Xresources
xsetroot -solid grey
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
# Fix to make GNOME work
export XKL_XMODMAP_DISABLE=1
/etc/X11/Xsession
startxfce4 &
之后再次运行vncserver,即可从外部连接到该桌面了。该终端可使用Ctrl + A,D搁置到后台,保持程序继续运行。
如果需要调整分辨率,可以在运行vncserver
时指定分辨率,如:
vncserver -geometry 1920x1080
如果桌面的虚拟终端无法打开(常见的情况为安装时未安装虚拟终端),可以在终端中安装xfce4-terminal
。
如果出现文本显示问题,可以安装locales
之后通过dpkg-reconfigure locales
重新配置编码方式,一般选择UTF-8即可,以生成相关配置文件,之后将export LANG = C.UTF-8
写入〜/ .profile
文件中,并源.profile
进行修改,再重新打开桌面。之后需要安装相应的字体文件,可以通过apt安装(如apt-get install fonts-wqy-zenhei
),也可以将其他字体拷贝到/usr/share/fonts/truetype/
下即可。
【补充】
如果提示无法更改语言环境,则说明该控件的语言配置与主系统不符,或其他语言的配置出现问题。
在局域网中先安装语言环境,再使用dpkg-reconfigure
重新配置locale
即可:
apt-get update && apt-get install locales
dpkg-reconfigure locale
按照主系统中相同的配置即可。通常可在生成配置一栏上进行en_US.UTF-8
和zh_CN.UTF-8
,然后在语言环境中选择C.UTF-8
就可以。
网友评论