知其所以然:在 VirtualBox 里安裝 Arch Linux 操作系統(tǒng)

本文的寫作目的不只是提供一個流水線式的 Arch Linux 的安裝步驟俏橘,更希望通過一些簡單的講解使各位了解一些基本的 Linux 系統(tǒng)知識。即 “知其然施逾,知其所以然敷矫。”

在 VirtualBox 中安裝 Arch Linux 的主要步驟如下:

  1. 準備 VirtualBox汉额。
  2. 磁盤分區(qū)曹仗。
  3. 分區(qū)格式化。
  4. 配置安裝包鏡像源蠕搜。
  5. 掛載分區(qū)并安裝系統(tǒng)怎茫。
  6. 生成 fstab 文件。
  7. 配置系統(tǒng)選項妓灌。
  8. 安裝 Boot Loader轨蛤。

1. 準備 VirtualBox (VBox)

  • 在 VBox 中建立虛擬機項目,選擇適合你的電腦的配置參數(shù)虫埂。我選擇的是:處理器核心 x2祥山、內(nèi)存 2 GB、顯存 128 MB掉伏、硬盤空間 100 GB(動態(tài)分配)缝呕。
  • 在 VBox 中選擇:設置 -> 存儲 -> IDE 控制器中加載 Arch Linux 光盤鏡像澳窑。
  • 在 設置 -> 系統(tǒng) -> 啟動順序 里,選擇光盤優(yōu)先啟動供常。啟動系統(tǒng)摊聋,出現(xiàn)如下啟動畫面:
Arch Linux 啟動畫面
  • 選擇 Boot Arch Linux,開始安裝系統(tǒng)(注意我安裝的是32位的 Arch Linux)栈暇。

2. 磁盤分區(qū)與格式化

以 root 身份登錄系統(tǒng)麻裁。


第一次以 root 身份登陸

使用 lsblk 命令來查看當前的分區(qū)狀況:

使用 **lsblk** 命令查看分區(qū)情況

這里大小為 102 GB 的 sda 就是未分區(qū)、未格式化的原始硬盤空間源祈。其它部分是光盤啟動的 Arch Linux 系統(tǒng)的分區(qū)部分煎源,可忽略。

分區(qū)工具:使用官方指南中的 parted 工具和常用的 fdisk 工具都可以新博。這里使用有交互界面的 cfdisk 工具薪夕。注意為了后續(xù) Boot Loader 的安裝方便,我們選擇使用傳統(tǒng)的 MBR 分區(qū)表方案赫悄。所以在進入 cfdisk 之后,首先選擇 dos 選項馏慨,即使用 MBR 分區(qū)表方案埂淮。

使用 New 選項新建分區(qū),手動輸入分區(qū)大小写隶。我的分區(qū)方案為:啟動分區(qū) (boot) 250 MB倔撞,交換分區(qū) (swap) 2.2 GB (稍大于虛擬機的內(nèi)存容量),根目錄 ("/") 分區(qū) 99.6 GB慕趴,結(jié)果如下圖所示痪蝇。(你也可以為 "/home" 目錄建立單獨的分區(qū),方法與建立根目錄分區(qū)類似冕房,不再贅述躏啰。)

**cfdisk** 中的3分區(qū)方案

Arch Linux 社區(qū)中文安裝指南中有如下警告:

cfdisk 創(chuàng)建的第一個分區(qū)起始位置是63扇區(qū)而不是通常的2048扇區(qū)。這將會在 SSD 和使用高級格式化(4k 扇區(qū))的設備上造成性能問題耙册。

現(xiàn)在看來至少在使用 VBox 安裝 Linux 時可以忽略該警告给僵,因為第一個分區(qū)的起始扇區(qū)確實是 2048 而不是 63。因此也就不會發(fā)生 “因為硬盤沒有 4 K 扇區(qū)對齊而導致性能問題”详拙。

將 sda1 設為啟動分區(qū) (bootable) 帝际,將全部改動寫入分區(qū)表 (write 選項,輸入 yes饶辙,回車)蹲诀,然后退出 (quit) cfdisk 工具。

使用 lsblk 命令查詢分區(qū)狀況如下弃揽,分區(qū)成功脯爪!

分區(qū)結(jié)束后使用 **lsblk** 命令查詢分區(qū)狀況

3. 分區(qū)格式化

首先珊佣,格式化啟動與根目錄分區(qū):

mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/sda3

然后格式化交換分區(qū)

mkswap /dev/sda2

同時開啟交換分區(qū),為下面的 fstab 寫入做好準備 (后文詳述)披粟。

swapon /dev/sda2

4. 配置安裝包鏡像源

現(xiàn)在可以先 ping 一下網(wǎng)絡咒锻,VBox 應該已經(jīng)自動配置了聯(lián)網(wǎng)。

ping -c 3 114.114.114.114

