前言

早就听闻Arch Linux各种好用,天下无敌,但门槛也是极高的,于是打算先搞个虚拟机体验一下。
虚拟机选 Oracle VirtualBox 主要看上他免费,性能也不错,贴个官网地址,需要自行下载安装


参考资料
https://linux.cn/article-8305-1.html
https://wiki.archlinux.org/title/Installation_guide_(简体中文)


开始之前需要先安装完成 Oracle VirtualBox
https://www.virtualbox.org
以及下载iso镜
https://archlinux.org/download/



折腾


打开 Oracle VirtualBox ,点击 新建 , 类型选择Linux ,版本选择 Arch Linux x64 , 名称随便写


内存选择2048M ,你也可以根据电脑配置选择更高,如后期需要玩图形界面,可以给4096M


磁盘新建一个,推荐给到25G




启动容器,就会弹出框,选择镜像,按照图片里操作即可。
镜像开头说了,如果还没下载的话,点击下载地址 https://archlinux.org/download/



注意,从这里开始后面的都不能复制粘贴,里面也不支持鼠标,只能切换到里面以后,用键盘操作,命令要自己手打,注意空格


回车选择第一个即可


到这里开始打命令


使用命令

  1. fdisk -l

查看磁盘情况,我这里可以看到一个新的磁盘25G


使用命令

  1. cfdisk

分区
第一个选项选择 dos


这里先 依次选择 [NEW] 25G [primary] [BOOTABLE] [WRITE] , 输入 yes




最后选 [Quit] 退出


再次查看

  1. fdisk -l

多了一个新的设备,我这里的路径是/dev/sda1


格式化

  1. mkfs.ext4 /dev/sda1



挂载

  1. mount /dev/sda1 /mnt



安装基本软件包

  1. pacstrap /mnt base linux linux-firmware



用以下命令生成 fstab 文件 (用 -U 或 -L 选项设置UUID 或卷标)

  1. genfstab -U /mnt >> /mnt/etc/fstab


Change root 到新安装的系统:
arch-chroot /mnt


时区设为上海

  1. ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

然后运行 hwclock(8) 以生成 /etc/adjtime:

  1. hwclock --systohc



