Alpine Linux的半自动安装和桌面、远程登录、frp、aria2服务等的配置(CSDN摘抄)
起因:因为购买的VPS内存只有512M,运行桌面的话占用的内存太大,远程登录的话会非常难以操作,因此这里进行了轻量化安装
零、 半自动安装,手动分区,指定swap区的大小
- # 先安装分区和格式化工具。 不用apk update ,此时还没有网络
- apk add parted e2fsprogs # 若安装不了,则等设置完apk源,再次运行 rc-service networking restart 和 apk update后再装
- # 设置键盘布局
- setup-keymap us us
- # 设置主机名称,立即启用
- setup-hostname vbox
- rc-service hostname restart
- # 配置网卡、网络,重新启动网络
- setup-interfaces
- rc-service networking restart
- # 配置DNS。 可选项,可以不设置
- setup-dns
- # 设置时区
- setup-timezone
- # 设置apk源,当前52 是aliyun
- setup-apkrepos
- # 设置安装后系统的root账户的密码
- passwd
- # 安装并设置ssh服务,默认允许root远程登录
- setup-sshd
- # 测试是否启用了UEFI,一般不会启用
- test -d /sys/firmware/efi && echo UEFI || echo BIOS
- ## 显示 BIOS
- alias p=”parted -sa optimal /dev/sda” ## 设置parted的快捷简写方式
- p mklabel msdos ## 设置分区表为 MBR格式
- p mkpart p 512B 268MB ## boot分区大小,实际是255M
- p mkpart p 268MB 1024MB ## swap 分区大小
- p mkpart p 1024MB 100% ## 剩余的空间全部用于了 /
- p set 1 boot ## 将第1分区的标签设置为了boot
- mkfs.ext4 /dev/sda1 ## 将第1分区格式化为了ext4文件系统
- mkswap /dev/sda2 ## 将第2分区设置为了交换区域
- mkfs.ext4 /dev/sda3 ## 将第3分区格式化为了ext4文件系统
- # 挂载分区
- mount /dev/sda3 /mnt
- mkdir /mnt/boot
- mount /dev/sda1 /mnt/boot
- swapon /dev/sda2
- # 硬盘分区挂载完成后,启动安装
- setup-disk /mnt
- # 安装完成后重启
- reboot


补充: 经过上述安装过程后,启动时swap分区无法自动挂载,需要 rc-update add swap ,并配置 /etc/fstab 这个文件才行
- ls -l /dev/disk/by-uuid
- # 查看 /dev/sda2 的 UUID
- # 编辑 /etc/fstab
- vim /etc/fstab ## 增加以下内容在最后一行
- UUID= abce********6789 none swap sw 0 0
- ## 添加 swap服务开启自启动
- rc-update add swap
- ## 重启
- reboot
- ## 查看
- free -h

一、 安装xfce4桌面
按照wiki中的说法,需要完成4个前置步骤: 1.安装alpine Linux→2.设置非root账户→3.启用community源→4.安装Xorg
1.1 这里假设我们已经完成了自动最小化安装,则从第3步开始
- apk update
- apk add vim
- vim /etc/apk/repositories ## 将含有community的行前的 # 注释符去掉即可
- setup-xorg-base ## 将会自动安装所需的软件
1.2 安装显卡驱动。根据wiki说明来选择安装方式
Alpine setup scripts - Alpine Linux

例如,在virtualbox 中,需要安装 xf86-video-vboxvideo ,同时还要安装 VirtualBox guest additions
根据测试,需要将apk的repos文件中的所有源前面的#号去掉,才能找到xf86-video-vboxvideo
- apk add xf86-video-vboxvideo
- apk add virtualbox-guest-additions
- apk add virtualbox-guest-additions-x11
- rc-update add virtualbox-drm-client default
1.3 安装xfce4 软件
- apk add xfce4 xfce4-terminal xfce4-screensaver lightdm-gtk-greeter dbus
- rc-service dbus start
- rc-update add dbus
- setup-devd udev
1.4 启动xfce4
- ## A. 使用窗口管理器-lightdm启动
- rc-service lightdm start
- rc-update add lightdm
- ## B. 命令行启动
- startx
1.5 安装后所占空间和桌面效果


1.6 设置允许从xfce4 桌面环境进行关闭和重启
默认是无法以图形化进行关闭和重启的

