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
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...