前言

經歷了上一次的Windows Server的痛苦配置以後,我決定換成Linux來配置NAS。相對於Windows平臺,Linux平臺會更加自由和簡潔。而且清晰的許可權和後臺也要比Win更加乾淨,唯一的弊端就是要去學不少命令。但是我這裡會幫你總結好大部分要用到的命令,快速幫你搭建好Linux平臺下的NAS。

Linux的系統選擇

我選擇的是Ubuntu 18.04。但是對於NAS來說,穩定且更新少是必要需求,所以我更加推薦Arch Linux。簡潔乾淨,最好減少桌面配置,減少GPU佔用。

配置思路

  • SMB高速傳輸
  • 基於Web的離線下載
  • SSH命令行和Web頁面管理系統

系統安裝

下載好.iso文件以後,用UltraISO燒錄進U盤裡。然後重啟,按F12進入BIOS,檢查啟動列表,要打開UEFI啟動選項。然後保存設置退出,按F8打開啟動列表,選擇UEFI 你的U盤。進入系統選擇第一項,直接安裝。關於硬碟配置,我只有一個SSD和一個HDD,所以把系統安裝在SSD,讓安裝程序自動分區,HDD自動掛載用來做數據盤。其餘沒什麼好說的,按照自己的需求一直下一部就行了。

NAS正式配置

SAMBA配置

一、安裝Ubuntu SAMBA伺服器 更新軟體源:輸入命令sudo apt-get update更新軟體源

安裝SAMBA服務:輸入命令sudo apt-get install samba安裝SAMBA伺服器。

二、創建SAMBA配置文件

備份原配置文件:sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

創建共享目錄:sudo mkdir -p /你的共享文件夾路徑 #mkdir -p 用來創建路徑中不存在的路徑

更新目錄許可權:sudo chmod -R 777 /你的共享文件夾路徑 #chmod -R 可以給你共享的目錄和該目錄下所有文件和子目錄進行相同的許可權變更。777即所有用戶對該目錄都有讀寫權。

修改配置文件:sudo vim /etc/samba/smb.conf #沒有vim的請輸入命令sudo apt-get vim vim的使用方法