因為系統(tǒng)安裝過程中要下載軟件安裝包守屉,所以選擇在國內(nèi)的鏡像源可以大大加快軟件下載和安裝的進度惑艇。我選擇了速度較快的浙大、中科大和 163 的鏡像源拇泛。Arch Linux 鏡像源的狀態(tài)可以在這里查看滨巴。

使用 nano 文本編輯器對鏡像源列表進行編輯:

nano /etc/pacman.d/mirrorlist

在文件中服務器列表的開頭部分添加:

## China
Server = http://mirrors.zju.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.163.com/archlinux/$repo/os/$arch

編輯完后的文件如下圖所示:


編輯后的鏡像源列表

文件編輯之后使用 Ctrl+x 進行保存(連續(xù)輸入:Ctrl+x,y俺叭,回車恭取;或者Ctrl+x,n熄守,回車:放棄保存)蜈垮。

在本機同步鏡像源數(shù)據(jù)庫,輸入:

pacman -Syy

5. 掛載分區(qū)并安裝系統(tǒng)

到現(xiàn)在為止裕照,我們的所有操作都是在光盤啟動的 Linux 系統(tǒng)中進行的攒发。下面要將真正的 Linux 系統(tǒng)文件安裝到虛擬機的硬盤中。前文中進行了分區(qū)與格式化之后的硬盤分區(qū)晋南,首先要經(jīng)過“掛載” (mount) 操作惠猿,才能夠供我們訪問。

首先掛載根目錄:

mount /dev/sda3 /mnt

在根目錄中創(chuàng)建啟動目錄 (boot)负间,并掛載它:

mkdir -p /mnt/boot
mount /dev/sda1 /mnt/boot

回到根目錄偶妖,現(xiàn)在終于可以把系統(tǒng)文件安裝到我們剛才創(chuàng)建的硬盤分區(qū)中去了。Arch Linux 團隊為此準備了專門的腳本工具 pacstrap政溃,執(zhí)行下面的命令以安裝系統(tǒng)文件:

pacstrap /mnt base base-devel

其中 /mnt 是當前根目錄所在的掛載點趾访,base 包中是最基本的 Linux 系統(tǒng)文件, base-devel 包中包含了一些常用的開發(fā)工具玩祟,建議同時安裝兩個包腹缩。

6. 生成 fstab 文件

為了讓系統(tǒng)能夠在每次重啟之后自動掛載各個分區(qū)(包括交換分區(qū)),我們需要把當前的分區(qū)掛載方式寫入到一個叫做 fstab 的文件中去空扎。執(zhí)行下面的腳本命令藏鹊,生成 Linux 系統(tǒng)需要的 fstab 文件:

genfstab -U -p /mnt >> /mnt/etc/fstab

記得檢查 fstab 文件的內(nèi)容,以確保萬無一失转锈。

more /mnt/etc/fstab

fstab 文件內(nèi)容

7. 配置系統(tǒng)選項

因為還沒有正確安裝 Boot Loader盘寡,所以現(xiàn)在我們還不能重新啟動系統(tǒng)。好在 Arch Linux 團隊提供的 arch-chroot 工具可以讓我們暫時登錄到已經(jīng)安裝好的 Linux 系統(tǒng)中去開始系統(tǒng)配置撮慨。執(zhí)行命令:

arch-chroot /mnt

注意提示符變?yōu)?sh-4.3#竿痰,我們已經(jīng)成功登陸剛剛安裝的 Arch Linux 系統(tǒng)脆粥,執(zhí)行 ls -al 試試:

根目錄下已經(jīng)安裝好的各個目錄

下面首先對 Linux 系統(tǒng)的 locale (讀作[l???kɑ?l)進行配置。Linux 的 locale 文件中儲存了與“本地化”相關的諸如時間格式影涉、貨幣單位变隔、語言編碼之類的信息,通過 locale 配置蟹倾,可以使 Linux 更符合我們的使用習慣匣缘。使用 nano 編輯/etc/locale.gen文件:

nano /etc/locale.gen

移除一行之前的 "#" 符號(即取消注釋)來選擇你需要的locale。我的選擇是:

en_US.UTF-8 UTF-8
zh_CN.GBK GBK
zh_CN.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8

包含了美語英文 UTF-8 編碼鲜棠,簡體中文 GBK 與 UTF-8 編碼肌厨,以及繁體中文的 UTF-8 編碼。

使用 locale-gen 命令來生成 locale 信息:

locale-gen

創(chuàng)建 locale.conf 并選擇要使用的本地化選項 (使用 echo xxx > yyy 的命令豁陆,可以把 echo 命令的輸出內(nèi)容即 xxx 重定向到 yyy 文件中去柑爸,這與使用 nano 編輯器對 yyy 文件進行編輯效果相同,只是更快捷):

echo LANG=en_US.UTF-8 > /etc/locale.conf

注意中文安裝指導提醒:

不推薦在此設置任何中文locale盒音,或?qū)е聇ty亂碼表鳍。