下一步是最迷惑的
要修改 /etc/locale.gen 文件
然后取消掉 en_US.UTF-8 UTF-8 和其他需要的 地区 前的注释(#)
(这里也有用en_GB.UTF-8的选择,好坏自己看官方wiki,地前留了)
BUT!!!
不让用 vi vim nano !!!
那我咋修改呢?


这里我查遍了百度也找不到方法,于是我只能继续用笨办法了
先用 more 看看里是不是全都是注释掉的

  1. more /etc/locale.gen

发现全部是 # 开头,说明没有打开的,那只要追加一行我需要的即可,要防止意外的话也可以复制一分backup,我就不麻烦了,直接追加
然后我这里还是用en_US作为系统默认语言,方便日志、系统文件都是英文,既可以百度谷歌出教程,也可以在命令行全英文操作,防止出现 /home/user/下载/acd.pdf 这种路径

  1. echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen


再用cat看下末尾一行是不是追加的内容即可搞定

  1. cat /etc/locale.gen



接着执行 locale-gen 以生成 locale 信息:

  1. locale-gen



然后创建 locale.conf(5) 文件,并 编辑设定 LANG 变量,比如:

  1. /etc/locale.conf
  2. LANG=en_US.UTF-8

OMG!! 又来了
不让用 vi vim nano !!!
那我咋创建呢?


继续试试 echo 能不能好使吧


果然好使 echo yyds


后面键盘布局啥的就不想折腾了
累了
直接搞定重要的就毁灭吧


设置root密码

  1. # 需要注意的是,你是看不见你自己输入的密码的,你输入的时候就理解这句话了,别以为卡了就行,是在输,就是不显示的
  2. passwd


设置主机名:

  1. echo "zzzmh" >> /etc/hostname


设置引导程序

  1. # 安装
  2. pacman S grub
  3. pacman S os-prober
  4. # 配置
  5. grub-install /dev/sda
  6. grub-mkconfig -o /boot/grub/grub.cfg



大功告成 重启下看看

  1. # 先退到外面
  2. exit
  3. # 再重启
  4. reboot


出现这个界面是因为优先走了ISO启动,这里说可以选择硬盘启动的,我的建议是先关闭,后移除ISO镜像,再启动


右击这个小光盘,移除镜像


我这里尝试直接Reboot 遇到问题
所以还是先操作虚拟机强制关闭
不能截图,简单说下凑活看
虚拟机窗口最上面,管理,退出,强制退出,OK


下图这里,右击,启动,正常启动


再启动
一切正常!!!


选择第一个

输入账号密码即可进入系统 (账号root 密码是刚才设置的)


就到这我折腾了一天你敢信



补充和纠错


补充修正几个错误
1. 昨天没有安装dhcpcd 导致无法联网,不能联网就不能安装dhcpcd
2. 其实应该安装vim之类的编辑程序

补救方法
先把去掉的光盘镜像加回来,重启


然后用命令进live系统
(这个是抢救系统神器,以后需要常备)

  1. # 用live系统挂载到内部系统
  2. mount /dev/sda1 /mnt
  3. arch-chroot /mnt
  4. # ping一下测试现在网络通不 (ctrl + c 停止)
  5. ping www.baidu.com
  6. # 安装关键程序 (dhcpcd是自动联网获取ip地址,没装的话开机无法联网,不能联网就不能安装任何东西)
  7. pacman -S dhcpcd
  8. pacman -S vim
  9. # 顺手补充一下,连wifi需要安装这个
  10. # pacman -S iwd
  11. # 用法参考这里 https://blog.csdn.net/r8l8q8/article/details/76516523
  12. # 设置开机启动
  13. systemctl enable dhcpcd

随后先关闭容器,再移除光盘镜像即可解决问题


还需要简单优化一下,避免无缘无故掉一些不起眼小坑

  1. sudo pacman -S pacman-mirrorlist
  2. sudo pacman -Syy



往死里折腾 !!!


肯定不能完事!必须把图形化也搞出来,找个既极简又傻瓜的图形化玩玩



https://blog.csdn.net/weixin_31569671/article/details/116709653
先新建一个用户
(我的用户名设置是zzzmh,你可以替换成你自己的)

  1. # 新建用户
  2. useradd zzzmh
  3. # 设置密码
  4. passwd zzzmh
  5. # 新建文件夹
  6. cd /home
  7. mkdir zzzmh
  8. chmod -R 777 zzzmh
  9. # 安装sudo(我才知道原来sudo也是需要安装的)
  10. pacman -S sudo
  11. # 安装完会出现权限配置文件
  12. vim /etc/sudoers
  13. # 找 root ALL=(ALL) ALL 加一行 配置结果看图
  14. zzzmh ALL=(ALL) ALL



把桌面安装上,这里直接参考教程
https://blog.csdn.net/r8l8q8/article/details/103889972

  1. # 虚拟机里就不需要显卡驱动了,直接开始安装
  2. # 安装X窗口系统
  3. pacman -S xorg-server
  4. # 安装sddm登录管理器
  5. pacman -S sddm
  6. systemctl enable sddm
  7. # 安装i3wm
  8. pacman -S i3-gaps
  9. # 安装终端
  10. pacman -S mate-terminal
  11. # 重启生效
  12. # 注意:重启之前必须先新建一个用户,因为不能选择root,导致没有用户没法选择一个用户进桌面
  13. reboot

最后再启动虚拟机即可进入桌面,选择一个用户,输入密码回车


这里会提示选择MOD键是super键(也就是windows键)还是alt键


这里遇到了首次进入桌面报错
status command not found or is missing a library dependecy


可以先不用管,先从i3入门开始学习吧
参考文档
https://i3wm.org/docs/userguide.html





我简单试了试

  • mod + enter 进终端
  • mod + d 执行程序


(这部分仅在虚拟机中才需要)
安装Oracle VirtualBox增强工具
可以实现内外共享剪切板,根据窗口动态分辨率等

  1. # 开启root
  2. su
  3. # 安装
  4. pacman -S virtualbox-guest-utils
  5. # 手动开启增强
  6. VBoxClient-all
  7. # 手动开启各种服务
  8. modprobe -a vboxguest vboxsf vboxvideo
  9. # 开机启动
  10. systemctl enable vboxservice
  11. # 重启再试
  12. reboot


安装第三方程序
https://www.cnblogs.com/tonyc/p/7739830.html

  1. vim /etc/pacman.conf
  2. # 末尾添加
  3. [archlinuxcn]
  4. Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
  5. # 安装archlinuxcn-keyring导入GPG key。
  6. pacman -Sy archlinuxcn-keyring
  7. # 同步软件包并安装yaourt
  8. pacman -Sy yaourt
  9. # 至此就可以安装第三方APP了
  10. # 比如chrome浏览器
  11. yaourt google-chrome
  12. # 这里出现多个结果(如下图) 我这里选择4 最符合我的需要
  13. 4
  14. # 之后会问是否修改 PKGBUILD 选否 n
  15. n


DAY 3 补

继续补充,这里需要给pacman和yaourt都切换到最快的源上,否则可能动不动就404
https://www.cnblogs.com/fb010001/p/12698142.html

  1. sudo pacman -Syy
  2. yaourt -Syua



END

参考资补充
https://blog.csdn.net/weixin_36250058/article/details/112713233
https://blog.csdn.net/r8l8q8/article/details/103889972
https://blog.csdn.net/weixin_31569671/article/details/116709653
https://blog.csdn.net/r8l8q8/article/details/76516523
https://www.cnblogs.com/fb010001/p/12698142.html





Arch Linux 从零安装 i3-wm 二周目 纯享版





前言

开头再用我现在的眼光,重新评价一下Arch Linux
如果把系统比喻做买新房子
我们普通人以前用过的所有系统,都是精装修房,拎包入住!
而Arch Linux将是你第一次体验毛坯房,可以自己”享受” 装修的”乐趣”,有的人是乐趣,有的人是折磨哈哈



一周目参考地址
https://leanote.zzzmh.cn/blog/post/61b025b4da74050013009a65

一周目,最后总结发现好多错误,边学边改,越写越复杂,干脆重开一个二周目+纯享版,再来一遍加深记,本篇内容与上一篇是大批量重复的,只是说这里已经修正了错误,且不再过多解释和不经常截图,只快速走命令



后面的内容依旧在虚拟机里跑
前半部分虚拟机的部分的教程
可以回去参考一周目
直接从进光盘live系统开始讲了



重点参考
https://wiki.archlinux.org/title/Installation_guide_(简体中文)



折腾

(虚拟机前期是不能复制的,只能照着手打,怕打错就多用tab补全)

  1. # 查看硬盘情况
  2. fdisk -l
  3. # 分区 第一个选dos
  4. cfdisk
  5. # 依次选择 [NEW] 25G [primary] [BOOTABLE] [WRITE]
  6. # 输入 yes
  7. # 选择[quit]
  8. # 这里按照我的习惯就全部分一个分区,swap后面再以文件方式搞
  9. # 再次查看硬盘情况 应该多一个device /dev/sda1
  10. fdisk -l
  11. # 格式化
  12. mkfs.ext4 /dev/sda1
  13. # 挂载
  14. mount /dev/sda1 /mnt
  15. # 安装系统和基本软件包
  16. # 这里重点说下 后面需要的东西都可以在这里装完 包括vim dhcpcd 省了很多麻烦
  17. pacstrap /mnt base linux linux-firmware vim dhcpcd
  18. # 生成 fstab 文件
  19. genfstab -U /mnt >> /mnt/etc/fstab
  20. # 进入新系统内
  21. arch-chroot /mnt
  22. # 设置时区
  23. ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  24. hwclock --systohc
  25. # 修改配置
  26. vim /etc/locale.gen
  27. # 去掉这一行的井号注释
  28. en_GB.UTF-8 UTF-8
  29. # 执行 locale-gen 以生成 locale 信息
  30. locale-gen
  31. # 新建配置文件
  32. vim /etc/locale.conf
  33. # 内容如下 保存退出
  34. LANG=en_GB.UTF-8
  35. # 新建配置文件
  36. vim /etc/hostname
  37. # 内容是你网络主机名(局域网显示的主机名称)
  38. # 结束后 保存退出
  39. zzzmh
  40. # 修改配置文件
  41. vim /etc/hosts
  42. # 新增这两行 保存退出
  43. 127.0.0.1 localhost
  44. ::1 localhost
  45. # 设置一个密码 (对于root)
  46. passwd
  47. # 最后补上引导程序
  48. # 安装
  49. pacman S grub
  50. pacman S os-prober
  51. # 配置
  52. grub-install /dev/sda
  53. grub-mkconfig -o /boot/grub/grub.cfg
  54. # 退出 arch-chroot
  55. exit
  56. # 手动移除光盘镜像(就是组下面光盘图标,点移除xxx)
  57. # 重启
  58. reboot



至此安装系统完成,一个空白arch系统
可以考虑备份下虚拟机磁盘



接下来需要安装软件、桌面程序、终端等等

  1. # 进入系统后用户名为 root 密码为上文设置的
  2. # dhcpcd还需要手动启动下,顺便这里就设为自启动
  3. systemctl start dhcpcd
  4. systemctl enable dhcpcd
  5. # 砍柴之前先磨刀,把pacman调整到最快镜像 最新数据
  6. pacman -S pacman-mirrorlist
  7. pacman -Syy
  8. # 新建用户 (用户名改为你自己的)
  9. useradd zzzmh
  10. # 设置密码
  11. passwd zzzmh
  12. # 新建文件夹
  13. mkdir /home/zzzmh/Downloads
  14. mkdir /home/zzzmh/Documents
  15. mkdir /home/zzzmh/Music
  16. mkdir /home/zzzmh/Videos
  17. mkdir /home/zzzmh/Pictures
  18. chmod -R 777 /home/zzzmh
  19. # 安装sudo(我才知道原来sudo也是需要安装的)
  20. pacman -S sudo
  21. # 安装完会出现权限配置文件
  22. vim /etc/sudoers
  23. # 找 root ALL=(ALL) ALL 加一行
  24. zzzmh ALL=(ALL) ALL
  25. # 这里保存要用wq! 强制保存
  26. # 试下效果
  27. # 退到登陆界面为止
  28. exit
  29. # 用户名用新建的
  30. zzzmh
  31. # 输入密码
  32. # 成功以普通权限进入系统
  33. # 使用sudo su命令即可开启root权限



安装第三方程序

  1. vim /etc/pacman.conf
  2. # 末尾添加
  3. [archlinuxcn]
  4. Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
  5. # 安装archlinuxcn-keyring导入GPG key。
  6. pacman -Sy archlinuxcn-keyring
  7. # 同步软件包并安装yaourt
  8. pacman -Sy yaourt
  9. # 更新下
  10. pacman -Syy
  11. yaourt -Syua

END

后续我就直接折腾到实体机上了,没办法截图,就省略过程了,反正之前这些搞一遍,再折腾实体机就不虚了