扫描二维码关注官方公众号
12下一页
返回列表 发布新帖

[讨论/分享] 用ubuntu来做NAS OS, 实现各种功能

22299 45
发表于 2013-9-27 01:46:39 | 显示全部楼层 阅读模式

来吧兄弟,一起玩一起讨论!

您需要 登录 才可以下载或查看,没有账号?注册

×
本帖最后由 trott 于 2013-9-27 10:51 编辑

我决定另开一贴,来讨论用ubuntu作为nas os, 来实现各种功能的可能,我自己不是用ubuntu的高手,所以也只能边google边学习了。
我现在的配置是HP N40L,1个SSD硬盘,3个3T的硬盘。其中SSD用作系统盘,2个硬盘作为主要的数据存储盘,1个硬盘作为重要数据备份盘。为了比较容易方便添加新硬盘,我比较过zfs和btrfs,最后决定使用btrfs,由于btrfs还在开发,所以在新的kernel种效果比较好,所以要升级倒最新的kernel
Step 1:
下载最新的Ubuntu Server(现在是13.04), 去http://unetbootin.sourceforge.net/,下载unetbootin,把下载的iso写u盘上,然后从u盘重启安装,安装过程网上很多, 不过我在分区的时候选择了手动,然后分成3部分:
/boot, 1g, ext2
/swap, 8g, swap
/,110g,btrfs

Step 2:
因为要用btrfs,所以需要比较新的kernel,你可以到以下网址现在,现在最新稳定的好像是3.11.1
http://kernel.ubuntu.com/~kernel-ppa/mainline/
  1. sudo -i
  2. cd /tmp
  3. wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.1-saucy/linux-headers-3.11.1-031101-generic_3.11.1-031101.201309141102_amd64.deb
  4. wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.1-saucy/linux-headers-3.11.1-031101_3.11.1-031101.201309141102_all.deb
  5. wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.11.1-saucy/linux-image-3.11.1-031101-generic_3.11.1-031101.201309141102_amd64.deb
  6. dpkg -i *.deb
复制代码
结束以后重启。

Step 3:
把其中2个硬盘做成数据存贮盘,-L 后面的参数是label, -d后面是只用什么方式存贮数据,可以选raid0, raid1, raid10 and single,因为我有另外的备份盘,所以希望可以利用所有的硬盘空间,所以选了single,当然raid0也可以达到相同的目的,不过single的话即使其中有硬盘挂了,在其他硬盘上的数据有可能在的,这点比raid0好,所以我选了single,-m只的是metadata,这个如果挂了的话,数据都挂,所以我选了raid1
  1. sudo mkfs.btrfs -L downloads -d single -m raid1 /dev/sdb /dev/sdc
复制代码
和上面类似,建立备份盘, 当然这次只有一个硬盘:
  1. sudo mkfs.btrfs -L backup /dev/sda
复制代码
这是用命令:sudo btrfs fi show, 可以看到类似的信息(我的系统用了一段时间了,上面有不少数据)
Label: 'downloads'  uuid: a545008a-6558-44cc-a42a-8597b844506e
        Total devices 2 FS bytes used 1.42TB
        devid    1 size 2.73TB used 745.03GB path /dev/sdb
        devid    2 size 2.73TB used 745.01GB path /dev/sdc

Label: 'backup'  uuid: 126fd46f-2e09-48b2-9ebb-ba87868d34ca
        Total devices 1 FS bytes used 1.17GB
        devid    1 size 2.73TB used 31.04GB path /dev/sda


Step 4:
ok,现在要把数据盘和备份盘mount到系统上,同时也要因为我的系统盘是ssd的,所以mount option可以优化一下(这个可以google,也很多文章),我们在根目录下建立files, 和backup目录用来mount 数据盘和备份盘,然后编辑/etc/fstab文件
  1. sudo -i
  2. mkdir /files /backup
  3. nano /etc/fstab
