前言:

最近折腾Linux上瘾了,上一篇使用CentOS 7+lightdm+Openbox+Chromium打造单功能用途电脑(大屏展示电脑)搞完之后感觉还是受限于CentOS底层设计本身就是当服务器用的,所以启动速度并不是特别理想,还是想找个更轻量的底层系统解决方案.虽然之前也折腾过不少次TinyCoreLinux,不过tcz库里面的可以直接拿来用的包真是少得可怜,而且不同版本之间还不通用,想换个桌面环境都很捉急,也就跑点简单的服务还凑活.

回到下面要开始实验的主角:ArchLinux,其实这个发行版老早以前就玩耍过了,当时也是看有很多"软文"各种安利ArchLinux有多好多好,经过N次尝试挑战+N次半途而废,这货一点都不友好好吧~最基本的系统安装连个GUI界面都尼玛没有,啥都得自己撸代码搞.好吧~我承认上次撸代码装Linux已经是10年前在学校宿舍的故事了,现在随便一个发行版都会自带图形界面安装向导了,最不济的也得是个TUI向导,显然这也把人都给惯懒了...

讲真,这次撸完ArchLinux的感觉就像当年终于耐着性子看权利的游戏前两集一样,果然那么多人都说好的东西不是没有道理的.一旦 熟耐着性子坚持两集后根本就停不下来了.ArchLinux这货确实有过人之处,基本上感觉系统安装过程就是像堆积木一样,虽然过程是麻烦了点,但是保证完全是可以按照你的想法量身打造,不带一点肥肉的精瘦系统,再加上无比强大的官方repo满足你的一切想象,用来打造单功能用途PC简直不能再合适了!

ok,闲聊结束,还是在VirtualBox里面,开始撸~

1.分区

# cfdisk

选dos(MBR)分区表类型

分两个区,一个swap,一个挂/,记得把挂/的分区设置为bootable

格式化分区

# mkswap /dev/sda1
# mkfs.ext4 /dev/sda2

挂载分区

# mount /dev/sda2 /mnt

2.配置网络

使用netctl+配置文件

# ifconfig   //先查看链接名称,例如enp0s3
# ifconfig enp0s3 down   //down掉当前的链接
# cp /etc/netctl/examples/ethernet-static /etc/netctl     //从模板复制配置文件
# vim /etc/netctl/ethernet-static    //编辑配置文件内容如下

# netctl list   //查看配置文件列表
# netctl start ethernet-static   //启用配置
# netctl enable ethernet-static   //设置开机自动启动

3.安装基本系统

# vim /etc/pacman.d/mirrorlist
使用163的镜像源,首行插入
Server = http://mirrors.163.com/archlinux/$repo/os/$arch
# pacman -Sy    //刷新缓存
# pacstrap -K /mnt base linux linux-firmware    //安装base基础包
# genfstab -U -p /mnt >> /mnt/etc/fstab    //生成fstab文件
# arch-chroot /mnt    //切换到本地硬盘root

设置locale本地化

# vi /etc/locale.gen     //反注释:zh_CN.UTF-8 UTF-8

设置时区

# timedatectl set-timezone Asia/Shanghai

开启ntp自动同步时间

# timedatectl set-ntp true

设置主机名hostname

# echo ArchLin > /etc/hostname

设置root密码

# passwd

创建普通用户

# useradd -m -g users -s /bin/bash lpwm    //添加普通用户
# passwd lpwm    //设置普通用户密码

安装GRUB

# pacman -S grub
# grub-install /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg

完成安装,重启进入GRUB引导程序~

4.安装自定义功能的程序包

# pacman -S openssh xorg-server openbox lightdm lightdm-gtk-greeter chromium wqy-microhei xfce4-terminal

程序包说明:

  • openssh用来开启远程SSH连接管理
  • xorg-server openbox lightdm用来开启图形桌面支持
  • lightdm-gtk-greeter这个包是进入图形界面的登陆框组件,如果不安装的话就无法使用lightdm
  • chromium不用解释了,浏览器
  • wqy-microhei文泉驿的中文字体,后面xfce4-terminal里面需要用到这个字体对应的mono等宽字体
  • xfce4-terminal是图形桌面里面用到的虚拟终端,不用再Ctrl+Alt+F2切换控制台了

为openbox添加xfce4-terminal菜单

# vi /etc/xdg/openbox/menu.xml

找到 <separator label="Openbox"/> 下面加入如下内容:

<item label="xfce4-terminal">
        <action name="Execute">
            <command>xfce4-terminal</command>
        </action>
</item>

设置xfce4-terminal显示字体

默认安装完成后运行xfce4-terminal显示的字体都是挤在一起的

需要改一下字体,Edit-Preference

改完后显示正常:

设置系统启动自动登陆lpwm用户

# groupadd -r autologin			//添加自动登录用户组
# gpasswd -a lpwm autologin		//将用户lpwm添加到该组
# vi /etc/lightdm/lightdm.conf
在[Seat:*]节点下面找到这一行取消注释并加上用户名
autologin-user=lpwm  
			//添加自动登录用户组
# gpasswd -a lpwm autologin		//将用户lpwm添加到该组
# vi /etc/lightdm/lightdm.conf
在[Seat:*]节点下面找到这一行取消注释并加上用户名
autologin-user=lpwm  

设置系统启动自动进入GUI图形界面

# systemctl enable lightdm

5.配置SSH远程管理

# vi /etc/ssh/sshd_config
找到#PermitRootLogin prohibit-password 改为
PermitRootLogin yes
# systemctl enable sshd
# systemctl start sshd

6.设置Chromium开机自动全屏启动

# vi /etc/xdg/openbox/autostart
添加内容:
chromium --no-sandbox --disable-infobars --disable-suggestions-service --disable-save-password-bubble --incognito --kiosk http://www.baidu.com

启动Chromium的参数说明

其实上面写的有点多了,像--disable-translate这个参数在新版本的Chromium中被弃用了,目前总结真正用到的是

--no-sandbox:可以允许root用户运行Chromium
--disable-infobars:屏蔽信息栏(但是还会显示非正常关闭后的恢复提示)
--incognito:进入无痕浏览模式(不保存历史纪录等相关session信息,可以屏蔽非正常关机后的恢复提示,见下图

--kiosk:全屏显示
最后跟要访问的url地址参数就行了

关于屏蔽翻译提示框的说明:

因为在Chromium 66以上版本中屏蔽掉了之前能用的那个--disable-translate参数,所以目前的办法是在Chromium的设置中关闭这个功能:

7.开启声音支持

# pacman -S pulseaudio ponymix

默认装完后是没有启动声音后台服务的,可以直接运行下面命令开启声音支持,或者重启电脑会自动开启

# pulseaudio --start    //启动声音服务后默认是静音状态,需要用ponymix来unmute一下,再increase到100

声音控制方法:

# ponymix    //这个是CLI控制音量工具,直接执行显示当前声音设备和音量
# ponymix mute     //静音
# ponymix unmute    //取消静音
# ponymix increase 100    //加大音量100%
# ponymix decrease 50    //减小音量50%

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