2015年8月11日 星期二

Linux - 簡易安裝 Arch Linux 教學

5 則留言:
 

與大多數的linux不同,Arch Linux不提供step by step的安裝程式,使用者必須手動安裝。Arch Linux官方wiki有完整的安裝指南,這裡擷取最少的步驟來達到簡易安裝 Arch Linux 的目的。

手動安裝Arch Linux的程序是首先開機進入官網提供的live cd,使用者在live cd上處理好硬碟分割格式化、下載檔案等步驟後chroot進硬碟進行設定,設定完後退出重開機便有一個全新的Arch Linux。




分割硬碟
指令:cgdisk /dev/sda 
目的:分割硬碟,使用 cgdisk 建立 GPT 分割區
說明:
  • 此步驟決定一顆硬碟要分多少塊分割區,每個分割區所歸屬的系統目錄為何。從分割區到目錄的映射 (通常被稱為「掛載點」) 叫做分割計畫。
  • 分割時需要在 GUID 分割表 (GPT) 主開機記錄 (MBR) 中擇一使用。全新安裝的場合下建議使用比較先進的 GPT。記住,從 MBR 或 GPT 任選一項進行,不要同時選擇它們!在本文中,使用bios+gpt的開機組合,其他可能的組合為bios+mbr或uefi+gpt。
細節:
  • 根目錄(root):選擇 New (或按 N) – Enter 默認第一個磁區 (2048) – 輸入 15G – Enter 默認預設十六進位代碼 (8300) – Enter 默認空白分割區名稱。
  • 家目錄(home):按數次下鍵,將光標移動至較大的可用空間。選擇 New (或按 N) – Enter 默認第一個磁區 – Enter 使用剩餘的硬碟空間 (或是輸入想要的大小:例如 30G) – Enter 默認預設十六進位代碼 (8300) – Enter 默認空白分割區名稱。


[用心去感覺] 使用 lsblk 指令
使用 lsblk 指令列出與系統連接的硬碟,以及其存在分割區的大小。這能幫您確認分割的硬碟是否正確,添點信心。





格式化硬碟
指令:
  • mkfs.ext4 /dev/sda1 
  • mkfs.ext4 /dev/sda2
目的:格式化前一步驟做好的分割區。




掛載硬碟
指令:
  • mount /dev/sda1 /mnt 
  • mkdir /mnt/home
  • mount /dev/sda2 /mnt/home
目的:使live cd能寫入硬碟內容。
說明:每個分割區都有一個分別用的數字後綴。舉例來說,sda1 代表硬碟的第一個分割區,至於 sda 則代表整顆硬碟。不要在同一個目錄掛載兩個以上的分割區。另外,掛載的順序十分重要,請保持謹慎。





四、設定鏡像站
指令:vim /etc/pacman.d/mirrorlist,並輸入
##
## Arch Linux repository mirrorlist
## Generated on 2015-08-10
##
## Taiwan
Server = http://archlinux.cs.nctu.edu.tw/$repo/os/$arch
Server = http://shadow.ind.ntou.edu.tw/archlinux/$repo/os/$arch
Server = http://ftp.tku.edu.tw/Linux/ArchLinux/$repo/os/$arch
Server = http://ftp.yzu.edu.tw/Linux/archlinux/$repo/os/$arch
目的:把最想使用的鏡像站擺在最前面。
說明:安裝之前先編輯 mirrorlist。這份 mirrorlist 文件,pacstrap會複製一份並安裝到新系統內,所以最好現在就設定完成。

[用心去感覺]  pacman -Syy
之後每當您更改了鏡像站的清單,記得使用 pacman -Syy 重整軟體包清單,使它們能一致地更新。




下載檔案
指令:pacstrap /mnt base
目的:下載Arch Linux的檔案至硬碟(會花一些時間)。




建立新系統的fstab
指令:genfstab -p -U /mnt > /mnt/etc/fstab
目的:使新系統開機時能正確掛載硬碟。
說明:建立/mnt/etc/fstab(新系統的/etc),fstab描述硬碟分割區與掛載方式,新系統開機時會依檔案內容掛載分割區。我們將使用 UUID,因為它有一定的優點。





chroot到新系統
指令:arch-chroot /mnt
目的:進入新系統以進行後續設定。
說明:arch-chroot是Arch Linux live cd版的chroot。從這個步驟開始所有的指令都在新系統下面進行。live cd的/mnt從現在開始變成你所看到的/。




設定電腦名稱
指令:echo arch > /etc/hostname
目的:建立名稱並寫入hostname到/etc/hostname。
說明:arch是你的hostname,即這台電腦的名字,請以喜歡的名字取代。