設定時區(qū):

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

設置硬件時間為UTC模式,以免在時區(qū)和夏令時調(diào)整時產(chǎn)生錯誤(注意 systohc 和 utc 之前都是兩個 "-" 符號):

hwclock —systohc —utc

設定主機名:

echo 你的主機名 > /etc/hostname

設置 root 密碼:

passwd

從光盤啟動的 Arch Linux 可以聯(lián)網(wǎng)是因為啟動光盤自動進行了網(wǎng)絡配置±锬妫現(xiàn)在我們來為新系統(tǒng)進行網(wǎng)絡配置进胯。輸入 ip a 命令,查看當前的網(wǎng)絡連接原押,記下當前網(wǎng)絡接口的名稱:enp0s3

ip a

查看當前的網(wǎng)絡連接

在網(wǎng)絡配置目錄中,創(chuàng)建 my_network 文件偎血,拷貝 dhcp 樣本文件的設置即可诸衔。

cp /etc/netctl/examples/ethernet-dhcp /etc/netctl/my_network

修改 my_network 文件 Interface 字段,把當前網(wǎng)絡接口的名稱寫入即可颇玷。


修改 Interface 為enp0s3

把 my_network 作為默認網(wǎng)絡配置笨农。

netctl enable my_network

8. 安裝 Boot Loader

電腦開機之后,處理器會到固定的位置去讀取磁盤內(nèi)容帖渠,這個“固定的位置”一般就在磁盤的最開始位置谒亦。放在這個位置的軟件,就叫做 Boot Loader空郊,它的作用是為處理器指明操作系統(tǒng)的安裝位置份招,使得處理器可以進一步的讀取并執(zhí)行操作系統(tǒng)。

下載 Grub Boot Loader狞甚,將其安裝到 Arch Linux 被安裝到的 硬盤中 (sda)锁摔,然后生成啟動所需要的 grub 文件。

pacman -S grub
grub-install --target=i386-pc --recheck /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

安裝后的命令行輸出如下所示:


安裝 Grub Boot Loader 工具

下面從安裝的 Linux 中退出哼审,卸載剛才掛載的文件系統(tǒng)谐腰,然后關機孕豹。這樣原始 Arch Linux 的安裝就完成了。

exit
umount /mnt/boot
umount /mnt
poweroff

移除光盤鏡像十气,重新啟動系統(tǒng):


移除 VBox 加載的光盤鏡像

Tada... Welcome to bare bone Arch Linux励背!歡迎來到荒涼的無主之地。

重新啟動砸西,root 登陸

注:個人知識能力有限叶眉,難免有遺漏、錯誤的地方籍胯,歡迎大家通過評論與我交流竟闪。

參考資料

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市杖狼,隨后出現(xiàn)的幾起案子炼蛤,更是在濱河造成了極大的恐慌,老刑警劉巖蝶涩,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件理朋,死亡現(xiàn)場離奇詭異,居然都是意外死亡绿聘,警方通過查閱死者的電腦和手機嗽上,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來熄攘,“玉大人兽愤,你說我怎么就攤上這事∨不” “怎么了浅萧?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長哲思。 經(jīng)常有香客問我洼畅,道長,這世上最難降的妖魔是什么棚赔? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任帝簇,我火速辦了婚禮,結(jié)果婚禮上靠益,老公的妹妹穿的比我還像新娘丧肴。我一直安慰自己,他們只是感情好捆毫,可當我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布闪湾。 她就那樣靜靜地躺著,像睡著了一般绩卤。 火紅的嫁衣襯著肌膚如雪途样。 梳的紋絲不亂的頭發(fā)上江醇,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天,我揣著相機與錄音何暇,去河邊找鬼陶夜。 笑死,一個胖子當著我的面吹牛裆站,可吹牛的內(nèi)容都是我干的条辟。 我是一名探鬼主播,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼宏胯,長吁一口氣:“原來是場噩夢啊……” “哼羽嫡!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起肩袍,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤杭棵,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后氛赐,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體魂爪,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年艰管,在試婚紗的時候發(fā)現(xiàn)自己被綠了滓侍。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡牲芋,死狀恐怖撩笆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情缸浦,我是刑警寧澤浇衬,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站餐济,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏胆剧。R本人自食惡果不足惜絮姆,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望秩霍。 院中可真熱鬧篙悯,春花似錦、人聲如沸铃绒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽颠悬。三九已至矮燎,卻和暖如春定血,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背诞外。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工澜沟, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人峡谊。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓茫虽,卻偏偏與公主長得像,于是被迫代替她去往敵國和親既们。 傳聞我的和親對象是個殘疾皇子濒析,可洞房花燭夜當晚...
    茶點故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容