复制代码
修改后的结果是:  # <file system> <mount point>   <type>  <options>       <dump>  <pass># / was on /dev/sdb2 during installation
UUID=9dc8cbfe-311f-4d85-ade9-64a3bb27708e /               btrfs   defaults,compress=lzo,noatime,nodiratime,autodefrag,subvol=@ 0       1
(上面这行在defaults后增加,compress=lzo,noatime,nodiratime,autodefrag)
# /boot was on /dev/sdb1 during installation
UUID=c40172f1-924b-4c7f-863e-9f88e54b4d56 /boot           ext2    defaults        0       2
# /home was on /dev/sdb2 during installation
UUID=9dc8cbfe-311f-4d85-ade9-64a3bb27708e /home           btrfs   defaults,compress=lzo,noatime,nodiratime,autodefrag,subvol=@home 0       2
(上面这行在defaults后增加,compress=lzo,noatime,nodiratime,autodefrag)
# swap was on /dev/sdb5 during installation
UUID=e44f7877-2b8d-48e4-b48c-29fdbcba840f none            swap    sw              0       0
(下面3行都是加出来的)
tmpfs   /tmp       tmpfs   defaults,noatime,mode=1777   0  0
UUID=a545008a-6558-44cc-a42a-8597b844506e /files           btrfs   defaults,autodefrag,space_cache 0       2
UUID=126fd46f-2e09-48b2-9ebb-ba87868d34ca /backup          btrfs   defaults,compress=lzo,autodefrag,space_cache 0       2

其中compress=lzo告诉btrfs自动对文件做压缩,compress=lzo只自动做defragement

保存文件,重启系统。

Step 5:
虽然我们在fstab文件里对compress=lzo,compress=lzo,但他们只对后面的文件起作用,而ssd上的文件在都是装系统的时候就写上去了,所以我们要运行命令,对已经存在的文件做应用:
  1. find / -xdev -type f -print -exec btrfs fi defrag -clzo '{}' \;
  2. find /home -xdev -type f -print -exec btrfs fi defrag -clzo '{}' \;
复制代码
其实在运行这两个命令的前后你可以运行 btrfs fi df / , btrfs fi df /home, 你可以发现数据的使用空间变小了,因为被压缩了


评论45

dgiuobinLv.10 发表于 2013-9-27 01:49:16 | 显示全部楼层
一大堆命令~~~~~
回复 点赞

使用道具 举报

BillChanLv.10 发表于 2013-9-27 02:43:27 | 显示全部楼层
重頭開始,太敬佩!!!
回复 点赞

使用道具 举报

yetiddbbLv.3 发表于 2013-9-27 07:29:09 | 显示全部楼层
NAS其实追求的是安全,方便,稳定。
回复 点赞

使用道具 举报

zhou0309Lv.10 发表于 2013-9-27 08:15:21 | 显示全部楼层
nas新思路,不错,顶一下。
回复 点赞

使用道具 举报

xaraLv.5 发表于 2013-9-27 08:22:48 | 显示全部楼层
楼主这个有续集吗?如果没有,远远不能称之为"各种应用".
在我看来,目前仅仅相当于在硬件RAID卡面划分了几个VD而已啊.
期待楼主的续集,ubuntu相比起Windows可能找齐当前Synology上面的应用要容易些.
当然有,还在慢慢写  详情 回复
发表于 2013-9-27 10:50
同关注。也在琢磨。 毕竟还是全开放平台来的放心些。  详情 回复
发表于 2013-9-27 08:45
该会员没有填写今日想说内容.
回复 点赞

使用道具 举报

断刃Lv.10 发表于 2013-9-27 08:45:06 | 显示全部楼层
xara 发表于 2013-9-27 08:22
楼主这个有续集吗?如果没有,远远不能称之为"各种应用".
在我看来,目前仅仅相当于在硬件RAID卡面划分了几个V ...

同关注。也在琢磨。

毕竟还是全开放平台来的放心些。
回复 点赞

使用道具 举报

deedLv.3 发表于 2013-9-27 08:51:41 | 显示全部楼层
请教:
  1. sudo mkfs.btrfs -L downloads -d single -m raid1 /dev/sdb /dev/sdd /dev/sdc
复制代码
这里的 /dev/sdd 是什么?

