8种机械键盘轴体对比
本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?
内容: 安装arch linux系统全过程
精华: 完全原创, 亲自安装, 解释很详细!!
以下所有markdown行内代码是实际要运行的, 不用运行的都以普通文本形式展现
以下代码都是我刚装好Arch后按照记忆和资料手动打的, 不是copy, 所以可能有我没注意的错误, 如果有的话敬请斧正
以下只是简单做到跑出桌面环境, 很多可有可无的细节配置都没有
比如配置触摸板, 配置输入法, 配置有线连接, 配置普通用户等
分区
lsblk或者df都能列出存储设备开始分区: gdisk /dev/sda
p查看分区情况: p
o创建GPT分区表: o
n创建分区: n
回车默认第一分区: 回车
回车默认承接上一分区最后柱面: 回车
512M分配给boot: +512M 回车
接下来hex什么的不晓得干嘛: 回车
n创建第二分区17G给根目录
第三分区剩下所有给swap
格式化分区
格式化为FAT32格式: mkfs.fat -F32 /dev/sda1
FAT32缺点虽然多, 但是好在各大系统都兼容, 所以经常来放些各个系统交互的东西
这里作为EFI挂载点, 大概是叫做ESI分区
格式化为ext4: mkfs.ext4 /dev/sda2
一般目录都格式化为ext4
格式化为swap: mkswap /dev/sda3
一般只用到这三种格式化
挂载分区
mount /dev/sda2 /mnt
把硬盘第二分区挂在到 /mnt
硬盘第二分区是要作为硬盘linux系统的根目录
现在映射到iso文件内的linux系统的/mnt
接下来往iso的linux系统的/mnt传输系统文件, 也就是把硬盘linux系统的根目录安装好了
挂载到/mnt是惯例, 只要不挂在/就好, 因为挂载/的话, iso的linux系统的所有东西就都用不了了
mkdir -p /mnt/boot在硬盘根目录, 也就是iso的linux系统的/mnt目录创建/boot文件夹
mkdir -p /mnt/boot/efi生成efi目录
mount /dev/sda1 /mnt/boot/efi
挂载efi哦, 不是boot,要不然会错
我了解了下efi文件结构, 不过还是没明白为什么是挂载efi目录而不是boot
swapon /dev/sda3这是挂载swap分区的方法
df或者lsblk查看分区情况
free查看swap情况
往/dev/sda2里注入arch系统
安装系统是在线进行的
没网自行百度
添加源
nano /etc/pacman.d/mirrorlist修改一下源
添加几个国内源
Server = http://mirrors.163.com/archlinux/$repo/os/$arch
Server = http://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
nano编辑器按Ctrl+x可以退出
更新源: pacman -Syy
下载安装部署arch
pacstrap /mnt base base-devel
/mnt是硬盘根目录挂载点
base是基本软件(连vim都没…)
base-devel是拓展软件, 可以不加
这一步会在/mnt/boot里写入几个东西的
所以上面一定要挂载/mnt/boot/efi
要不然挂错了boot, umount, 重新mount efi, 这一步写入的文件就隐藏了
我试过umount前cp到/tmp
可是mount efi后/tmp里居然也找不到, 很邪门, 不理解, 明白的人麻烦指点一下迷津
生成分区表
genfstab -U -p /mnt >> /mnt/etc/fstab
fstab这个文件开机自动加载
里面是一些硬盘挂载信息
可以帮你自动挂载硬盘
要不然一开机硬盘就都umount了
生成后查看一下fstab文件是否每个盘都挂好了
没好自行百度
前面的UUID不是必须的使用label也可以(label就是/dev/sda1这样子)
UUID是唯一标示, 换硬盘/dev/sda1就映射到新硬盘的第一分区
而UUID找不到, 无法映射
进入硬盘Linux系统设置
arch-chroot /mnt /bin/bash
chroot是进入某个Linux系统, 并且使用里面的shell
而cd /mnt是进入这个linux系统, 使用的仍然是iso文件的Linux系统的shell
大概区别就是cd的话配置的文件是针对iso Linux的
chroot配置的才是针对硬盘Linux的
/bin/bash是使用bash 不加的话使用sh
设置区域配置
nano /etc/locale.gen
这个东西里有很多关于区域设置的选项
语言/时区什么的
去掉这三个前面的#号
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_CN GB2312
locale-gen生成区域配置
echo LANG=en_US.UTF-8 > /etc/locale.conf设置默认区域配置
RAM
mkinitcpio -p linux不知道干嘛的
设置root的密码
passwd
安装引导程序
注意了, 引导程序是在硬盘linux系统里安装
这里选用grub, 据说system boot简单但是wiki说有什么缺点, 好像是只能运行efi程序(听不懂…)
pacman -S dosfstools grub efibootmgr
下载grub,有些人只下了grub,我没试过,这是官方的
grub-install –target=x86_64-efi –efi-directory=--bootloader-id=grub
比如
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub
这里注意了, 因为现在是在硬盘linux系统了
所以是/boot/efi不是/mnt/boot/efi
这里我也不明白, 我还以为引导程序要安在/boot目录下呢, 可是试了几次, 只有/boot/efi才行
反正就是对于efi文件结构和grub关系很混乱, 也找不到什么相关资料
grub-mkconfig -o /boot/grub/grub.cfg
这个是按在/boot目录下, 不用在/efi
网络
我上面完了直接重启
重启后我遇到问题就是上不了网
执行以下命令后就可以了
dhcpcd
但是reboot后就要重新dhcpcd
以下是有人说的, 没试过
systemctl enable dhcpcd.service
在现在这个位置执行(也就是grub-mkconfig后, 感觉其实就是还在arch-chroot时执行)
然后如果要用wifi, 要安装以下, 否则重启后无法联网
重启后连不了网也就无法下载安装, 所以现在安好
pacman -S iw wpa_supplicant dialog
退回iso的linux系统
exit退回
umount -R /mnt卸载根目录挂载点
这一步看着没用, 官方说是可以看看会不会出什么错方便调整, 没细究
reboot重启
现在iso可以卸载了, grub负责引导到硬盘linux系统了
如果不能进确认自己一开始挂载的是/mnt/boot/efi而不是/mnt/boot
grub-install的是/boot/efi而不是/boot
grub-mkconfig的是/boot而不是/boot/efi
要是都对了……..不好意思…..我小白….没辙…..
这里也有个问题很迷不明白
就是我一开始几次安措了, 重启后grub引导失败
我挂载, 然后arch-chroot
进入/boot重新安装引导
结果!!!发现/boot下居然是空的!!!
然后更奇怪的 他说我/boot/efi不是EFI分区该有的格式(也就是FAT32)
奇葩, 不明白, 退回去df查看的确是FAT32呀
就算重新mkfs.fat -F32也没用, 就是说我不是EFI分区该有的格式
我还试过换一个引导程序, 也报错说不是EFI分区该有的格式
懂得大佬请指点
以上参考了
桌面环境
安装显卡驱动
lspci | grep VGA确认自己显卡型号
pacman -S
# # 官方仓库提供的驱动包:
# # +----------------------+--------------------+--------------+
# # | | 开源 | 私有 |
# # +----------------------+--------------------+--------------+
# # | 通用 | xf86-video-vesa | |
# # +----------------------+--------------------+--------------+
# # | Intel | xf86-video-intel | |
# # +--------+-------------+--------------------+--------------+
# # | | GeForce 9+ | | nvidia |
# # + +-------------+ +--------------+
# # | nVidia | GeForce 8/9 | xf86-video-nouveau | nvidia-340xx |
# # + +-------------+ +--------------+
# # | | GeForce 6/7 | | nvidia-304xx |
# # +--------+-------------+--------------------+--------------+
# # | AMD/ATI | xf86-video-ati | |
# # +----------------------+--------------------+--------------+
我是VM安装, VM显卡是个…..额….记不住了,反正不是N卡A卡
我安装了通用的
pacman -S xf86-video-vesa
安装Xorg
pacman -S Xorg
这里我没弄清
查到的资料简单来说: Xorg是其他所有桌面环境(Gnome/KDE/Xfce等)的基础框架
所以按这样子来说必须要先安装Xorg, 网上也有人肯定了我的想法
但是官方安装文档里没有安装Xorg, 直接安了桌面环境, 懂得大佬请指点
还有就是有些人是
pacman -S xorg-server xorg-xinit xorg-utils xorg-server-utils mesa
说只要安好这些核心组件就好了, 不用安装所有Xorg
但是这里几个组件我都找不到……….
所以就全安了
pacman -S xorg-twm xorg-xclock xterm
这个说是测试X工作是否正常
我是安了这个才能进入Gnome, 要不然进不了, Xfce倒是没受影响
接下来startx就可以看到一个简陋的图形界面了
这就是Xorg提供的基础图形界面, 其他桌面环境的基础框架(大概就是基本的人机交互吧)
安装Xfce
pacman -S xfce4 xfce4-goodies
如果上面startx进入了简陋界面, 先reboot重启一下(要不然打开Xfce, Xfce和Xorg会重叠)
重启后startxfec4就能进入xfce4桌面环境了
安装Gnome
一个桌面环境就够了, 我是想都看看
pacman -S gnome gnome-extra
nano ~/.xinitrc
添加一行exec gnome-session
Ctrl+x保存退出
startx
这里startx命令是先会去~/.xinitrc找看看要执行什么
就启动成功了
以上参考了
安装到U盘
参考资料
我是安装到U盘成功了, 不过没有立即整理成笔记, 现在已经忘了怎么搞的…..捂脸………
肯定是按照上面两篇文章中的一个, 然后记得安到U盘只是在grub命令时, 命令不一样而已