You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hugo_backup/content/post/ubuntu-1804-install-root-on...

151 lines
4.5 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: "Ubuntu 1804 Install Root on Raid"
date: 2019-01-16T09:58:50+08:00
noSummary: false
featuredImage: "https://h.cowbay.org/images/post-default-11.jpg"
categories: ['筆記']
tags: ['ubuntu','raid']
author: "Eric Chang"
---
最近在弄一台機器想要把ubuntu 18.04 安裝在software raid上
因為新開的機器大部分都是在proxmox上所以很少碰實體機器了
結果在安裝過程中做raid碰到一些問題來紀錄一下
<!--more-->
要先說明 Ubuntu 提供的ISO類型這會牽涉到後續裝raid
底下這是ubuntu 網頁上的ISO列表
![ubuntu iso list](https://i.imgur.com/32JIHL0.png)
大致上分為 Desktop/live-server 兩種
因為我要裝的是server所以我一開始當然是選live-server
但是用這個ISO開機要設定software raid時會出現警告訊息
提示不可以把所有的分割區都指定給 RAID/LVM ,這樣會沒有地方可以放 /boot
錯誤如圖
![create root on raid error](https://i.imgur.com/uhSpn6w.png)
所以我很「鄉愿」的,那就切一個/boot 給它用,算是暫時解決這問題 XD
但是這樣的作法,總有一天會出事
因為如果這個 /boot 掛了雖然底下的系統有做mirror
但還是不能開機那這樣做raid根本沒有意義啊
所以研究了兩天,發現一個很重要的事情
我根本就抓錯ISO了啊
會這樣想是因為中間有其他task在裝debian9
一開始也是抓live-dvd版本
但是這個版本沒有辦法自訂要安裝哪些套件所以預設安裝完會包含windows manager、office、字型等等
加起來總共5.x G ....
然後我還要手動移除這些套件,這不是脫褲子放屁嗎?
翻了一下google發現是因為ISO的關係要去下載netinst的ISO
才能在安裝過程中自訂套件
從這邊延伸到ubuntu的問題
會不會是我也抓錯ISO了呢
再次google相關訊息果然ubuntu也有類似的netboot ISO
![ubuntu mini iso](https://i.imgur.com/G2ImxhQ.png)
檔案很小只有60M左右趕快下載來安裝
這次果然可以在安裝過程中順利設定software raid並且掛載在 / 根目錄底下進行安裝
## BUT .... 對永遠少不了這個BUT
安裝過程會卡住...
![ubuntu install with mini iso hangs](https://i.imgur.com/FpWsjsO.png)
卡在這邊幾個小時了,都不會動
我在猜可能是mirror site 有問題,所以抓套件抓不到就卡住了?
一直卡著也不是辦法於是又去ubuntu官網看了一下發現有另外一個server的 ISO
這個叫 "Alternative Ubuntu Server installer"
在官網的這個位置
https://www.ubuntu.com/download/alternative-downloads
![Alternative Ubuntu Server Installer](https://i.imgur.com/n0E1ea3.png)
進入後,會有個列表,找到 server amd64 的ISO這個才是正確的
和第一次不同的是,這個沒有"live" ,很重要!
![Ubuntu alternative-downloads](https://i.imgur.com/c4GTujY.png)
用這個ISO開機就可以正常的做出software raid並且指定安裝作業系統也不會有卡住的狀況
做出來的系統磁區大概是這樣
![ubuntu root on software raid](https://i.imgur.com/dyWIH7E.png)
這台VM的硬碟是透過10G網卡連到一個四塊Sandisk 240G SSD 組成的raid0空間
順便看一下速度
![10g nfs storage performance](https://i.imgur.com/V9WwIOC.png)
10G就是快就是爽
爽完之後,還是要確認一下... 首先先執行 sudo dpkg-reconfigure grub-pc
看看是不是兩顆硬碟都有裝 grub ,這樣萬一有一顆硬碟故障,另一顆才能啟動
![dpkg-reconfigure grub-pc](https://i.imgur.com/7xAcCbz.png)
看來因為是在安裝過程中就指定了要把系統裝在raid上所以ubuntu很聰明的也自動把grub裝在兩顆硬碟上了
來試試看拔掉一顆硬碟還能不能正常運作
直接在proxmox 管理界面中detach 一顆硬碟
![detach one of mirror raid](https://i.imgur.com/lLFcdk0.png)
果然報錯誤了
![mirror raid failed](https://i.imgur.com/1SFdVA0.png)
重開機看看,也沒有問題,可以順利開機!
開機過程有看到raid 只剩下一顆在運作的訊息
![mirror raid work with one disk only](https://i.imgur.com/oZNIN4D.png)
再來把硬碟加回去
然後用mdadm 指令加入分割區raid就會開始rebuid了
![mdadm rebuild raid](https://i.imgur.com/3nu2Ij8.png)
所以如果有打算要做software raid來安裝ubuntu 作業系統的一開始就要選對ISO
才不會白忙那麼多時間啊!