不自动设置控制台分辨率
在Ubuntu的引导菜单条目下按E键,进入编辑模式;在linux /casper/vmlinuz 后加入nomodeset,按F10键启动系统。
安装Ubuntu Server
在语言选择页面,选择English,回车;
在Keyboard Configuration(键盘配置)页面,Layout 和Variant 均保持为English (US),选择Done(完成),按回车;
在Network Connections(网络连接)页面,直接选择Done;
在Configure Proxy(代理配置)页面,直接选择Done;
在Configure Ubuntu archive mirror(软件源镜像配置)页面,将Mirror Address(镜像源地址)改为http://mirrors.ustc.edu.cn/ubuntu,选择Done;
如果提示Installer update available(安装程序有更新),选择Continue without updating(继续而不更新);
在Guided storage configuration(硬盘分区)页面,选择Custom storage layout(自定义存储布局),方向键移动,空格键选中;然后选中Done;进入Storage configuration(存储配置)页面,在Available Devices 列表下用方向键选中要安装系统的硬盘,回车键打开菜单,先创建ESP分区:选择Use As Boot Device(作为启动盘),会自动创建一个512M的ESP分区;再创建其他分区:Add GPT Partition,在对话框的Size(大小)框内输入大小,例如512M或60G;Format(格式)选择ext4,Mount(挂载点)选择一个挂载点,然后选择Create 创建分区。推荐创建三个分区:512M,ext4,/boot(启动分区)、>60G,ext4,/(根分区,也就是系统分区)、10G,swap、剩下的空间给一个ext4的/home 分区;
创建软件RAID,选择Create software RAID (md),name(设备名)保持md0 不动,再选择RAID Level(RAID等级),视频中因数据完整性起见我选择1 (mirrored),也就是将数据一式两份地存储,其他的RAID等级的作用和特点可以自行上网查找,然后在Devices(设备)部分勾选要建立阵列的两块机械硬盘,再选择Create(创建)。这时Available Devices 里面会出现md0,然后仿照上面的步骤创建/srv分区;
在Profile setup(资料设置)页面,输入Your name(姓名)、Your server’ s name(主机名)、Pick a username(登录用的用户名),然后输入两次密码,选择Done;
在SSH Setup(SSH设置)页面,勾选Install OpenSSH server,选择Done;
在Featured Server Snaps页面,暂不勾选任何项目,选择Done,开始安装进程,安装结束后会提示拔掉U盘,按回车重启进入新系统。
为NAS分配固定IP
以OpenWrt为例,选择网络 - DHCP/DNS,在静态地址分配中找到你的NAS,输入要设置的IPv4地址,租期(如有)推荐infinite,然后保存设置。
用SSH连接到NAS
$ ssh 你的用户名@NAS的IP地址
例如:
$ ssh wwq@192.168.0.2
然后输入登陆密码,第一次登录会出现一长串的提示后面跟着一句Are you sure you want to continue connecting (yes/no)?,输入”yes”并回车即可;需要注意的是这里不会显示已经输入的密码;完成后按回车。
安装Cockpit(控制面板)
$ sudo apt-get install cockpit
首先会提示输入密码,出现Do you want to continue[Y/n]时,直接按回车。安装好之后浏览器打开你的IP地址:9090即可进入控制台。
安装其他软件时可以参照以上步骤:
$ sudo apt-get install 软件1 软件2 软件3 ...
卸载软件:
$ sudo apt-get remove 软件1 软件2 软件3 ...
刷新软件源:
$ sudo apt-get update
更新系统中的所有软件:
$ sudo apt-get upgrade
创建SMB共享
安装samba:
$ sudo apt-get install samba
创建SMB共享用户和密码:
$ sudo smbpasswd -a 你的SMB用户名
这里你的SMB用户名可以和你的登录用户名重名,也可以不同,然后输入两遍密码;
配置samba:
$ sudo nano /etc/samba/smb.conf
当然你也可以用vi等其他编辑器;
滚动到文件最后,输入以下内容:
[共享文件夹名称]
comment= 文件夹注释
path= 文件存储位置
public=yes
writable=yes
directory mask = 0777
create mask = 0777
valid users = 你的SMB用户名,root
write list = 你的SMB用户名,root
browseable=yes
available=yes
这样会创建一个名称为“共享文件夹名称”,注释为“文件夹注释”,路径位于“文件存储位置”的,能够由用户“你的SMB用户名”登录,并能由此用户在该共享文件夹下进行读写。有关详细的权限设置等内容可以自行查找;
配置:
[Storage]
comment= JC NAS Server
path= /srv/share
public=yes
writable=yes
directory mask = 0777
create mask = 0777
valid users = wwq,root
write list = wwq,root
browseable=yes
available=yes
这代表在我的NAS中创建一个叫Storage的共享文件夹,注释是JC NAS Server,打开它所访问到的是/srv/share里面的文件,并且能够用wwq用户进行读写操作;
对于nano,按Ctrl+O保存,Ctrl+X退出,编辑其他文件可以:
$ sudo nano 文件路径
编辑大多数配置文件要增加sudo,否则无法保存;如果文件不存在,编辑器会为你创建它;
创建存储位置:
$ sudo mkdir 上面设置的文件存储位置
例如:
$ sudo mkdir /srv/share
设置权限使其可读写:
$ sudo chmod 777 上面设置的文件存储位置
例如:
$ sudo chmod 777 /srv/share
启用SMB服务:
$sudo systemctlenablesmbd
我们了解一下systemctl的使用,启用服务并设置为开机自启动:
$sudo systemctlenable服务名
启动服务但不设置开机自启:
$ sudo systemctl start 服务名
停止服务:
$ sudo systemctl stop 服务名
取消服务的开机自启:
$sudo systemctldisable服务名
重启服务(在你修改了配置文件之后会用到):
$ sudo systemctl restart 服务名
查看状态,显示绿灯为正常,红灯为失败:
$ sudo systemctl status 服务名
然后在Windows资源管理器的地址栏输入\\NAS的IP地址,例如\\192.168.0.2,就能看到共享文件夹的列表,然后双击共享文件夹,输入用户名和密码就可以访问文件了。
安装网盘服务端webd
先从webd的官网http://webd.cf/latest 获取安装包,这里需要选择webd-linux-x86_64.tar.gz,因为我们用的是常规Linux系统和x64架构;
可以用浏览器下载安装包再通过SMB上传到NAS进行安装,也可以用wget直接下载。这里介绍用wget直接下载安装包:
$ pkg=webd-linux-x86_64.tar.gz
$cd/tmp
$wget http://webd.cf/latest/${pkg}
$tar -xzvf${pkg}
$ sudo cp -fv webd/webd /usr/bin/
$ sudo cp -fv webd/webd.conf /etc/
$sudo rm -rf /tmp/webd /tmp/${pkg}
创建回收站文件夹,这里把/srv/share作为网盘根目录:
$ mkdir -p /srv/share/.Trash
编辑配置文件:
$ sudo nano /etc/webd.conf
配置用户名和密码,找到Webd.User一项:
Webd.User rlum 用户名 密码
其中rlum是权限设置:
r - 访问文件
l - 获取文件列表
u - 上传文件
m - 删除和移动文件
再配置存储路径:
Webd.Root 存储路径
这里我设置成:
Webd.Root /srv/share
通过rc.local让Webd开机自启动:
先创建链接,启用rc.local功能:
$ sudo ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service
再编辑rc.local文件
$ sudo nano /etc/rc.local
输入以下内容:
除第一行#!/bin/bash之外(它标志着这是一个脚本文件),这里#开头的内容是注释,在程序实际执行中不起作用。
#!/bin/bash
# Start webd netdisk server.
/usr/bin/webd &>/dev/null &
保存,重启系统:
$ sudo reboot
重启后webd会自动启动,浏览器打开IP地址:9212就能进入网盘页面。点击页面底部的Login,输入用户名和密码以登录到网盘。
配置硬盘自动休眠
设置自动休眠有助于延长寿命、降低功耗和噪音(特别是夜间)。
编辑rc.local
$ sudo nano /etc/rc.local
在末尾追加以下内容:
# HDD power saving
hdparm -S 休眠时间 设备名
休眠时间的常用取值:
60 = 5min
120 = 10min
180 = 15min
241 = 30min
242 = 1h
243 = 1.5h
244 = 2h
例如我有两块机械硬盘,分别是sdb和sdc,无操作30分钟后休眠:
# HDD power saving
hdparm -S 241 /dev/{sdb,sdc}
这里/dev/{sdb,sdc}是指分别操作/dev/sdb和/dev/sdc;
重启生效。