ubuntu 编译内核及挂载文件系统
2019-03-26 本文已影响0人
东京的雨不会淋湿首尔
我是用虚拟机做实验,首先保证虚拟机有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 选项,按默认名字保存
image.png
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