進入配置文件之後,按i進入編輯模式,把所有欄位全部刪除,輸入以下配置(#號後注釋文字可刪除):

[global] #這裡是全局設置
workgroup = WORKGROUP #與Windows的工作組名保持一致
security = user #這裡是訪問安全級別,user為最低安全等級,需要輸入用戶名和密碼。(網上的教程中的的share許可權在更新之後已經關閉了,輸入share許可權默認最高安全等級。)
usershare owner only = false #給予其他設備訪問許可權
public = yes
browseable = yes
[你的NAS Name] #這裡是分享路徑配置
comment = Users NAS #這一段是標記,對配置沒有影響。
path = /你的共享文件夾路徑 #寫上你自己的共享路徑
read only = no #是否只讀
writeable = yes #是否可寫
browseable = yes #是否可瀏覽
guest ok = yes #是否可以給其他用戶使用
public = yes #是否公開
create mask = 0777 #創建許可權
directory mask = 0777 #目錄許可權
vaild users = user #輸入當前用戶名
[你的NAS名字]
#如果同一臺機子你想分開共享路徑,就把上面的配置複製到這裡。

三、創建SAMBA用戶

  • 輸入命令

sudo smbpasswd -a username

注意!在創建samba用戶之前請確保有一個同名的linux用戶。

如果想創建其他linux用戶來使用samba,請輸入命令sudo adduser username來創建新用戶

四、重啟SAMBA服務 * 輸入命令

sudo systemctl restart smbd

五、檢查SAMBA服務是否正在運行 * 要檢查samba 服務是否正在運行,請輸入命令:

systemctl status smbd

systemctl status nmbd

  • 要啟用這兩個服務,請運行以下命令:

sudo systemctl start smbd

sudo systemctl start nmbd

開始運行後,smbd將在139和445埠上偵聽,若有無法訪問,可以檢查是否為埠封鎖。

PS:Manjaro等Arch系用戶請使用下面的命令來啟用samba服務。

systemctl enable smb nmb
systemctl start smb nmb

六、從其他設備訪問SAMBA文件夾 * 在同一網路的Windows 設備上,打開此電腦,點擊上方選項卡計算機 ,選擇選項映射網路驅動器,在文件欄輸入Host ip #你的NAS ip地址你的共享文件夾名 (此處可以不輸入根目錄)

然後就可以直接使用了。

參考文章:

linux與window文件目錄共享——samba配置及在windows映射 [2013-01-21]blog.csdn.net/mengfanbo Ubuntu下配置支持Windows訪問的samba共享 [2014-02-14] blog.csdn.net/i_chips/a samba配置文件注釋 [2015-02-06]blog.csdn.net/dhgao38/a 如何在Ubuntu 16.04上安裝和配置Samba伺服器以進行文件共享 [2017-11-02] linuxidc.com/Linux/2017


離線下載和遠程控制的配置

BT下載

一、BT軟體下載

BT軟體推薦: Transmission、Deluge

以下以Transmission為例進行介紹

  • 輸入命令:sudo apt-get install transmission 下載transmission。
  • 輸入命令:sudo apt-get install transmission-daemon 下載transmission的web管理端

這樣你就可以在桌面打開了,可以在應用程序頁面中找到啟動應用程序應用,把transmission勾選進開機自啟動。

二、web管理BT下載

打開Transmission,點擊編輯選項,點擊首選項選項卡,點擊遠程選項卡。打開遠程連接選項,輸入你覺得比較好記的埠。

  • 在其他設備上打開瀏覽器,在地址欄輸入你的NASIP和你剛剛設置好的埠,例如192.168.1.100:12345, 你就已經可以使用web來管理BT下載了。
  • 如果想要更加美觀的界面和更多的設置選項,可以繼續以下步驟: Transmission-web-control 安裝

1.獲取最新腳本

輸入命令:

wget https://github.com/ronggang/transmission-web-control/raw/master/release/install-tr-control-cn.sh

請留意執行結果,如果出現install-tr-control-cn.sh.1之類的提示,表示文件已存在,請使用 rm install-tr-control-cn.sh* 刪除之前的腳本再重新執行上面的命令。 如果提示 https 獲取失敗,請使用以下命令獲取安裝腳本:

wget https://github.com/ronggang/transmission-web-control/raw/master/release/install-tr-control-cn.sh --no-check-certificate

如果提示文件已存在,可以通過 rm install-tr-control-cn.sh 進行刪除後再執行下載;或者在 wget 後面添加 -N 參數,如:

wget -N https://github.com/ronggang/transmission-web-control/raw/master/release/install-tr-control-cn.sh --no-check-certificate

2.執行安裝腳本

執行安裝腳本(如果系統不支持 bash 命令,請嘗試將 bash 改為 sh ): bash install-tr-control-cn.sh 如果出現 Permission denied 之類的提示,表示沒有許可權,可嘗試添加執行許可權: chmod +x install-tr-control-cn.sh 如果命令成功執行,將出現文字安裝界面: 按照提示,輸入相應的數字,按回車即可。

安裝完成後,用瀏覽器訪問 Transmission Web Interface(如:192.168.1.1:9091/ )即可看到新的界面;如果無法看到新界面,可能是瀏覽器緩存了,請按 Ctrl + F5 強制刷新頁面或 清空緩存 後再重新打開;注意,路徑最後不要加web

離線下載

一、關於離線下載軟體

離線下載推薦使用aria2,功能齊全,下載性能強悍,比迅雷會員下載還猛。

二、Aria2安裝與配置 * Aria2 下載 輸入命令: sudo apt-get install aria2

Aria2完整安裝:

sudo mkdir /etc/aria2 #新建aria2文件夾
sudo touch /etc/aria2/aria2.session #新建session文件
sudo chmod 777 /etc/aria2/aria2.session #設置aria2.session可寫
sudo vim /etc/aria2/aria2.conf #創建配置文件

  • Aria2 配置 vim 打開aria2.conf,將下列配置直接拷貝進文檔內再自行進行編輯。

注意!注釋號內的配置皆為不生效使用默認配置,如果要自定義配置一定要把配置前的注釋號刪除!

##開頭為注釋內容, 選項都有相應的注釋說明, 根據需要修改
#被注釋的選項填寫的是默認值, 建議在需要修改時再取消注釋

#文件保存相關

# 文件的保存路徑(可使用絕對路徑或相對路徑), 默認: 當前啟動位置
dir=~/downloads
# 啟用磁碟緩存, 0為禁用緩存, 需1.16以上版本, 默認:16M
#disk-cache=32M
# 文件預分配方式, 能有效降低磁碟碎片, 默認:prealloc
# 預分配所需時間: none < falloc ? trunc < prealloc
# falloc和trunc則需要文件系統和內核支持
# NTFS建議使用falloc, EXT3/4建議trunc, MAC 下需要注釋此項
#file-allocation=none
# 斷點續傳
continue=true

#下載連接相關

# 最大同時下載任務數, 運行時可修改, 默認:5
#max-concurrent-downloads=5
# 同一伺服器連接數, 添加時可指定, 默認:1
max-connection-per-server=5
# 最小文件分片大小, 添加時可指定, 取值範圍1M -1024M, 默認:20M
# 假定size=10M, 文件為20MiB 則使用兩個來源下載; 文件為15MiB 則使用一個來源下載
min-split-size=10M
# 單個任務最大線程數, 添加時可指定, 默認:5
#split=5
# 整體下載速度限制, 運行時可修改, 默認:0
#max-overall-download-limit=0
# 單個任務下載速度限制, 默認:0
#max-download-limit=0
# 整體上傳速度限制, 運行時可修改, 默認:0
#max-overall-upload-limit=0
# 單個任務上傳速度限制, 默認:0
#max-upload-limit=0
# 禁用IPv6, 默認:false
#disable-ipv6=true
# 連接超時時間, 默認:60
#timeout=60
# 最大重試次數, 設置為0表示不限制重試次數, 默認:5
#max-tries=5
# 設置重試等待的秒數, 默認:0
#retry-wait=0

#進度保存相關

# 從會話文件中讀取下載任務
input-file=/etc/aria2/aria2.session
# 在Aria2退出時保存`錯誤/未完成`的下載任務到會話文件
save-session=/etc/aria2/aria2.session
# 定時保存會話, 0為退出時才保存, 需1.16.1以上版本, 默認:0
#save-session-interval=60

#RPC相關設置

# 啟用RPC, 默認:false
enable-rpc=true
# 允許所有來源, 默認:false
rpc-allow-origin-all=true
# 允許非外部訪問, 默認:false
rpc-listen-all=true
# 事件輪詢方式, 取值:[epoll, kqueue, port, poll, select], 不同系統默認值不同
#event-poll=select
# RPC監聽埠, 埠被佔用時可以修改, 默認:6800
#rpc-listen-port=6800
# 設置的RPC授權令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 選項
#rpc-secret=<TOKEN>
# 設置的RPC訪問用戶名, 此選項新版已廢棄, 建議改用 --rpc-secret 選項
#rpc-user=<USER>
# 設置的RPC訪問密碼, 此選項新版已廢棄, 建議改用 --rpc-secret 選項
#rpc-passwd=<PASSWD>
# 是否啟用 RPC 服務的 SSL/TLS 加密,
# 啟用加密後 RPC 服務需要使用 https 或者 wss 協議連接
#rpc-secure=true
# 在 RPC 服務中啟用 SSL/TLS 加密時的證書文件,
# 使用 PEM 格式時,您必須通過 --rpc-private-key 指定私鑰
#rpc-certificate=/path/to/certificate.pem
# 在 RPC 服務中啟用 SSL/TLS 加密時的私鑰文件
#rpc-private-key=/path/to/certificate.key

#BT/PT下載相關

# 當下載的是一個種子(以.torrent結尾)時, 自動開始BT任務, 默認:true
#follow-torrent=true
# BT監聽埠, 當埠被屏蔽時使用, 默認:6881-6999
listen-port=51413
# 單個種子最大連接數, 默認:55
#bt-max-peers=55
# 打開DHT功能, PT需要禁用, 默認:true
enable-dht=false
# 打開IPv6 DHT功能, PT需要禁用
#enable-dht6=false
# DHT網路監聽埠, 默認:6881-6999
#dht-listen-port=6881-6999
# 本地節點查找, PT需要禁用, 默認:false
#bt-enable-lpd=false
# 種子交換, PT需要禁用, 默認:true
enable-peer-exchange=false
# 每個種子限速, 對少種的PT很有用, 默認:50K
#bt-request-peer-speed-limit=50K
# 客戶端偽裝, PT需要
peer-id-prefix=-TR2770-
user-agent=Transmission/2.77
# 當種子的分享率達到這個數時, 自動停止做種, 0為一直做種, 默認:1.0
seed-ratio=0
# 強制保存會話, 即使任務已經完成, 默認:false
# 較新的版本開啟後會在任務完成後依然保留.aria2文件
#force-save=false
# BT校驗相關, 默認:true
#bt-hash-check-seed=true
# 繼續之前的BT任務時, 無需再次校驗, 默認:false
bt-seed-unverified=true
# 保存磁力鏈接元數據為種子文件(.torrent文件), 默認:false
bt-save-metadata=true

  • 啟動aria2

輸入命令:sudo aria2c --conf-path=/etc/aria2/aria2.conf

如果沒有提示錯誤,按ctrl+c停止運行命令,轉為後臺運行:

sudo aria2c --conf-path=/etc/aria2/aria2.conf -D

  • 設置開機自動啟動

輸入命令創建:sudo vim /etc/init.d/aria2c

添加以下內容

#!/bin/sh
### BEGIN INIT INFO
# Provides: aria2
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Aria2 Downloader
### END INIT INFO

case "$1" in
start)

