guest@blog.cmj.tw: ~/posts $

ArchLinux


commands

記錄一下會用到的幾個指令:

  • yaourt -Rns $(yaourt -Qtdq) # Delete unused packages
  • 遇到 invalid or corrupted package 可以執行下面指令更新所有使用到的 GPG Key yaourt -S archlinux-keyring
  • 遇到 conflicting files 時 (可能是另一個套件管理系統已經安裝),可以執行下面指令:yaourt -Syu --force
  • 遇到 Failed to determine user credentials 時可以執行下面指令:systemctl daemon-reexec

因為 yaourt 已經不被接受,所以將指定都改成原生 pacman

  • 遇到 Signature is unknown trust 執行 pacman-key --refresh-keys
    • 如果還是不行、依序執行
    • mv /etc/pacman.d/gnupg /etc/pacman.d/gnupg.bkp
    • pacman-key --init
    • pacman-key --populate archlinux
    • pacman -S archlinux-keyring

Reinstall

重新記錄一下安裝一個全新的 Linx 環境需要做的事情:

  1. 用 root 登入系統
  2. pacman -Syu 確定系統升級到最新
  3. 新增加一個使用者 USERadd USER -m /home/USER
    1. 增加到 wheel group usermod -aG wheel USER
    2. 更改權限 chown USER:USER /home/USER && chmo 700 /home/USER
    3. 更改密碼 passwd USER
  4. 安裝最基本套件 pacman -Syu sudo
    1. 加入 USER 到 sudo user 清單中 visudo
  5. 安裝必要環境 .rc 檔案
    1. 安裝 .profile
    2. 安裝 .vimrc
    3. 修改 hostname vim /etc/hostname
  6. 安裝 wireguard pacman -Sy wireguard-tools qrencode
  7. 安裝系統套件 0. 安裝基本環境 pacman -Sy git base-devel
    1. 安裝 yay git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -si
    2. 監控相關 pacman -Sy wget htop
    3. 安全相關 pacman -Sy fail2ban
    4. log 相關 pacman -Sy logrotate syslog-ng
    5. DNS 相關 pacman -Sy nss-mdns avahi dnsmasq bind-tools
    6. web 相關 pacman -Sy nginx
  8. 設定對外服務
    1. 設定 sshd:1) 常用帳號禁用密碼登入
    2. 設定 nginx