pmfs安装(基于3.11.8内核版本)

来源:互联网 发布:藏宝阁买号软件 编辑:程序博客网 时间:2024/06/05 11:14

pmfs安装(基于3.11.8内核)

  1. 首先安装一些编译内核所需要的工具

    sudo apt-get install gitsudo apt-get updatesudo apt-get install build-essential -ysudo apt-get install libncurses-devsudo apt-get install initramfs-tools -y
  2. 将文件系统直接通过指令下载下来

    git clone https://github.com/linux-pmfs/pmfs
  3. 编译内核

    从git上下载到的pmfs是带有内核版本的,所以解压后进入该内核文件夹直接进行编译内核即可。

    ①. 在配置内核之前,可以用现在内核的配置文件进行配置,原先内核的配置文件在/boot下面,名为config-x.xx.x的文件,xx就是现在的内核版本。

    cp /boot/config-x.xx.x .config

    ②. 然后把我们所要使用的文件系统PMFS这一选项加到配置文件中。

    make menuconfig

    出现图形化菜单,寻找到文件系统,勾选pmfs所对应的选项。这里才用以模块的形式编译。如下:

    配置内核选项

    ③. 配置完内核之后,编译安装即可。

    makesudo make modules_installsudo make install

    ④. 修改grub文件
    因为我们的pmfs是内存文件系统,所以要在内存上预留一些空间给pmfs来使用。

    在系统启动时添加内核参数:

    sudo vim /etc/default/grub

    修改此处:

    GRUB_COMDLINE_LINUX_DEFAULT="…….  name=value"

    以name =value的形式添加内核启动参数,多个参数之间用空格分开,所以我们在这里添加memmap=2G$4G,这里表示从4G开始预留2G的空间。这个参数可以根据自己的需要修改。

    一般来说,如果是ubuntu最新发行版的话,就需要在$前面加个\,这个跟grub的版本有关,所以改成memmap=2G\$4G。

    接下来将/etc/default/grub文件里把第二条语句注释掉
    (如果忘记注释掉,则重启之后没有选内核菜单,这时重启时按住shift键)

    设置完后更新一下grub文件:

    sudo update-grub

    如果无法找到update-grub命令,可以通过下面命令安装它:

    sudo apt-get install grub2-common

    通过上述方法设置内核启动参数,最后查看内核启动参数状态的时候memmap显示的和我们配置的不一样,不知道是否可以正常运行,所以这里提供第二种方式,已经试验可以成功使用:

    在这里我们直接修改/boot/grub/grub.config文件,(如果是服务器请修改启动分区的menulist文件)

    在这里找到对应的内核,然后添加启动参数,我们的pmfs内核版本是3.11.0+,添加位置如下:
    这里写图片描述

    在对应的linux后面的空位添加

    上述完成之后,重启计算机,启动相应的内核版本。

    启动后可以使用cat /proc/cmdline命令来查看当初使用的引导选项以及相应的值。

    另一种方式是,在开机选择内核的时候按e来编辑启动选项,编辑完之后按ctrl+x保存并重启

    ⑤. 安装模块并挂载

    创建挂载目录:

    mkdir /mnt/pmfs

    挂载:

    mount -t pmfs -o physaddr=0x100000000,init=2G none /mnt/pmfs

    这里的physaddr是Pmfs的起始地址,init代表大小,这里的参数要和我们上一步设置的相对应。

    注意在挂载的时候可能会提示位置文件系统类型pmfs,这时是我们安装的模块没有成功的安装进去,所在相应的位置找到我们的pmfs.ko并将它安装到系统中。

    我们添加的模块位置如下:

    /lib/modules/x-x-x/kernel/fs/pmfs  

    这里的x-x-x是内核版本,我们的选择3.11.0+

    然后安装相应的模块

    insmod pmfs.ko

    模块操作:insmod(插入模块)、modprobe(模块管理高级方案)、lsmod(查看模块)、rmmod(删除模块)、depmod(查看模块依赖)、modinfo(查看模块信息)

  4. pmfs已经安装成功,到相应的目录下进行读写测试一下。或者使用fio工具。