設定時區
指令:ln -s /usr/share/zoneinfo/Asia/Taipei /etc/localtime
目的:同標題。
說明:時區設定決定了電腦硬體時鐘與系統時間的關係,linux預設硬體時間為utc,然而Windows預設使用本地時間。如果兩系統共存是必要的,則可以用 timedatectl set-local-rtc true
要求linux把硬體時間理解為本地時間。




設定系統語言
指令:
  • 修改/etc/locale.gen的內容(進入vim界面):vim /etc/locale.gen,拿掉#的項目如下
    • en_US.UTF-8 UTF-8
    • zh_CN.UTF-8 UTF-8
    • zh_TW.UTF-8 UTF-8
  • 產生locale檔案 :locale-gen
  • 建立/etc/locale.conf(進入vi界面):vim /etc/locale.conf
    • 設定英文為系統預設語言LANG="en_US.UTF-8"
目的:同標題。
說明:修改locale.gen與建立locale.conf這兩個檔案。locale-gen會讀取/dev/locale.gen以產生必要的語言檔案,使得程式可以正確處理英文與繁簡體中文。




建立開機映像
指令:mkinitcpio -p linux
目的:同標題。
說明:開機時initramfs會被載入記憶體執行,然後載入核心。




十二安裝並設定開機程式
指令:
  • pacman -S grub
  • grub-install --target=i386-pc --recheck /dev/sda --force
    將 /dev/sda 改成您安裝 Arch 的硬碟代號。不要加上分割區號碼 (不要使用 sdaX)。
  • grub-mkconfig -o /boot/grub/grub.cfg
目的:使新系統能自行啟動。
說明:BIOS 系統有數種開機載入程式可以使用,完整清單請參閱開機載入程式。請選擇對您而言最方便的一套。這裡我們舉出兩種作為範例:
  • Syslinux (目前) 限制只能從安裝系統的分割區內載入檔案。設定檔比較淺顯易懂。這裡有一份範例設定檔可供參考。
  • GRUB 的功能較為豐富,且支援更複雜的系統狀況。設定檔與 sh 腳本語言接近,對新手而言較難以手動編寫。建議自動產生一份設定檔。





十三退出chroot,重開機
指令:
  • 退出chroot回到live cd環境:exit
  • 重開機:reboot
目的:重開機後直接進入新系統。
說明:退出chroot環境移除安裝媒體後重開機。,若一切順利,重開機後會先看到grub,然後進入新裝好的Arch Linux,至此安裝作業已完成,好好享受Arch Linux的世界吧!





[補充] 使用router時的網路配置 - 用systemd-network
  • vim /etc/systemd/network/ens34.network
[Match]
Name=ens34
[Network]
Address=192.168.1.100/24
Gateway=192.168.1.1
  • vim /etc/systemd/resolved.conf
[Resolve]
DNS=114.114.114.114
  • rm -f /etc/resolv.conf
  • ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf 
  • systemctl disable netctl.service
  • systemctl enable systemd-networkd.service
  • systemctl enable systemd-resolved.service
  • reboot





References

Arch Linux - Beginners' Guide (正體中文)
https://wiki.archlinux.org/index.php/Beginners'_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)

Arch Linux:安裝系統
http://www.wlintmp.net/2014/02/arch-linux.html

wiki - Arch Linux
https://zh.wikipedia.org/wiki/Arch_Linux

Arch Linux (正體中文)
https://wiki.archlinux.org/index.php/Arch_Linux_%28%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87%29

The Arch Way (正體中文)
https://wiki.archlinux.org/index.php/The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)






5 則留言:

  1. 寫的很清楚耶~感謝分享
    之前要灌都沒成功QQ改天來試試

    回覆刪除
    回覆
    1. 加油~
      可以用虛擬機先試試看^^

      刪除
    2. 3Q

      想問你一下網誌的Pageviews是怎麼用的呀
      感覺滿漂亮的~
      因為我最近剛開始用wordpress寫網誌,想要放個計數器
      期待你的回覆

      刪除
    3. 我是用google的blogger服務所以和wordpress會不太一樣
      不過wordpress有很多widget的資源(比blogger多太多拉~)

      最近在用google analysis還滿不錯的,所以推薦這個widgetXD
      https://wordpress.org/plugins/google-analyticator/

      刪除
  2. 太棒拉~感謝你~
    我也有用GA,只是我是在All in one SEO這個外掛裡加入GA ID
    現在來裝看看google analyticator

    回覆刪除

技術提供:Blogger.