echo -n "已開啟Aria2c"
sudo aria2c --conf-path=/etc/aria2/aria2.conf -D
;;
stop)

echo -n "已關閉Aria2c"
killall aria2c
;;
restart)

killall aria2c
sudo aria2c --conf-path=/etc/aria2/aria2.conf -D
;;
esac
exit

修改文件許可權:sudo chmod 755 /etc/init.d/aria2c

添加aria2c服務到開機啟動:sudo update-rc.d aria2c defaults

啟動服務:sudo service aria2c start

查看服務狀態:sudo systemctl status aria2c

  • Aria2的使用

打開瀏覽器,在地址欄輸入http://aria2c.com打開aria2的web管理器。打開右上角的設置,輸入你的NAS機地址和你的aria2配置文件的埠,如果沒有更改就是6800。

在chrome下載aria2插件,可以方便直接調用aria2下載東西,如果無響應可以直接拷貝鏈接下載。

三、關於Docker Docker功能正在研究學習,後續會更新。

參考文章:

ubuntu安裝配置aria2[2016-08-14] blog.csdn.net/crazycui/ ubuntu18.04 aria2的安裝及使用詳解 [2018-08-23] blog.csdn.net/qq_291179 Ubuntu安裝aira2及開機啟動配置[2018-03-01]jianshu.com/p/3c1286c8a