另外,Raid1的安全性比单硬盘高,为什么用单硬盘备份重要数据?
  1. 2个硬盘作为主要的数据存储盘,1个硬盘作为重要数据备份盘
复制代码
1. /dev/sdd实际上是我的系统盘,那个命令打错了,应该没有 /dev/sdd的,我改过了。 2. 首先raid1不等于备份,我现在重要的数据相当于在数据盘上有1份,在备份盘上有1份,同时我还会备份到台式机上(还在研究备份到  详情 回复
发表于 2013-9-27 10:55
回复 点赞

使用道具 举报

小雅Lv.10 发表于 2013-9-27 08:58:48 | 显示全部楼层
希望楼主能探索出一条新路,造福坛友。另,nas的各方应用才是关键,系统搭建才是第一步。
回复 点赞

使用道具 举报

alfredLv.5 发表于 2013-9-27 09:54:01 | 显示全部楼层
高手,请问ubuntu有相应的手机或者平板上的软件可以使用吗
这个取决于你装的软件,到时候大家在讨论好了  详情 回复
发表于 2013-9-27 10:58
回复 点赞

使用道具 举报

trott楼主Lv.5 发表于 2013-9-27 10:50:59 | 显示全部楼层
xara 发表于 2013-9-27 08:22
楼主这个有续集吗?如果没有,远远不能称之为"各种应用".
在我看来,目前仅仅相当于在硬件RAID卡面划分了几个V ...

当然有,还在慢慢写
回复 点赞

使用道具 举报

trott楼主Lv.5 发表于 2013-9-27 10:55:43 | 显示全部楼层
deed 发表于 2013-9-27 08:51
请教:这里的 /dev/sdd 是什么?

另外,Raid1的安全性比单硬盘高,为什么用单硬盘备份重要数据? ...

1. /dev/sdd实际上是我的系统盘,那个命令打错了,应该没有 /dev/sdd的,我改过了。
2. 首先raid1不等于备份,我现在重要的数据相当于在数据盘上有1份,在备份盘上有1份,同时我还会备份到台式机上(还在研究备份到百度网盘)
回复 点赞

使用道具 举报

trott楼主Lv.5 发表于 2013-9-27 10:58:17 | 显示全部楼层
alfred 发表于 2013-9-27 09:54
高手,请问ubuntu有相应的手机或者平板上的软件可以使用吗

这个取决于你装的软件,到时候大家在讨论好了
我会继续关注本帖的  详情 回复
发表于 2013-9-27 13:08
回复 点赞

使用道具 举报

wu506Lv.3 发表于 2013-9-27 10:59:47 | 显示全部楼层
继续关注中~~~
回复 点赞

使用道具 举报

trott楼主Lv.5 发表于 2013-9-27 12:31:41 | 显示全部楼层
本帖最后由 trott 于 2013-9-30 12:54 编辑

二:下载软件篇,这里主要介绍在安装下载软件
1. aria2 - http://aria2.sourceforge.net/
arai2在ubuntu的软件库里的不是最新的,所以采用自己编译安装
  1. sudo apt-get install build-essential pkg-config git-core libssl-dev libxml2-dev libc-ares-dev zlib1g-dev libsqlite3-dev libcppunit-dev dh-autoreconf libgcrypt-dev
  2. cd /usr/src
  3. sudo git clone git://github.com/tatsuhiro-t/aria2.git
  4. cd aria2
  5. sudo autoreconf -i
  6. sudo ./configure
  7. sudo make
  8. sudo make install
复制代码
结束后运行 aria2c -v 确认是不是安装正确,配置aria2, 使它运行在daemon模式
  1. mkdir ~/.aria2
  2. cat > ~/.aria2/aria2.conf <<END
  3. daemon=true
  4. enable-rpc=true
  5. rpc-listen-all=true
  6. dir=改成你自己的保存下载的目录
  7. continue=true
  8. max-connection-per-server=5
  9. retry-wait=30
  10. allow-overwrite=true
  11. disk-cache=200M
  12. file-allocation=falloc
  13. END
复制代码
配置aria2的init脚本,使它开机自动启动
  1. sudo wget -O /etc/init.d/aria2 https://dl.dropboxusercontent.com/u/12085779/aria2
  2. sudo sed -ibk -e "s/<NAME>/$USER/g" /etc/init.d/aria2
  3. sudo chmod +x /etc/init.d/aria2
  4. sudo update-rc.d aria2 defaults
  5. sudo /etc/init.d/aria2 start
复制代码
我用的是浏览器是chrome,上面有个扩展,可以把迅雷/QQ旋风/百度网盘的链接直接输出到aria2c下载,扩展的地址如下:
https://chrome.google.com/websto ... anifedeged?hl=zh-CN
chrome还有个yaaw的扩展,相当于aria2的web gui,但是我用下来不是很好用,所以我还是决定用他推荐的web gui, web server用lighttpd
  1. sudo apt-get install lighttpd php5 php5-cli php5-curl
  2. cd /var/www
  3. sudo git clone https://github.com/ziahamza/webui-aria2.git aria2
复制代码
现在可以用 http://nas ip/aria2 访问了

deluge在ubuntu的软件源里是最新版,所以直接安装就行
  1. sudo apt-get install deluged deluge-webui
  2. sudo rm -rf /etc/init.d/deluged /var/log/deluged
  3. sudo wget -O /etc/init.d/deluge-daemon https://dl.dropboxusercontent.com/u/12085779/deluge-daemon
  4. sudo chmod +x /etc/init.d/deluge-daemon
  5. sudo wget -O /etc/default/deluge-daemon https://dl.dropboxusercontent.com/u/12085779/deluge-default
  6. sudo sed -ibk -e "s/<NAME>/$USER/g" /etc/default/deluge-daemon
  7. sudo mkdir /var/log/deluge
  8. sudo chown -R $USER.$USER /var/log/deluge
  9. sudo update-rc.d deluge-daemon defaults
  10. sudo /etc/init.d/deluge-daemon start
  11. sudo /etc/init.d/deluge-daemon restart
复制代码
回复 点赞

使用道具 举报

windowsxpLv.5 发表于 2013-9-27 12:45:03 | 显示全部楼层
学习 中  关注中
回复 点赞

使用道具 举报

kenwood1999Lv.10 发表于 2013-9-27 12:58:18 | 显示全部楼层
曾经考虑过用ubuntu server
回复 点赞

使用道具 举报

alfredLv.5 发表于 2013-9-27 13:08:43 | 显示全部楼层
trott 发表于 2013-9-27 10:58
这个取决于你装的软件,到时候大家在讨论好了

我会继续关注本帖的
回复 点赞

使用道具 举报

伟大的三则奶奶Lv.5 发表于 2013-9-27 15:24:28 | 显示全部楼层
ubutu也有个web管理的插件的 装好就可以web管理了 楼主可以网上找找  那个东西用了很方便的
webmin吗?确实,不过其实在shell下编辑以下conf文件也不难的  详情 回复
发表于 2013-9-27 15:39
回复 点赞

使用道具 举报

trott楼主Lv.5 发表于 2013-9-27 15:39:16 | 显示全部楼层
伟大的三则奶奶 发表于 2013-9-27 15:24
ubutu也有个web管理的插件的 装好就可以web管理了 楼主可以网上找找  那个东西用了很方便的 ...

webmin吗?确实,不过其实在shell下编辑以下conf文件也不难的
openv什么meida的  详情 回复
发表于 2013-10-17 14:58
回复 点赞

使用道具 举报

回复

懒得打字嘛,点击右侧快捷回复 【本站酷狼4T,750元】
您需要登录后才可以回帖 登录 | 注册

本版积分规则

投诉/建议联系

support@gebi1.cn

未经授权禁止转载,复制和建立镜像,
如有违反,追究法律责任
  • 关注公众号
  • 添加微信客服
Copyright © 2001-2024 隔壁网 版权所有 All Rights Reserved. 粤ICP备14056481号-1
关灯 在本版发帖
扫一扫添加微信客服
返回顶部
快速回复 返回顶部 返回列表