温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ArchLinux 2020安装的示例分析

发布时间:2021-10-21 17:16:01 来源:亿速云 阅读:160 作者:柒染 栏目:编程语言

本篇文章为大家展示了ArchLinux 2020安装的示例分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

ArchLinux 2020 安装总结

2020-4-1

今年我开始全面使用 ArchLinux 系统,这个系统比较小巧,安装过程自己控制的内容更多,减少很多不必要的麻烦,也更符合我自己的使用习惯。 我最喜欢它的原因有三条:

  • ArchLinux 的源很完善,使用起来很方便,能解决很多偏门的难题(相对于 centos ),比如我的 Apple MAC mini 的无线网卡、蓝牙驱动问题, 都能在 ArchLinux 中得到解决。

  • ArchLinux 拥有专用的中文源——ArchLinuxcn,对中国人来说就是福利,很多我们习惯的软件都能在此找到,比如搜狗拼音输入法。

  • ArchLinux 的 wiki 很完善,而且有中文翻译,很多问题都可以在那儿找到答案。

我不仅在 MAC mini 上安装,把我的 Thinkpad 笔记本、DIY 的台式机都安装了 ArchLinux 系统,都很好用。 我的 MAC mini 上次没有安装好无线网卡驱动、蓝牙驱动,自己没弄好,把网卡也弄乱了,所以这次重装了 MAC mini 上的 ArchLinux 系统,这次用 的是 ArchLinux 2020-02-01,安装过程和上次记下的 ArchLinux 2018-01-01 有一些不同,记录下来,是为总结。

准备工作

下载 ArchLinux,并刻录至 U 盘(暂定为/dev/sdb),刻录前应该把 U 盘上全部分区都删除掉,直接刻录:

# dd if=/path/to/archlinux-x86_64-2020.02.01.iso  of=/dev/sdb  bs=4M

