现在ssd也挺便宜的,新一点的笔记本里都有ssd磁盘.那么这里简介绍一下,怎么用ssd加速home及其它分区,引导这块不涉及.缺点: ssd只是用来做cache不能存入实质的东西.
前提:
ssd有空余的分区或是有个ssd盘不使用. *** 作系统是Ubuntu或是其它Linux
大致步骤:
1. 安装git
$sudo apt-get install git-core
2. 下载flashcache源码:
#git clone https://github.com/facebook/flashcache.git
3. 进入目录编辑
#make
#make install
//如果失败看提示,一般是内核源码没安装的原因
4. 加载flashcache模块
#modprobe flashcache
确定加载完成:
#dmesg |tail
......flashcache: flashcache-1.0 initialized
表示成功
另外还可以:
lsmod |grep flashcache
看到相应的信息即成功.
为了开机能加载这个模块,需要这个模块名写入/etc/modules中
#echo "flashcache" >>/etc/modules
好这里完成了基本环境的安装.下面以/home分区加速设制为,其它一样.我的ssd分了/dev/sda1 用于/ , /dev/sda2用于了swap 还有/dev/sda3 ,/dev/sda4分区出没使用.我在传统磁盘里划出来100G /dev/sdb1用于/home目前还没挂载.
5. 格式化/dev/sdb1 如果原来/home节点已经划分有分区,只用umount掉即可,然后在fstab去掉自动挂载(flashcache目前不能自动挂载)
#mkfs.ext4 /dev/sdb1
把原来/home的数据复制或是移到动/dev/sdb1上.
#mount /dev/sdb1 /mnt
#cp -r /home/* /mnt
#umount /mnt
需在注意cp过去后权限是不是和原来的一样.
6. 初始化flashcache
#ls -la /dev/disk/by-uuid/
找到/dev/sdb1 对应的uuid
#flashcache_create -v -p back home_flashcache /dev/sda3 /dev/disk/by-uuid/4b75b04e-5930-4042-89b8-40894067dac6
这样即创建完毕.
7. 挂载那个flash设备
#mount /dev/mapper/home_flashcache /home
即可以体验flashcache加载的东西了.
8. 收尾工作,开机自动挂载flashcache加速的设备,利用rc.local完成
在rc.local里添加:
flashcache_load /dev/sda3
mount /dev/mapper/home_flashcache /home
这样即可开始挂载/home节点了.
如果不想使用flashcache技术,可以通过如下命令删除该功能:
umount /home
dmsetup remove cachedev
flashcache_destory
mount 相应的节点即可
说明:以# 开头的 *** 作表示以root权限进行的 *** 作,以$开头的表始以普通用做的 *** 作.
还要看你的数据查询是什么类型的,偏向于随机读写的话,提升是天翻地覆级别的,没有缓存的nvme,随机性能也有40MB/s,而机械硬盘只有不到2MB/s,而intel750这种有缓存的ssd,随机读写能达到400,提升可以达到机械硬盘的200倍。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)