我是用虛擬機做實驗,首先保證虛擬機有40g的可用空間,4g的運行存儲
1.去linux內核官網(https://www.kernel.org/)下載一個內核
2.解壓到 /usr/src/
sudo tar -xavf linux-xxxxx.tar.xz -C /usr/src
3.安裝必要依賴
sudo apt-get install gcc make libncurses5-dev openssl libssl-dev
sudo apt-get install build-essential
sudo apt-get install pkg-config
sudo apt-get install libc6-dev
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install libelf-dev
4.準備編譯
cd /usr/src/linux-xxxx/
sudo make menuconfig
按 / 鍵進入搜索,搜索NVDIM ,得到如下結果
要保證NVDIM Support 這一項是選中的
我們按1 進入查看,可以看見這一項是 * 的,如果不是,就請按 Y 鍵 includes 選中
相同的方法,我們在按 / 鍵搜索 DAX ,找到如下圖選項,按 2 進去查看保證選中
-
然後按 Esc 回到主界面,選擇下面的Save 選項,按默認名字保存
6.開始編譯
sudo make
sudo make modules_install
7.安裝
sudo make install
8.安裝完成之後,編輯開機啓動項
sudo nano /boot/grub/grub.cfg
找到最下面,剛剛安裝的內核啓動項那裏,在linux這一行的後面加上 memmap=2g!1g,保存退出重啓,在高級選項新安裝的內核啓動
9.驗證是否成功
查看版本號是否對應
查看是否有塊設備
10.掛載文件系統,遇到如下錯誤,是因爲系統的內核版本太高了,換一個低點的試試
參考:https://blog.csdn.net/davion_zhang/article/details/80264413
11.創建掛載點
sudo mkdir /mnt/simfs
sudo chmod 777 /mnt/simfs
12.掛載
sudo make
sudo insmod pmfs.ko
sudo mount -t pmfs -o init /dev/pmem0 /mnt/simfs