配置NAS的遠程管理

一、關於遠程管理

對Linux的遠程連接可以使用SSH連接terminal來控制,也可以用Webmin來圖形化控制

個人推薦SSH多一些,畢竟Linux用命令還是多一些的,而Webmin會稍微直觀一些。

二、SSH的配置 * 安裝SSH

輸入命令:sudo apt-get install ssh

啟動服務:service sshd start

配置埠:vim /etc/ssh/sshd_config

去除Port前的注釋鍵,自定義埠。

查看服務是否啟動:ps -e | grep ssh

無報錯且ssh-agentsshd兩個程序在運行即可。

  • Windows下載putty,輸入你的NAS地址和埠即可遠程使用Terminal來管理NAS主機。

三、Web管理

*Webmin安裝

由於包管理器中的源並沒有webmin,我們需要去官網下載軟體的包來進行安裝

使用wget來下載包:

cd /你的下載目錄

wget https://prdownloads.sourceforge.net/webadmin/webmin_1.910_all.deb

然後運行安裝命令

dpkg --install webmin_1.910_all.deb

安裝程序將會自動把Webmin安裝進 /usr/share/webmin目錄內。如果沒有任何報錯,你就可以在其他設備中輸入http://NASIPAddress:10000/,請自行更換NAS的IP。

若遇到缺少依賴的報錯,請輸入該命令解決依賴:apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python

若安裝依賴庫的過程中報錯為無法找到包,請輸入vim /etc/apt/sources.list,檢查最後一行是否以universe結尾。

參考文章:Linux配置SSH服務實現遠程遠程訪問[2018-03-30]blog.csdn.net/liguangxi

推薦閱讀:

相關文章