CubieBoard3 安装SSD记录笔记

CubieBoard3 的确是一个神奇的项目,给未来低功耗服务器开创了一个新路子。

首先要对得起低功耗,就要实现以下几点:单节点10W左右功耗,0噪音,0机械部件。CubieBoard3已经实现了前两点。要作为一台服务器硬盘是不可缺少的,参考前3点,只有选择SSD硬盘,没有其他第二个选择了。因此,就引出了下面的内容。


如果没有在linux下使用过SSD,那么需要了解以下的一些基本知识:

SSD硬盘使用的注意事项:
1、预留空间:对所有的固态硬盘分区使用 <75 % 的容量可以确保被内核高效的使用.
2、硬盘选择: 现代成熟的50nm消费级 MLC 单元可以进行 10000 次写入;35nm 通常可以进行 5000 次写入,25nm 可以进行3000次写入 (工艺越小,密度越高,价格越便宜)
3、4k对齐如何计算:起始扇区/8能够整除,就是4k对齐

4、TRIM指令让操作系统可以告诉固态驱动器哪些数据块是不会再使用的;否则SSD控制器不知道可以回收这些闲置数据块。


我的环境:debain, CT3, SSD(ShineDisk M20532SSD 32G SATA2 2.5)

下面开始安装步骤:

首先将SATA2线吧CT3与SSD连接,挂在硬盘


#检查SSD硬盘是否支持Trim
$ hdparm -I /dev/sdx | grep "TRIM supported"
显示 Data Set Management TRIM supported (limit 1 block) 表示支持

#安装gdisk分区工具
$ apt-get install gdisk
# 分区大小计算:使用总容量的75%,对于32G硬盘,实际容量 29.5G * 0.72 = 22G
# 对于22G可用空间,分8G为系统区(安装软件),分12G为用户数据区(挂载/home/目录),分2G为swap文件分区
# 分区的计算
8G  (16777216 + 2048) = 16779264
12G (25165824 + 16781312) = 41947136
2G (4194304 + 41949184) = 46143488
保留空间 61865950 - 46143488 = 15722462 = 7.4971G
# part1 = start:2048 ~ last:16779264  8G
# part2 = start:16781312 ~ last:41947136 = 25165824 12G
# part3 = start:41949184 ~ last:46143488 = 4194304 2G
# 剩下的扇区不用,空着他

#开始分区

$ ls /dev |grep sd

找到设备名称一般是sda

$gdisk /dev/sda

#进入后按m查看帮助菜单(步骤c创建分区,输入上面计算的分区参数)逐个创建3个分区

#格式化分区

$ mkfs.ext4 /dev/sda1
$ mkfs.ext4 /dev/sda2
$ mkfs.ext4 /dev/sda3


#挂载分区并测试速度(说实话,CT3挂载SSD太浪费SSD性能了,应该与CT3的io处理速度有关,你看了测试结果就知道了)
$ mkdir /mnt/sda1
$ mount /dev/sda1/ /mnt/sda1
#写入速度测试
$ dd if=/dev/zero of=test.bin bs=64k count=16k conv=fdatasync
16384+0 records in
16384+0 records out
1073741824 bytes (1.1 GB) copied, 42.3508 s, 25.4 MB/s
#读取速度测试
$ dd if=test.bin bs=64k |dd of=/dev/null
2097152+0 records in
2097152+0 records out
1073741824 bytes (1.1 GB) copied, 20.5517 s, 52.2 MB/s


#SSD的系统优化
1、使用 Online Discard (fstab)
$ nano /etc/fstab
UUID=02353655-e525-4027-9f1d-aec4d880ed3f / ext4 discard,errors=remount-ro 0 1
如所示在 ext4 后面加discard;这个方法比较简单,但是并推荐这么做。Discard 选项启用后,文件系统的文件一旦被删除,会立即通知 SSD 进行 Trim 操作。在进行删除大量小文件的操作时可能会造成小的性能下降。


2、使用 cron 按计划执行 fstrim
fstrim 是执行 Trim 操作的命令,配合 cron 可以让操作系统按计划执行 Trim 操作,每天一次。
首先在 /etc/cron.daily 目录下创建一个为 trim 的文件:
$ sudo nano /etc/cron.daily/trim
往 trim 文件中粘贴如下内容:
#!/bin/sh
LOG=/var/log/trim.log
echo "*** $(date -R) ***" >> $LOG
fstrim -v / >> $LOG
fstrim -v /home >> $LOG

真正执行 Trim 操作的是最后两个命令,要根据实际情况进行修改。因为我的根目录和 home 目录在两个独立的分区,所以在这里使用了两个命令分别执行 fstrim。
最后给 trim 文件加一个可执行权限就可以了:
$ sudo chmod +x /etc/cron.daily/trim


#SWAP交换区文件的创建方式

$ mkdir /mnt/sda-swap

$ mount /dev/sda3 /mnt/sda-swap
#在/mnt/sda-swap卷中,创建一个交换分区文件1G
$ dd if=/dev/zero of=/mnt/sda-swap/swapfile bs=1024 count=1048576
$ chmod 0600 /mnt/sda-swap/swapfile
#把这个文件变成swap文件
$ mkswap /mnt/sda-swap/swapfile
#启用这个swap文件
$ swapon /mnt/sda-swap/swapfile
#检查SWAP是否加载
$ swapon -s
#编辑/etc/fstab文件,使在每次开机时自动加载swap文件
/mnt/sda-swap/swapfile    swap    swap    default   0 0


如何把 nand的rootfs分区转移到 SSD上,请参考这个文章http://note.sdo.com/u/jerryli/n/prb71~kTNjaq4M35k000JF

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值