- apk add elogind polkit-elogind
- lbu commit
- reboot
二、 安装i3窗口管理器
按照前面1.1-1.2完成前置操作,之后进行以下操作
2.3 正式安装i3
- apk add i3wm i3status xterm dbus
- rc-service dbus start
- rc-update add dbus
- setup-devd udev
- # 添加字体
- apk add terminus-font
- # 安装 dmenu
- apk add dmenu
2.4 启动i3
startx /usr/bin/i3
三、安装中文字体
默认情况下,不安装额外的字体,会造成中文乱码。这里增加了一些字体。安装完成后重启,再启动浏览器就可以正常显示了
- apk update
- apk add font-wqy-zenhei font-dejavu perl-font-ttf
exec –no-startup-id fcitx5 -d
四、 安装xrdp远程桌面服务
4.1 在安装和使用xrdp前,要先设定好startx 命令默认启动哪个桌面和窗口管理器
- vim /home/userA/.xinitrc
- # 内容只有一行
- exec i3
4.2 安装和启动xrdp
- # 安装软件
- apk add xrdp xorgxrdp
- # 启动服务。 (一般需要先打开桌面环境)
- rc-service xrdp start
- rc-service xrdp-sesman start
- # 默认使用的3389端口。 直接用Windwos系统自带的远程桌面工具进行连接
- # 测试成功后,可以将服务配置为开机自动启动
- rc-update add xrdp
- rc-update add xrdp-sesman
4.3 修改xrdp的默认端口,规避VPS对常用端口的封堵
- /etc/xrdp/xrdp.ini
- ## 将[globals]标签下的port=3389,修改为你想要的端口即可
- ## 重启服务
- rc-service xrdp restart
- rc-service xrdp-sesman restart
五、安装输入法
经过测试,无法在i3环境下运行输入法。 Alpine 对中文输入法的支持还存在较大问题。使用ibus框架的也没有成功!!!
apk add fcitx5 fcitx5-configtool fcitx5-chinese-addons fcitx5-chinese-addons-dev fcitx5-chinese-addons-lang
六、 更改主机名
- #直接编辑配置文件
- vim /etc/hostname
- # 修改完后启用
- hostname -F /etc/hostname
七、编译安装apk源中没有的软件
- apk update
- apk add wget gcc g++ make
- wget https://www.download.com/software.tar.gz
- tar -xf software.tar.gz
- cd software
- ./configure
- make; make install
八、安装和配置aria2
8.1 安装
- ## 一定要先打开akp源中的 community
- apk update
- apk add aria2
8.2 编辑配置文件
- mkdir /etc/aria2/
- vim /etc/aria2/aria2.conf
- ## 配置文件的内容
- # 配置断点续传功能和以daemon进行运行
- continue=true
- daemon=true
- ## 启用RPC功能和监听端口
- enable-rpc=true
- #rpc-allow-origin-all
- rpc-listen-all=true
- rpc-listen-port=6800
- ## 指定下载参数
- dir=/home/WD500G/Download
- file-allocation=none
- #input-file=${HOME}/.aria2/input.conf
- log-level=warn
- max-connection-per-server=6
- min-split-size=5M
- #on-download-complete=exit
- max-overall-upload-limit=16K
- max-upload-limit=8K
- seed-time=1

8.3 编辑 aria2 服务
- vim /etc/init.d/aria2
- #### 内容如下#####
- #!/sbin/openrc-run
- name=”aria2”
- command=”/usr/bin/aria2c”
- command_args=”–conf-path=/etc/aria2/aria2.conf”
- #command_background=true
- depend() {
- after sshd
- }
8.4为aria2 文件指定可运行属性,加入开机自启动服务
- chmod +x /etc/init.d/aria2
- rc-update add aria2
- rc-service aria2 start
- rc-service aria2 restart
九、配置frp服务
9.1 安装
- apk update
- apk add frp
- ## 注意,是安装frp。 安装完成后 frps、frpc 都在 /usr/bin/ 中
9.2 替换升级
因为 Alpine Linux 的apk库里面的frp版本比较老,但我们肯定是想用最新版本,同时还想保持其作为系统自身安装和管理的服务,所以直接下载最新版本,然后覆盖即可。
- tar -zxvf frp_0.48.tar.gz
- cp frp_0.48/frpc /use/bin/
- cp frp_0.48/frps /use/bin/
- # 查看一下是否是新版本
- frpc -v
9.3 编辑配置文件
- mkdir /etc/frp
- vim /etc/frp/frpc.ini
- # 具体配置内容看 frp官网说明
看一下 frpc的启动文件的内容
- cat /etc/init.d/frpc
- ##内容如下:
- #!/sbin/openrc-run
- name=frpc
- description=”frp client”
- command=”/usr/bin/$name”
- supervisor=supervise-daemon
- : ${cfgfile:=/etc/frp/$RC_SVCNAME.ini}
- command_args=”-c $cfgfile”
- pidfile=”/run/$RC_SVCNAME.pid”
- extra_started_commands=”reload”
- description_reload=”Reload configuration”
- : ${respawn_delay:=5}
- : ${respawn_max:=0}
- depend() {
- need net
- after firewall
- }
- reload() {
- frpc reload -c $cfgfile

9.3 启动frpc服务,将其加入开机自启动
- rc-update add frpc
- rc-service frpc start/restart/stop
十. 磁盘扩容
- apk add e2fsprogs-extra
- resize2fs -p /dev/sda3