linux搭建nas
1. nas實現linux伺服器上NAS的掛載linux掛載伺服器上
想要在Linux伺服器上實現NAS的掛載,首先要滿足硬體和軟體的條件,具體來說:
(1)硬體方面,需要擁有一台NAS伺服器,用來作為存儲空間、存儲設備服務等,在此基礎上還需要有一條連接伺服器與NAS的網路線路;
(2)軟體方面,需要在伺服器上安裝支持NAS的掛載功能的操作系統,例如CentOS/Ubuntu。
在硬體和軟體條件都滿足之後,就可以開始實現NAS的掛載了,具體步驟如下:
(1)首先,打開伺服器的shell scrip窗口,使用mount命令執行掛載,其具體格式為:
mount -t nasdrive -o username=user,password=pass // ipaddress/sharename mounterpoint
其中-t參數表示掛��的NAS類型,-o參數是用來指定遠程NAS訪問的用戶名以及密碼等安全認證,ipaddress/sharename是一個URL格式,指定了NAS在網路上位置,mounterpoint表示掛載到本地Linux伺服器的掛載點。
(2)接下來,運行df命令查看掛載情況,如果出現了新的掛載點,表明NAS掛載成功,可以正常使用了。
最後,可以使用umount命令來卸載NAS,其具體格式如下:
umount // ipaddress/sharename
以上就是如何使用NAS在Linux上實現掛載的操作步驟,通過以上的操作,可以讓Linux伺服器的存儲空間得到合理的利用。
2. linux如何開啟nas服務
NAS伺服器(Network Attached Storage:網路附屬存儲)是一種將分布、獨立的數據整合為大型、集中化管理的數據中心,以便於對不同主機和應用伺服器進行訪問的技術。
Linux的系統選擇
我選擇的是Ubuntu 18.04。但是對於NAS來說,穩定且更新少是必要需求,所以我更加推薦Arch Linux。簡潔干凈,最好減少桌面配置,減少GPU佔用。
系統安裝
下載好.iso文件以後,用UltraISO燒錄進U盤里。然後重啟,按F12進入BIOS,檢查啟動列表,要打開UEFI啟動選項。然後保存設置退出,按F8打開啟動列表,選擇UEFI 你的U盤。進入系統選擇第一項,直接安裝。關於硬碟配置,我只有一個SSD和一個HDD,所以把系統安裝在SSD,讓安裝程序自動分區,HDD自動掛載用來做數據盤。其餘沒什麼好說的,按照自己的需求一直下一部就行了。
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 vimvim的使用方法
進入配置文件之後,按i進入編輯模式,把所有欄位全部刪除,輸入以下配置(#號後注釋文字可刪除):
[global] #這里是全局設置workgroup = WORKGROUP #與Windows的工作組名保持一致security = user #這里是訪問安全級別,user為最低安全等級,需要輸入用戶名和密碼。(網上的教程中的的share許可權在更新之後已經關閉了,輸入share許可權默認最高安全等級。)usershare owner only = false #給予其他設備訪問許可權public = yesbrowseable = yes[你的NAS Name] #這里是分享路徑配置comment = User's 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用戶
輸入命令
要啟用這兩個服務,請運行以下命令:
- systemctl enable smb nmb
- systemctl start smb nmb
- 參考文章:
- linux與window文件目錄共享——samba配置及在windows映射 [2013-01-21]https://blog.csdn.net/mengfanbo123/article/details/8524924
- Ubuntu下配置支持Windows訪問的samba共享 [2014-02-14]https://blog.csdn.net/i_chips/article/details/19191957
- samba配置文件注釋 [2015-02-06]https://blog.csdn.net/dhgao38/article/details/43567403
- 如何在Ubuntu 16.04上安裝和配置Samba伺服器以進行文件共享 [2017-11-02]https://www.linuxidc.com/Linux/2017-11/148194.htm
- BT軟體推薦: Transmission、Deluge
輸入命令:sudo apt-get install transmission下載transmission。
輸入命令:sudo apt-get install transmission-daemon下載transmission的web管理端
在其他設備上打開瀏覽器,在地址欄輸入你的NASIP和你剛剛設置好的埠,例如192.168.1.100:12345, 你就已經可以使用web來管理BT下載了。
如果想要更加美觀的界面和更多的設置選項,可以繼續以下步驟:
Transmission-web-control安裝- 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
- 執行安裝腳本(如果系統不支持 bash 命令,請嘗試將 bash 改為 sh ):bash install-tr-control-cn.sh如果出現 Permission denied 之類的提示,表示沒有許可權,可嘗試添加執行許可權:chmod +x install-tr-control-cn.sh如果命令成功執行,將出現文字安裝界面: 按照提示,輸入相應的數字,按回車即可。
- 安裝完成後,用瀏覽器訪問 Transmission Web Interface(如:http://192.168.1.1:9091/)即可看到新的界面;如果無法看到新界面,可能是瀏覽器緩存了,請按 Ctrl + F5 強制刷新頁面或 清空緩存 後再重新打開;注意,路徑最後不要加web
- 離線下載推薦使用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
設置開機自動啟動
- #!/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
Aria2的使用
- 參考文章:
- ubuntu安裝配置aria2[2016-08-14]https://blog.csdn.net/crazycui/article/details/52205908
- ubuntu18.04 aria2的安裝及使用詳解 [2018-08-23]https://blog.csdn.net/qq_29117915/article/details/81986509
- Ubuntu安裝aira2及開機啟動配置[2018-03-01]https://www.jianshu.com/p/3c1286c8a19d
- 對Linux的遠程連接可以使用SSH連接terminal來控制,也可以用Webmin來圖形化控制
Windows下載putty,輸入你的NAS地址和埠即可遠程使用Terminal來管理NAS主機。
- 由於包管理器中的源並沒有webmin,我們需要去官網下載軟體的包來進行安裝
sudo smbpasswd -a username
注意!在創建samba用戶之前請確保有一個同名的linux用戶。
如果想創建其他linux用戶來使用samba,請輸入命令sudo adser 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服務。
六、從其他設備訪問SAMBA文件夾 * 在同一網路的Windows 設備上,打開此電腦,點擊上方選項卡計算機,選擇選項映射網路驅動器,在文件欄輸入Host ip #你的NAS ip地址你的共享文件夾名 (此處可以不輸入根目錄)
然後就可以直接使用了。
離線下載和遠程式控制制的配置
BT下載
一、BT軟體下載
以下以Transmission為例進行介紹
這樣你就可以在桌面打開了,可以在應用程序頁面中找到啟動應用程序應用,把transmission勾選進開機自啟動。
二、web管理BT下載
打開Transmission,點擊編輯選項,點擊首選項選項卡,點擊遠程選項卡。打開遠程連接選項,輸入你覺得比較好記的埠。
1.獲取最新腳本
輸入命令:
2.執行安裝腳本
離線下載
一、關於離線下載軟體
二、Aria2安裝與配置 * Aria2 下載 輸入命令:sudo apt-get install aria2
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
添加以下內容
修改文件許可權:sudo chmod 755 /etc/init.d/aria2c
添加aria2c服務到開機啟動:sudo update-rc.d aria2c defaults
啟動服務:sudo service aria2c start
查看服務狀態:sudo systemctl status aria2c
打開瀏覽器,在地址欄輸入http://aria2c.com打開aria2的web管理器。打開右上角的設置,輸入你的NAS機地址和你的aria2配置文件的埠,如果沒有更改就是6800。
在chrome下載aria2插件,可以方便直接調用aria2下載東西,如果無響應可以直接拷貝鏈接下載。
三、關於Docker Docker功能正在研究學習,後續會更新。
配置NAS的遠程管理
一、關於遠程管理
個人推薦SSH多一些,畢竟Linux用命令還是多一些的,而Webmin會稍微直觀一些。
二、SSH的配置 * 安裝SSH
輸入命令:sudo apt-get install ssh
啟動服務:service sshd start
配置埠:vim /etc/ssh/sshd_config
去除Port前的注釋鍵,自定義埠。
查看服務是否啟動:ps -e | grep ssh
無報錯且ssh-agent和sshd兩個程序在運行即可。
三、Web管理
*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結尾。
在使用NAS時,需要先確定NAS上的NFS服務和SMB的服務都開啟了;
然後需要用NAS上的用戶去登錄,這里用的是admin:
# smbclient -L 192.168.1.40 -U admin
Enter admin's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 4.1.20]
Sharename Type Comment
--------- ---- -------
IPC$ IPC IPC Service ()
Public Disk
Project Disk
PM_Team Disk
Member Disk
Layout_Team Disk
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 4.1.20]
Server Comment
--------- -------
DISKSTATION_SH
PROSERVER Main Server
Workgroup Master
--------- -------
WORKGROUP PROSERVER
說明連接成功!
如果要使用NAS中的存儲,需要掛載到Linux伺服器中,例如:
# mount -o username=admin,password=********** //192.168.1.40/BackUp /mnt/nasBackup/
然後就可以使用了。
3. Linux掛載群暉NAS硬體存儲
一、開啟群暉文件服務的 NFS 服務
二、配置共享文件夾
三、Linux掛載NFS文件夾
4. 【無坑版】如何打造一台家用Linux NAS(四)-- 個人在線照片管理系統
在數字時代,智能手機的普及使得照片的生成與存儲成為日常生活的常態。面對海量的照片,管理、存儲與備份成為關鍵問題。本文介紹一款高效的照片管理工具——Photoprism,它基於機器學習技術,能自動對照片進行分類,檢測圖像屬性如顏色、亮度等,並支持人臉識別與直接上傳照片。
Photoprism是一款開源軟體,依託Google TensorFlow,提供強大的照片管理功能。其亮點包括自動圖像分類、屬性檢測、人臉識別、以及靈活的上傳與訪問方式,支持Docker部署與Web界面操作。部署過程簡單,通過Docker一鍵安裝,無需繁瑣配置。
部署流程概述如下:
首先下載官方提供的docker-compose.yml文件,修改應用與資料庫密碼。將該文件置於指定目錄。使用docker-compose up -d命令啟動服務。確保系統已安裝docker,如未安裝可參照centos7教程。默認埠為2342,需在寶塔面板中開放此埠。通過瀏覽器訪問如192.168.1.100:2342完成部署。
Photoprism的一大優勢在於其地圖顯示功能,它能直觀展示照片的地理分布,前提是照片中包含GPS信息。若信息缺失,可通過工具補全。
為了確保照片的安全性,本節探討了低成本「兩地三中心」備份策略。首先在Linux NAS上安裝syncthing,同步photoprism照片目錄至另一台Windows機器,並通過和彩雲同步盤實現雙備份。具體步驟包括:
在Linux NAS上安裝syncthing,設置同步目錄。在Windows機器上安裝syncthing,通過設備ID建立同步關系。安裝和彩雲客戶端,將syncthing備份目錄設置為自同步目錄。完成配置後,照片將通過syncting同步至Windows機器與和彩雲,實現多層備份。
若不依賴雲盤,通過syncthing直接備份至和彩雲也是可行的。選擇和彩雲作為備份選項,因其為移動號碼用戶提供了1T免費空間,並且不設限速,適合低成本備份策略。
5. 使用Linux將文件存儲在NAS上linux掛nas存儲
隨著計算機技術的發展,網路存儲的普及和普及,NAS(網路附加存儲)成為本地網路上一種可靠,安全,高性能的文件存儲方式。使用Linux將文件存儲在NAS上具有許多好處,比如可將本地數據安全存儲於伺服器上,避免因主機或本地驅動器故障導致的數據丟失,提高數據安全性和容錯能力,以及隨時從遠程客戶端訪問文件,同時實現文件共享等等。
伺服器上安裝Linux後,我們可以使用SSH(安全外殼)協議將文件夾映射到本地主機上。我們也可以在伺服器上安裝文件傳輸客戶端,用來從遠程客戶端將文件上傳到伺服器上。
具體實現步驟如下:
1. 安裝Linux系統,安裝SSH服務以及文件傳輸客戶端;
2. 配置伺服器上可供客戶端訪問的NAS路徑,運行以下命令:
sudo mount -t nfs :
例:sudo mount -t nfs 192.168.1.1:/NAS/data /mnt/data
3. 新建一個文件夾用於存放文件,例如新建/mnt/data/files文件夾;
4. 將本地文件使用文件傳輸客戶端上傳到伺服器指定的文件夾中;
5. 在NAS上配置文件共享,這樣就可以從遠程客戶端訪問文件了。
使用Linux將文件存儲在NAS上不僅可以提升安全性,也可以更容易地實現文件共享,從而大大提升了企業網路中文件存儲和管理的便利性和使用效率。使用Linux將文件存儲在NAS上將讓您的IT環境變得更靈活,更快捷,更安全,更可靠,更高效。