系统安装

  1. 将刻录好的 U 盘插入计算机,启动时选择从 U 盘启动,对于 MAC mini 是开机时不停按 Alt 键,选择从 U 盘启动:

  2. 按默认项进入系统安装界面,此时进入了一个启动好的 ArchLinux Live 系统,以此为起点安装 ArchLinux 系统,依次完成:

  • 设置键盘布局,按默认布局即可;

  • 验证启动模式

       # ls /sys/firmware/efi/efivars

    该目录下有文件即为 EFI 启动模式,MAC mini 和其他电脑都是 EFI 模式启动。

  • 连接互联网,此时没有驱动 MAC mini 的无线网卡,只能用手机开热点,通过 USB 共享网络,在 MAC mini 上效果如下:

    # ip addr show      // 能看到手机通过 USB 共享的网络接口——enp0s20u8
    # dhcpcd enp0s20u8


  • 更新系统时间

    # timedatectl set-ntp ture


  • 建立磁盘分区,fdisk 或 parted 均可。分区时需要注意:/ 和/usr 需要在一个分区之上,否则会报错,系统无法正常启动; EFI 启动模式 需要 ESP 分区,不用太大,128MB即可,必须格式化为 FAT 格式。如果安装多系统,需要先安装其他系统(MAC OS X,Windows),再安装 ArchLinux 系统,而且,安装过程中不要碰其他系统的分区。

    #  mkfs.vfat -F 32 /dev/sda4   
    #  mkfs.ext4 /dev/sda5
    #  mkfs.ext4 /dev/sda6
    #  mkfs.ext4 /dev/sda7
    #  mkfs.swap /dev/sda8
    ...


  • 挂载磁盘分区,需要按顺序挂载,先挂载 / 分区,再挂载 / 之下的其他分区,启用 swap 分区:

    #  mount -t ext4 /dev/sda7 /mnt        // 将 / 分区挂载到ArchLinux Live 系统的 /mnt 目录,作为新系统的根分区;
    #  mkdir /mnt/boot /mnt/home
    #  mount -t ext4 /dev/sdb6 /mnt/home   // boot, home 一定要建立在 mnt 目录下,而且是挂载 / 分区之后
    #  mount -t ext4 /dev/sdb5 /mnt/boot
    #  mkdir /mnt/efi                      // efi 目录一定建立在 /mnt/boot 目录下,而且建立在 /mnt/boot 挂载磁盘之后
    #  mount -t vfat /dev/sda4 /mnt/boot/efi
    #  swapon  /dev/sda8                   // 启动swap 分区

    挂载过程一定要按照顺序执行,否则只是在 Live 系统的目录中建立目录,或挂载在 Live 系统的目录中,如果操作是在 Live 系统中, 关机后一切都不会写入磁盘,系统一定安装不正确。 ESP 分区也一定要挂载在 /dev/sda5 分区(挂载为/boot 目录)下的 efi 目录中, 否则无法启动。

  • 选择镜像源,编辑 /etc/pacman.d/mirrorlist 文件,把中国的源保留即可,其他均删除

    #  vim /etc/pacman.d/mirrorlist


  • 查看 fstab 文件是否能正常生成,如果正常再继续安装过程,否则安装过程就是无效的:

    #  genfstab -U /mnt

    查看输出中: /, /home, /boot, /boot/efi, swap 几个分区是否正常挂载,如果挂载异常,重新查看磁盘分区、挂载过程是否出错。

  • 安装基础系统:

    #  pacstrap /mnt base linux linux-firmware


  • 生成 fstab 文件:

    #  genfstab -U /mnt >> /mnt/etc/fstab


  • chroot 进入新系统

    #  arch-chroot /mnt


  • 安装必要的软件:

    #  pacman -S dhcpcd vim   // 下面会用到 vim, 重启后连接网络需要 dhcpcd


  • 设置时区及时钟

    #  ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    #  hwclock  --systohc


  • 本地化设置,在仅有终端环境时应该只设置英语字符,此时无法显示中文:

    #  vim /etc/locale.gen   // 仅保留以下内容
       en_US.UTF-8 UTF-8
       zh_CN.UTF-8 UTF-8
    #  locale-gen
    # echo LANG=en_US.UTF-8 > /etc/locale.conf


  • 设置 root 密码:

    #  passwd root


  • 设置主机名称:

    #  echo Arch > /etc/hostname   // 我的系统名称:Arch
    #  vim /etc/hosts              // 添加以下内容:
       127.0.0.1	Arch
       ::1	localhost
       127.0.1.1  Arch.localdomain	Arch


  • initramfs 重新生成,一般不需要,我也没有执行这一步:

    #  mkinitcpio -p linux


  • 安装grub, intel-ucode, efibootmgr,并生成启动脚本:

    #  pacman -S grub efibootmgr
    #  grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub
    #  pacman -S intel-ucode
    #  grub-mkconfig -o /boot/grub/grub.cfg


  1. 系统安装完毕,退出chroot,卸载 /mnt 目录下的文件系统,重启 Live 系统:

#  exit               // 退出chroot
#  sync
#  umount -R /mnt
#  sync
#  shutdown -r now

安装后的设置

系统重启后,选择从硬盘启动,此时进入新安装的 ArchLinux 系统,进行安装后的设置。

  1. 添加用户

#  groupadd coder
#  useradd -g coder -m coder     // -g coder 加入 coder 组, -m 创建 /home/coder 目录作为 coder 用户家目录
#  passwd coder
  1. 安装并启用 gnome 桌面环境:

#  pacman -S gnome
# systemctl enable gdm.service     // 启用 gnome 桌面环境
#  shutdown -r now

提示安装很多软件,仅仅把 evince(PDF浏览器), gnome-photos(图片管理程序), eog(图片查看器), gnome-terminal, gnome-setting(设置), gnome-keyring, gnome-control-center(管理中心),gdm(图形启动器) gnome-menus(gnome 菜单),nautilus(图形化管理文件程序,类似windows 文件夹), 这几个软件选择即可,其他的软件根据依赖关系会自动安装。

  1. 此时应该能够看到正常的桌面环境了,但都是英语,需要安装中文字体:

# pacman -S tty-arphic-ukai
settings->zone&language -> add 中文、中文输入法

从 gnome 中 Logout,再次登录进入,应该是中文环境了。

  1. 安装无线网卡、蓝牙驱动。

#  lspci   // 查看所有的PCI 设备,能够看到 Broadcom BCM4360 802.11AC Wireless Network Adapter...,能查看到是 BCM4360[14e4:43a0]具体型号,
 #      // 此型号设备对应的驱动模块是 broadcom-wl,该模块就在 comunity 库中
