|
本帖最后由 kylinblue 于 2016-8-10 21:47 编辑
16线程以上跑WCG好烧硬盘。Ramdisk好做,设置BOINC正确启动很难。
〇、这里默认你已经安装BOINC(并且使用的apt-get),如果没有,去安装- sudo apt-get install -y boinc-client
复制代码 一、建立Ramdisk
首先,建议你有16GB以上的内存。Linux下设置Ramdisk其实非常简单,第三方软件也不用装。鉴于不一样的distro会有不一样的变量,这里我们以Ubuntu为准。之后,用nano编辑fstab加入这行- tmpfs /mnt/ramdisk tmpfs defaults 0 0
复制代码 挂载你可以用mount或者df命令确认下挂载,这里不多赘述。
二、建立Ramdisk备份
tmpfs是在重启后不保存文件的,这里我们来做个自动备份
新建路径- sudo mkdir /var/ramdisk-backup
复制代码 之后开一个新的启动脚本- sudo nano /etc/init.d/ramdisk-manage
复制代码 写进以下代码- #!/bin/sh
- # /etc/init.d/ramdisk-manage
- #
- ### BEGIN INIT INFO
- # Provides: ramdisk-manage
- # Required-Start: $local_fs $remote_fs
- # Required-Stop: $local_fs $remote_fs
- # Default-Start:
- # Default-Stop: 0 1 6
- # Short-Description: ramdisk
- # Description:
- ### END INIT INFO
- case "$1" in
- start)
- echo "Syncing files from harddisk to ramdisk"
- rsync -av /var/lib/ramdisk-backup/ /mnt/ramdisk/
- echo [`date +"%Y-%m-%d %H:%M"`] Ramdisk Synched from HD >> /var/log/ramdisk-manage.log
- ;;
- sync)
- echo "Syncing files from ramdisk to harddisk"
- echo [`date +"%Y-%m-%d %H:%M"`] Ramdisk Synched to HD >> /var/log/ramdisk-manage.log
- rsync -av --delete --recursive --force /mnt/ramdisk/ /var/lib/ramdisk-backup/
- ;;
- stop)
- echo "Syncing files from ramdisk to harddisk"
- echo [`date +"%Y-%m-%d %H:%M"`] Ramdisk Synched to HD >> /var/log/ramdisk-manage.log
- rsync -av --delete --recursive --force /mnt/ramdisk/ /var/lib/ramdisk-backup/
- ;;
- *)
- echo "Usage: /etc/init.d/manage-ramdisk {start|stop|sync}"
- exit 1
- ;;
- esac
- exit 0
复制代码 之后要给文件加权限- sudo chmod +x /etc/init.d/ramdisk-manage
复制代码- sudo chown root:root /etc/init.d/ramdisk-manage
复制代码 制作第二个脚本- sudo nano /lib/systemd/system/ramdisk-manage.service
复制代码 输入以下代码- [Unit]
- Description=ramdisk service
- [Service]
- Type=oneshot
- RemainAfterExit=true
- ExecStart=/etc/init.d/ramdisk-manage start
- ExecStop=/etc/init.d/ramdisk-manage stop
- [Install]
- WantedBy=multi-user.target
复制代码 加到启动列表里- sudo systemctl reenable ramdisk-manage.service
复制代码 打开BOINC启动设置文件- sudo nano /lib/systemd/system/boinc-client.service
复制代码 找到这行,如下把ramdisk-manage.service加进去,(以确保BOINC能正常自动启动)- After=network.target ramdisk-manage.service
复制代码 同样,刷新一下启动列表- sudo systemctl reenable boinc-client.service
复制代码 三、移动BOINC数据
复制到Ramdisk- sudo rsync -av /var/lib/boinc-client /mnt/ramdisk/
复制代码 复制到Ramdisk备份(避免出问题)- sudo rsync -av /var/lib/boinc-client /var/lib/ramdisk-backup
复制代码 删除原数据- sudo rm -r /var/lib/boinc-client
复制代码 建立Ramdisk到原先位置的连接- sudo ln -s /mnt/ramdisk/boinc-client /var/lib/
复制代码 全部完成,可以sudo reboot了。
如果发生问题,或者不再用Ramdisk了,把连接删掉,再把backup复制过去就好了。
四、利用Cron来定时备份,避免断电损失
打开Cron选二(应该是nano)
将以下部分加进去- * 0,6,12,18 * * * rsync -auv --delete /mnt/ramdisk/ /var/lib/ramdisk-backup/
复制代码 五、关机备份脚本 (今天发现关机的时候没有备份,这里修正一下)
sudo update-rc.d ramdisk-manage defaults 99 |
评分
-
查看全部评分
|