ArchLinux 2020 安裝總結

ArchLinux 2020 安裝總結

2020-4-1node

今年我開始全面使用 ArchLinux 系統,這個系統比較小巧,安裝過程本身控制的內容更多,減小不少沒必要要的麻煩,也更符合我本身的使用習慣。 我最喜歡它的緣由有三條:linux

  • 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 有一些不一樣,記錄下來,是爲總結。android

準備工做

下載 ArchLinux,並刻錄至 U 盤(暫定爲/dev/sdb),刻錄前應該把 U 盤上所有分區都刪除掉,直接刻錄:git

# 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 系統,進行安裝後的設置。shell

  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 文件夾), 這幾個軟件選擇便可,其餘的軟件根據依賴關係會自動安裝。npm

  1. 此時應該可以看到正常的桌面環境了,但都是英語,須要安裝中文字體:
# pacman -S tty-arphic-ukai
settings->zone&language -> add 中文、中文輸入法

從 gnome 中 Logout,再次登陸進入,應該是中文環境了。json

  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 框架vim

# 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. 添加鍵盤快捷鍵 設置->鍵盤快捷鍵:windows

    將F1 系統設置,F2 chromium 瀏覽器,F3 gnome-terminal,F6 主目錄centos

  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  // 關閉防火牆,默認狀態也時關閉
相關文章
相關標籤/搜索