#  pacman -S broadcom-wl   // 是不是非常简单,记得在 ArchLinux 2018 中都没有这么简单,在 centos 中更是无法安装
#  shutdown -r now         // 重启后就看到无线网卡了
  1. 安装 tmux 分屏器:

#  pacman -S chromium
#  pacman -S tmux
#  vim /etc/tmux.conf        // 添加以下内容
   # Turn off the status line.
   set -g status off

   # Change the prefix keys from C-b to Alt-x
   unbind C-b
   set -g prefix M-x
   # Change the prefix '%' to '-' to split windown horizon
   unbind %
   bind - split-window -v
   # Change the prefix '"' to '\' to split window vertical
   unbind '"'
   bind \\ split-window -h
   # Set windown control mode to vi
   set-window-option -g mode-keys vi
  1. 启用 archlinuxcn 源:

#  vim /etc/pacman.conf                 // 在[comunity]栏下增加以下内容
   [archlinuxcn]
   Include = /etc/pacman.d/archlinuxcn 
   Architecture = x86_64               // 将原来的 auto 改为我自己的 x86_64 架构
#  vim /etc/pacman.d/archlinuxcn       // 增加以下源
   ## China
   Server = http://mirrors.163.com/archlinux-cn/x86_64
   ## China
   Server = http://mirrors.zju.edu.cn/archlinuxcn/x86_64
   ## China
   Server = http://mirrors.cqu.edu.cn/archlinuxcn/x86_64
   ## China
   Server = http://mirrors.neusoft.edu.cn/archlinuxcn/x86_64
   ## China
   Server = http://mirror.lzu.edu.cn/archlinuxcn/x86_64
#  pacman -Sy                         // 更新源文件
#  pacman -S archlinuxcn-keyring      // 启动ArchLinuxcn 源
  1. 安装拼音输入法

#  pacman -S 
#  pacman -S fcitx-lilydjwg-git fcitx-sogoupinyin
#  pacman -S fcitx-configtool fcitx-qt5
#  vim /etc/environment    // 添加以下内容
   GTK_IM_MODULE=fcitx
   QT_IM_MODULE=fcitx
   XMODIFIERS="@im=fcitx"

如果不愿意用sogou 输入法,也可以安装 rime 输入法,据说这是更好的输入法框架 此时不安装fcitx 框架,安装 ibus 框架

  # pacman -S ibus ibus-rime   // 刚安装完rime,需要设置中文输入法,我选择明月拼音输入法
  #vim .bashrc                 // 增加以下三行即可设置中文输入法为ibus框架
	export GTK_IM_MODULE=ibus
	export XMODIFIERS=@im=ibus
	export QT_IM_MODULE=ibus  
   // 刚开始用 ibus-rime 时,默认繁体中文,需要改为简体中文
  # vim /home/coder/.config/ibus/rime/build/default.yaml
  schema\_list:
  \- schema: luna\_pinyin\_simp   // 这是简体拼音,放在第一行即可
  \- schema: luna\_pinyin
  1. 安装百度脑图、chromium 浏览器

#  pacman -S desktop-naotu
#  pacman -S chromium
#  echo alias naotu='desktop-naotu' >> /etc/bash.bashrc
  1. 设置MAC OS X,Windows 启动项:

  # vim /etc/grub.d/40_custom
     menuentrt 'MAX OS X' {
    	exit
     }
     menuentry 'window 7' {
	insmod part_gpt
	insmod fat
	set root='hd0,gpt1'   // windows 分区
	chainloader /EFI/Microsoft/Boot/bootmgfw.efi
     }
  #  grub-mkconfig -o /boot/grub/grub.cfg
  1. 设置有线网卡

  # vim /etc/systemd/network/name-of-network-adpter.network
	[Match]
	Name=enp3s0

	[Network]
	Address=192.168.1.3/24
	Gateway=192.168.1.254
  # systemctl restart systemd-networkd.service   // 重启网络服务,网卡配置文件立即生效
  1. 调整普通用户 bash 提示符从'$'到 '>'

# vim ~/.bashrc
  PS1='[\u@\h \W]>
  1. 添加键盘快捷键 设置->键盘快捷键:

    将F1 系统设置,F2 chromium 浏览器,F3 gnome-terminal,F6 主目录

  2. 安装 git, gitbook

