Skip to main content

本文教您如何在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碟,以進行各種存取。

▲ Windows版本MSM的GUI畫面

除了驅動程式之外,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下指令的方式執行。


▲ 在開始選單也加入MSM的圖示,用滑鼠點選執行

使用限制

在使用限制方面,先說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帳密登入才能順利執行。

 


▲ 進入MSM的GUI畫面,選擇登入的主機IP


▲ 要Full Access,就要輸入root的帳密


▲ 進入MSM的主要儀表板畫面,此時選擇RAID控制卡


▲ 檢視實體磁碟機狀態


▲ 檢視虛擬磁碟與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

以上,祝大家安裝成功!

 

Thx Chang

Author Thx Chang

More posts by Thx Chang
/* 2024/5/10 */