ArchLinux 安裝筆記

来源:https://www.cnblogs.com/junbaor/archive/2018/09/02/8722384.html
-Advertisement-
Play Games

前言 在開始之前,請在心中默念三遍: Arch Linux 是世界上最好的發行版, 我一定能掌握她. 環境 VM ware + UEFI + 500G 虛擬磁碟 + 2G 記憶體 + 橋接網路 下載鏡像 進入這裡挑個最新的就好, https://mirrors.tuna.tsinghua.edu.cn ...


### 前言 在開始之前,請在心中默念三遍: **Arch Linux 是世界上最好的發行版, 我一定能掌握她.** ### 環境 VM ware + UEFI + 500G 虛擬磁碟 + 2G 記憶體 + 橋接網路 ### 下載鏡像 進入這裡挑個最新的就好, https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/ 我下載的是 https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/2018.01.01/archlinux-2018.01.01-x86_64.iso ### 測試網路 `ping baidu.com` ### 對時 `timedatectl set-ntp true` ### 分區 常用分區工具有 `fdisk / gdisk / parted`. fdisk 不支持 gpt, parted 不太完善, UEFI 啟動最好搭配 GPT 格式的磁碟, 所以這裡我們採用 gdisk **分區規劃** 分區 | 空間 ---- | --- EFI | 500 M Boot | 500 M / | 硬碟剩餘空間 **使用 gdisk 分區** 執行 `fdisk -l` 或者 `lsblk` 查看硬碟設備名 執行 `gdisk /dev/sda` 開始分區, `dev/sda` 是硬碟設備名 輸入 n 新建分區 詢問分表號, 預設 1 , 可直接回車 詢問分區開始位置, 可直接回車 詢問分區結束為止, 輸入 `+500M` 回車 詢問分區表格式, 預設是 `Linux filesystem`, 由於第一個分區我們用來當作 efi 分區 ,需要 `EFI System` 格式,所以我們需要輸入 L 來查詢分區表格式的代號, 輸入 L 後未發現 `EFI System`, 再次按回車查詢更多, 此時, 我們就能發現 `EFI System` 的代號叫 `ef00` 輸入 `ef00` 回車, 第一個分區就已經完成了。 輸入 n 新建分區 詢問分表號, 預設 2 , 可直接回車 詢問分區開始位置, 可直接回車 詢問分區結束為止, 輸入 `+500M` 回車 詢問分區表格式, 預設是 `Linux filesystem`, 由於第二個分區我們用來當做 boot 分區, 所以可直接回車 第二個分區就已經完成了。 輸入 n 新建分區 詢問分表號, 預設 3 , 可直接回車 詢問分區開始位置, 可直接回車 詢問分區結束為止, 這裡我們是使用硬碟剩餘的所有空間, 所以可直接回車 詢問分區表格式, 預設是 `Linux filesystem`, 由於第三個分區我們用來當做 / 根分區, 所以可直接回車 第三個分區就已經完成了。 輸入 p 回車可查看分區表格式, 更多命令可以自行查詢 輸入 wq 回車, 再輸入 Y 保存分區表並退出 `gdisk` 交互模式 至此, 硬碟分區完成 使用 `fdisk -l` 可以查看硬碟分區信息, 記住分區名稱以備後用 ### 格式化 執行命令時會有詢問, 輸入 Y 或者預設值即可 ``` mkfs.vfat -F32 /dev/sda1 mkfs.ext4 /dev/sda2 mkfs.ext4 /dev/sda3 ``` ### 掛載 ``` mount /dev/sda3 /mnt mkdir -p /mnt/boot mount /dev/sda2 /mnt/boot mkdir -p /mnt/boot/efi mount /dev/sda2 /mnt/boot/efi ``` ### 修改鏡像地址 這一步是可選的, 只是為了安裝時從網路下載文件時能更快 ``` cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak vim /etc/pacman.d/mirrorlist ``` 把第一個鏡像地址設置為 `Server = http://mirrors.tuna.tsinghua.efu.cn/archlinux/$repo/os/$arch` ### 安裝基礎包 只要 base 即可, 我習慣把引導工具和必要的軟體一塊裝進去 ``` pacstrap /mnt base base-devel vim grub efibootmgr ``` ### 生成 genfstab ``` genfstab -U /mnt >> /mnt/etc/fstab ``` ### Chroot 進入新系統 ``` arch-chroot /mnt ``` ### 設置時區 設置為國內上海時區 ``` ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime ``` 同步硬體時鐘 ``` hwclock --systohc ``` ### 設置地區 編輯 /etc/locale.gen 取消註釋 ``` vim /etc/locale.gen ``` 取消下麵兩行的註釋後保存 ``` en_US.UTF-8 UTF-8 zh_CN.UTF-8 UTF-8 ``` ``` locale-gen ``` 編輯 /etc/locale.conf , 添加一行, 個人喜歡英文, 如果樂意設置為 zh_CN.UTF-8 也可以 ``` LANG=en_US.UTF-8 ``` ### 主機名 ``` vim /etc/hostname ``` 把主機名寫進去, 我這裡寫入的是 arch 還要記得修改 /etc/hosts 文件 ``` 127.0.0.1 arch ``` ### 設置密碼 ``` passwd root ``` 連續輸入兩次 root 密碼 ### 啟動載入器 ``` bash grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck grub-mkconfig -o /boot/grub/grub.cfg ``` ### 退出重啟 退出 chroot 模式, 卸載 /mnt 後重啟 ``` exit umount -R /mnt reboot ``` ### 聯網 如果開機後沒有網路可以啟動 dhcpcd 服務 ``` systemctl start dhcpcd systemctl enable dhcpcd ``` ### 安裝 openssh ``` pacman -Sy openssh systemctl restart sshd systemctl enable sshd ``` 已經啟動 ssh 服務並加入開機自啟, 預設是不允許 root 遠程登錄的, 可以修改配置或者再添加一個普通用戶 ### 添加常規用戶 添加 wheel 組的許可權 ``` visudo ``` 取消這一行的註釋 ``` %wheel ALL=(ALL) ALL ``` 添加一個普通用戶 junbaor 到 junbaor、wheel 組 ``` groupadd junbaor useradd -m -g junbaor -G wheel junbaor passwd junbaor ``` > 現在就可以使用 xshell 之類的工具連接 ArchLinux 使用普通用戶登錄了. `ip addr` 可以查看虛擬機 IP ### 安裝 Oh My Zsh ``` sudo pacman -Sy zsh git sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" ``` > 好了, 你現在已經擁有了世界上最好的 Linux 發行版和世界上最好的 Shell 終端. ### 修複 Home、End 鍵 你會發現使用 zsh 後, 鍵盤的 Home\End 鍵失效了, 在 `~/.zshrc` 文件下添加下麵兩行可以解決 ``` bindkey '\e[1~' beginning-of-line bindkey '\e[4~' end-of-line ``` 使配置立刻生效 ``` source ~/.zshrc ``` ### 添加 ArchlinuxCN 源 > 參考:https://mirrors.tuna.tsinghua.edu.cn/help/archlinuxcn/ 在 `/etc/pacman.conf` 文件末尾添加以下兩行: ``` [archlinuxcn] Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch ``` 再安裝 archlinuxcn-keyring 包導入 GPG key ``` sudo pacman -Syy sudo pacman -S archlinuxcn-keyring ``` ### 安裝桌面字體 我們安裝 kde 桌面, 比垃圾 gnome 好多了 ``` sudo pacman -S plasma-desktop kde-l10n-zh_cn konsole sddm kscreen dolphin wqy-microhei ``` plasma-desktop 是 kde 的桌面程式, kde-l10n-zh_cn 是中文語言包, konsole 是一個終端, 不然進入桌面後可能沒有輸入命令的地方, sddm 是登陸管理器, 先這麼理解就對了, 你也可以安裝多個桌面使用 sddm 登陸時進行切換, 第一次進入系統是英文, 切到中文後會出現方塊字, 所以最好安裝一下 wqy-microhei, 它是一款文泉微米黑中文字體, 顯示效果還可以, kscreen 是一個可選的安裝, 不裝的話系統設置裡面不能調整解析度. dolphin 是 kde 套件中的文件管理器 別的教程可能和這裡不一樣, 不用擔心, Arch 本來就十分靈活, 千人千面, 等自己能熟練掌握後就能隨意 DIY . 新人裝桌面可能會遇到一個叫 xorg 的玩意兒, 先不用管, 咱們不用安裝, plasma-desktop 裡面已經自動依賴。 有的教程裡面會讓安裝一個叫做 `kde-applications` 的東西, 這玩意兒包含了一大堆軟體(比如計算器)並不一定能用到, 不怕臃腫的話也可以裝, 進入桌面後想裝的話也來得及. 上面我只安裝了一個 konsole 終端和 kscreen 設置. 這兩個也都包含在 kde-applications 內. 安裝完成後, 啟動 sddm 服務就可以看到登錄界面, 登陸後就可以看到賊雞兒酷炫的桌面了, 為了下次開機直接進入桌面可以把 sddm 服務設置成開機自啟. ``` sudo systemctl start sddm sudo systemctl enable sddm ``` ### 效果圖 辛苦一番, 看一下階段性成果 ![](https://ws1.sinaimg.cn/large/d6246196ly1fnkox3o7jyj21hc0u0aww.jpg) 終端裡面的 Arch 圖標是 `screenfetch` 命令顯示的, 想玩的話記得安裝一下 ### 安裝 Chrome 由於我們之前配置了 ArchLinuxCN 源, 所以可以很方便的安裝 ``` pacman -S google-chrome ``` 點擊左下角直接鍵入 chrome 即可搜索出應用, 或者使用全局查找, 啟動後記得在任務欄固定一下方便下次使用 ### 安裝中文輸入法 官方 wiki 有問題, 經實踐這樣是可以的. ``` sudo pacman -S fcitx-im fcitx-sunpinyin fcitx-cloudpinyin kcm-fcitx ``` 新建 `~/.xprofile` 文件追加下麵三行: ``` export GTK_IM_MODULE=fcitx export QT_IM_MODULE=fcitx export XMODIFIERS="@im=fcitx" ``` kcm-fcitx 是輸入法的 GUI 配置界面 , 和 kde 桌面配合完美
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 實驗說明: 實驗環境: 宿主機系統 :Fedora 28 WorkStation 虛擬機管理器 :Virt-Manager 1.5.1 虛擬機配置 :ha1 CentOS 7.2 1511 (minimal) virbr0: 192.168.122.57 ha2 CentOS 7.2 1511 (m ...
  • 實現雙主模型的ngnix高可用(一)準備:主機7台client:172.18.x.x調度器:keepalived+nginx 帶172.18.x.x/16 網卡192.168.234.27192.168.234.37real_server192.168.234.47192.168.234.57192... ...
  • 想必大家都用過命令行工具來完成一些騷操作; 今天我在用cmd命令的時候,需要切換不同的目錄來獲取我所需要的文件,但是發現用cd的話切換不了; 如下圖所示,我用cd切換到E盤下的一個文件夾,但是按回車之後並沒有成功(=_=忽略掉world單詞沒有寫對); 然後就在網上查了一下發現用cmd命令行切換目錄 ...
  • 1.下載 Tomcat 9 CentOS 7 下創建目錄並下載文件: 或者官網下載 tomcat 9 ,並上傳到 /usr/local/tomcat 目錄下 官網下載地址:https://tomcat.apache.org/download-90.cgi 2.解壓安裝 tomcat 9 文件 3.配 ...
  • 進程調用 exit() 退出執行後,被設置為僵死狀態,這時父進程可以通過 wait4() 系統調用查詢子進程是否終結,之後再進行最後的操作,徹底刪除進程所占用的記憶體資源。 wait4() 系統調用由 linux 內核實現,linux 系統通常提供了 wait()、waitpid()、wait3()、 ...
  • linux或者OS X系統中,使用“dd”命令可以直接在終端命令行模式下,製作ISO鏡像的系統安裝盤. 一、linux系統以centOS7為例. 鏡像路徑: ISO格式的鏡像文件存放位置 USB路徑: /dev/sdb 這裡要註意的是: (1)USB設備不能已經掛載到其它目錄,否則會提示出錯.如果系 ...
  • MAC中ROOT用戶很少用到,有時又手賤,給設了密碼,過一陣忘了密碼,很尷尬😅 分享個小技巧: 在MAC開機讀條之前按住“ command + S ”,會進入字元界面,按照提示,依次輸入下麵3條命令: 1. /sbin/fsck -fy #回車後等待出現“#”提示符 2. /sbin/mount ...
  • 一、測試環境 OS version: CentOS Linux release 7.5.1804 (Core) docker cluster : master 1 + data node 4 docker version: 1.13.1 二、材料準備 1. dockerfile 文件,如下 /opt ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...