# pacman -S git nodejs npm
# npm install -g gitbook
# npm install -g gitbook-cli    // 此时报错,/usr/bin/gitbook 已经存在。。。
# rm /usr/bin/gitbook
# npm install -g gitbook-cli
# gitbook -V                   // 应该在联网环境下执行该命令
	CLI version 2.3.2
	Installing Gitbook 3.2.3
	TypeError: cb.apply is not a function.
		at /usr/lib/node_modules/gitbook-cli/node_modules/npm/node_modules/graceful-fs/polyfills.js

	//我不知道具体原因是为什么,但好像是nodejs版本、npm版本与Gitbook版本之间有不一致。
# vim /usr/lib/node\_modules/gitbook-cli/node\_modules/npm/node\_modules/graceful-fs/polyfills.js
	//注释掉 62-64 3行代码即可
	//	fs.stat=statFix(fs.stat)
	//	fs.fstat=statFix(fs.fstat)
	//	fs.lstat=statFix(fs.lstat)
# gitbook -V                   // 第一次执行该命令需要联网
# gitbook serve                // 第一次执行该命令需要联网,也比较慢
#   vim book.json                // 放在写文档的目录下
  {
      "title"  : "XXX",
      "author" : "Gitbooker",
      "description" :"Write",
      "plugins": [             // 增加插件
              "chapter-fold",  // 目录折叠插件
              "todo"           // 列待办事项插件
      ]
 }
#gitbook install               // 配置文件中增加了插件,需执行该命令
  1. 安装 man 手册、中文 man 手册:

#  pacman -S man-pages
#  pacman -S man-pages-zh\_cn
  1. 命令行连接无线网络

#  pacman -S wpa\_supplicant      // 安装无线连接软件
#  wpa\_passphrase  SSID  Password > /etc/wpa\_supplicant/SSID.conf
#  ip link set wlp2s0 up
#  wpa\_supplicant -B -i wlp2s0 -c /etc/wpa\_supplicant/SSID.conf
#  dhcpcd wlp2s0

也可以写一个 shell script 来完成这些工作。

  #!/bin/bash

  if [ $UID -ne 0 ];
  then
	echo " Permission denied, only root can execute this script."
	exit
  fi

  ip link set wlp2s0 up
  wpa_supplicant -B -i wlp2s0 -c /etc/wpa_supplicant/MATE9.conf
  dhcpcd wlp2s0
  exit
  1. 启用蓝牙连接:

# systemctl enable bluetooth.service
  1. 设置 gnome-terminal: 我个人非常喜欢 tty-liberation 字体,但不知道为什么总是无法在 terminal 里面正常使用,所以选择了 Source Code Pro Regular, 但经过对比 Source Code Pro Regular 和 Liberation Mono Regular 字形很相近,但行间距更大一点,所以选择用 Source Code Pro Regular. 这款字体也基本满足了我的需要,字体大小为14号,颜色选择黑底绿字,滚动选择不显示滚动条。这些都是我的使用习惯。

如果gnome-termianl 不支持 Source Code Pro Regular 字体,那么安装gnome-tweaks 优化。 # pacman -S gnome-tweak

打开优化,在字体栏设置 Source Code Pro Regular。此时,不选gnome-terminal中的自选字体,自动应用gnome-tweaks 中的字体和字号。

调整gnome-terminal配色:

gnome-terminal -> 配置文件首选项-> 颜色 -> 黑底绿字

设置终端ls颜色,区分各种文件

   # vim /etc/bash.bashrc
     alias ls=`ls --color=auto`
  1. 设置ssh,允许其他机器以ssh 方式登录本机

# systemctl enable sshd.service  // 开启该服务,下次重启生效 
# systemctl start  sshd.service  // 启动该服务,立即生效
# systemctl status sshd.service  // 查看服务状态
  1. 读取手机文件 手机以MTP方式连接计算机,同时计算机支持读取MTP设备文件即可。

   # pacman -S mtpfs android-file-transfer
  1. 设置iptables 防火墙

 # systemctl disable iptables.service  // 关闭防火墙,默认状态也时关闭

上述内容就是ArchLinux 2020安装的示例分析,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI