本文教您如何在Ubuntu / Debian / Mint 等 Debian家族的Linux下,順利安裝LSI / Broadcom陣列卡必備的MSM (MegaRAID Storage Manager)磁碟陣列管理程式。若您也有這方面的需求,敬請繼續看下去。
▲ OSSLab實戰,成功安裝MSM for Ubuntu,此為其GUI畫面
MSM工具,唯獨Ubuntu平台沒有
大多伺服器都配有硬體RAID (磁碟陣列)卡,而其採用的陣列晶片或陣列卡,絕大多數都是採用 LSI (已被Broadcom收購) 的RAID晶片,或是OEM版本。而再加上許多作業系統已紛紛內建這家RAID卡的驅動程式,因此IT人員在設置伺服器時,大多只要安裝各類作業系統,就可以認到RAID碟,以進行各種存取。
除了驅動程式之外,RAID碟更需要有磁碟管理程式,以隨時監控硬碟,以便達到可以得知硬碟健康狀態、HDD壞掉時可以隨時得知並抽換,讓系統可以即時運作不中斷。以LSI / Broadcom的RAID晶片/陣列卡來說,他們有推出MSM (MegaRAID Storage Manager)工具,讓使用者可以安裝起來使用。然由於MSM只支援Windows、Red Hat Enterprise Linux、CentOS與SuSE等平台,尚不支援的Ubuntu / Debian / Mint,雖說Broadcom官方一度曾推出Deb實驗套件,但現在又刪除掉了。因此要在Ubuntu下安裝MSM,可能是非常麻煩的事!
OSSLab實戰! Ubuntu也能裝MSM
為了讓Ubuntu / Debian / Mint 等大多數用戶也能安裝 MSM,以發揮出RAID磁碟陣列的完整功能。OSSLab實驗以Broadcom推出的安裝包,參考網友的作法,自製了一個 bash script 安裝懶人包,只有一個檔案而已,讓大家可以一鍵安裝,不需要自己一個一個去key指令,讓您不需要為了安裝MSM而傷腦筋!
此外,此安裝懶人包也會在Ubuntu的開始選單裡,加入一個 MegaRAID Storage Manager的圖示,讓您只要用滑鼠點選就可以執行了,不用再下指令,用起來就跟Windows平台一樣方便。
▲ OSSLab推出MSM for Ubuntu一鍵安裝懶人包 (bash script)
安裝原理簡述
目前這個 bash script 的作用,就是先去 Broadcom官網下載 MSM Linux的安裝包,該安裝包為AMD64平台架構,採用RPM為主,因此若想要在 Ubuntu / Debian平台上安裝,就必須先利用 alien來將 RPM轉換成 DEB格式,然後再選擇主要MSM套件來安裝至Ubuntu環境裡。最後讓Ubuntu開機時就載入其相關的服務,好讓MSM可以順利執行!
除了安裝好必要的MSM套件與服務之外,此bash script還會安裝 Alacarte,並在開始選單裡,加入一個 MegaRAID Storage Manager的圖示,以後使用者可以透過Ubuntu的Gnome開始選單,來執行MSM,不用再透過 Terminal下指令的方式執行。
使用限制
在使用限制方面,先說Ubuntu版本相容性部份。目前OSSLab實測可在 Ubuntu 18.04至20.10等版本下順利安裝,至於最新 Ubuntu 21.04 似乎在 alien 轉換時會出問題,所以要是您的 Ubuntu是21.04版本,就暫先別使用這個安裝包。
至於是否可以連到其他裝有MSM的電腦來進行RAID碟管理。目前OSSLab測試在Ubuntu平台的MSM,可以連到其他也裝有MSM的Ubuntu伺服器,是沒問題的。但無法連到裝有MSM的Windows平台。反之亦然,因此建議還是Local本機管理為主,跨主機管理可能要注意作業系統平台才行。
最後就是安裝好MSM之後,就不要再重新安裝一次了,以免系統出問題!
安裝檔下載與執行
請在本文最下方的「安裝script檔下載與解說」部份,將原始內容複製、貼上到一個文字檔,再將該檔名變更為 Install_17.05.02.01_MSM_Linux-x64_Ubuntu.sh 即可。
這是一個bash script檔案,類似Windows的batch檔案。執行時,請先開啟Terminal (終端機),然後將該檔案改成可執行(Executable)屬性,如下面指令,然後再執行該 sh檔即可。
chmod +x Install_17.05.02.01_MSM_Linux-x64_Ubuntu.sh
./Install_17.05.02.01_MSM_Linux-x64_Ubuntu.sh
如果不想那麼麻煩,也可以直接打下面指令來執行。
sh ./Install_17.05.02.01_MSM_Linux-x64_Ubuntu.sh
接下來,就按照螢幕指示就可以安裝完成,記得要有網路連線才能順利安裝喔!安裝完成後,建議重開機,下次就可以直接點選圖示來執行MSM了,最後記得MSM要用root帳密登入才能順利執行。
▲ 檢視虛擬磁碟與RAID規劃狀態 (以上用法都跟Windows版MSM相同)
安裝script檔下載與解說
以下就是OSSLab提供的 bash script 內容與說明,供有興趣的讀者研究。使用時,只要將下方框格的內容複製並貼至一個文字檔,然後更名為sh檔,即可執行。
#!/bin/bash
#
# Install Avago MegaRAID Storage Manager (MSM) for Ubuntu 18.04 ~ 20.10
#
# (Not work on Ubuntu 21.04)
#
# Bash Script by Johan at OSSLab (https://www.osslab.com.tw)
#
# Elevate user level to root for files installation (提升使用者權限至root)
cd ~
echo Input password to continue if asked.
sudo echo
# Download MSM Linux x64 17.05.02.01 RPM Package directly from Broadcom website (直接從Broadcom網站下載MSM Linux RPM套件)
wget https://docs.broadcom.com/docs-and-downloads/docs-and-downloads/raid-controllers/raid-controllers-common-files/17.05.02.01_MSM_Linux-x64.zip
# Extract the MSM package (解壓縮MSM Linux x64套件)
unzip 17.05.02.01_MSM_Linux-x64.zip
tar zxvf MSM_linux_x64_installer-17.05.02-01.tar.gz
# Install Alien Package Converter and Alacarte Menu Editor (安裝Alien包裝轉換器和alacarte選單編輯程式)
sudo apt install alien -y
sudo apt install alacarte -y
# Convert RPM to DEB (將RPM轉換成DEB)
cd disk
echo Converting RPM to DEB, please wait…
sudo alien --scripts *.rpm
# Install lib deb and megaraid deb (安裝LibUtil和MegaRaid套件包)
sudo dpkg -i lib-utils2_1.00-11_all.deb
sudo dpkg -i megaraid-storage-manager_17.05.02-2_all.deb
# Delete package files (將套件包刪除以節省空間)
cd ..
rm -rf disk
rm MSM_linux_x64_installer-17.05.02-01.tar.gz
rm MD5CheckSum.txt
# Confirm MSM files are successfully installed or remove then exit (檢查MSM是否有安裝,沒有的話就移除安裝套件並結束)
if [ ! -d "/usr/local/MegaRAID Storage Manager/" ]; then
echo
echo MSM not installed successfully.
echo
sudo dpkg -r megaraid-storage-manager
sudo dpkg -r lib-utils2
echo
echo Package files uninstalled.
echo Bash script terminated.
exit 1
fi
# Start and make MSM service run at startup (啟用並讓開機時執行MSM服務)
sudo /etc/init.d/vivaldiframeworkd start
sudo update-rc.d vivaldiframeworkd defaults
# Create Alacarte Menus for MSM (用Alacarte來建立MSM程式選單)
echo '[Desktop Entry]' >> ~/.local/share/applications/alacarte-made.desktop
echo 'Comment=Avago MegaRAID Storage Manager' >> ~/.local/share/applications/alacarte-made.desktop
echo 'Terminal=false' >> ~/.local/share/applications/alacarte-made.desktop
echo 'Name=MegaRAID Storage Manager' >> ~/.local/share/applications/alacarte-made.desktop
echo 'Exec=sh "/usr/local/MegaRAID Storage Manager/startupui.sh"' >> ~/.local/share/applications/alacarte-made.desktop
echo 'Type=Application' >> ~/.local/share/applications/alacarte-made.desktop
echo 'Icon=/usr/local/MegaRAID Storage Manager/16_prg_icon.png' >> ~/.local/share/applications/alacarte-made.desktop
# Notify user to login with root to run MSM (提醒用戶執行MSM時要用root登入)
clear
echo MSM Installation Completed. System reboot is recommended.
echo
echo 'Hereafter, you can start MSM via start menu -> MegaRAID Storage Manager.'
echo
echo Remember to login with root account for full access of MSM.
echo
read -p "Press Enter to start MSM."
# Now run MSM GUI then end (進入MSM圖形使用者介面並結束)
cd "/usr/local/MegaRAID Storage Manager"
sudo ./startupui.sh
以上,祝大家安裝成功!