linux下通過NFS將遠程磁碟mount到本地

来源:http://www.cnblogs.com/erbing/archive/2016/04/21/5416863.html
-Advertisement-
Play Games

# Turn off v2 and v3 protocol support # RPCNFSDARGS="-N 2 -N 3" # Turn off v4 protocol support #RPCNFSDARGS="-N 4" /*把這句話的#號去掉*/ NFS分為三個版本,即NFS-2 NFS- ...


最近由於項目原因需要和其他兩家公司對接,需要取對方伺服器中的圖像數據,原本約定是三方都通過http協議來進行通訊,奈何對接方不配合,說文件就在他們伺服器放著,怎麼取他們不管。所以採取將對方伺服器磁碟掛載到本地的方法來獲取。
 
NFS(Network File System)即網路文件系統,是FreeBSD支持的文件系統中的一種,它允許網路中的電腦之間通過TCP/IP網路共用資源。在NFS的應用中,本地NFS的客戶端應用可以透明地讀寫位於遠端NFS伺服器上的文件,就像訪問本地文件一樣。
本文的兩個linux環境分別為CentOS和Ubuntu,其他版本類似。
將Ubuntu下的/home/dhcc/nfs掛載到CentOS下/home/shao/nfs。
 
Ubuntu
1.安裝配置NFS伺服器
sudo apt-get install nfs-kernel-server nfs-common
2.配置參數
vim /etc/exports 
文件最後加入一行,註意不要加到註釋
/home/dhcc/nfs *(rw,sync,no_root_squash)      #該目錄為nfs服務根目錄,*表示允許所有的網段訪問,也可以使用具體的IP,參數詳解在最後
3.建立nfs目錄(如果配置了已存在的目標可跳過此步)
sudo mkdir /home/dhcc/nfs
4.查看配置是否生效
exportfs -r   #更新配置
showmount -e
如果生效會顯示
Export list for Ubuntu:
home/dhcc/nfs
5.重啟nfs服務
/etc/init.d/nfs-kernel-server restart 
 
CentOS:
1.創建掛載目錄(如果已存在請跳過)
mkdir /home/shao/nfs
2.安裝nfs-utils
yum install nfs-utils
2.mount掛載
mount -t nfs 10.18.105.116:/home/dhcc/nfs /home/shao/nfs      #Ubuntu的ip為10.18.105.116
3.開機自動掛載
vim /etc/rc.local 
添加一行
sudo mount -t nfs 10.18.105.116:/home/dhcc/nfs /home/shao/nfs
 
如果出現mount.nfs:access denied by server while mounting問題,可通過以下幾種途徑嘗試解決:
1.修改需掛載的nfs目錄許可權
chmod 755 /home/dhcc/nfs
2.如果埠號大於1024,則需要將 insecure 選項加入到配置文件(/etc/exports):
vim /etc/exports 
文件最後加入一行
/home/dhcc/nfs *(insecure,rw,sync,no_root_squash)  
3.修改/etc/sysconfig/nfs文件
# Turn off v2 and v3 protocol support  #  RPCNFSDARGS="-N 2 -N 3"  # Turn off v4 protocol support  #RPCNFSDARGS="-N 4"    /*把這句話的#號去掉*/  NFS分為三個版本,即NFS-2 NFS-3 NFS-4,該配置文件預設關閉了這三個的NFS版本,我們只需要打開NFS-4即可。    
附錄:NFS常用參數如下:
ro 只讀訪問
rw 讀寫訪問sync 所有數據在請求時寫入共用
async nfs在寫入數據前可以響應請求
secure nfs通過1024以下的安全TCP/IP埠發送
insecure nfs通過1024以上的埠發送
wdelay 如果多個用戶要寫入nfs目錄,則歸組寫入(預設)
no_wdelay 如果多個用戶要寫入nfs目錄,則立即寫入,當使用async時,無需此設置。
hide 在nfs共用目錄中不共用其子目錄
no_hide 共用nfs目錄的子目錄
subtree_check 如果共用/usr/bin之類的子目錄時,強制nfs檢查父目錄的許可權(預設)
no_subtree_check 和上面相對,不檢查父目錄許可權
all_squash 共用文件的UID和GID映射匿名用戶anonymous,適合公用目錄。
no_all_squash 保留共用文件的UID和GID(預設)
root_squash root用戶的所有請求映射成如anonymous用戶一樣的許可權(預設)
no_root_squas root用戶具有根目錄的完全管理訪問許可權
anonuid=xxx 指定nfs伺服器/etc/passwd文件中匿名用戶的UID
anongid=xxx 指定nfs伺服器/etc/passwd文件中匿名用戶的GID

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • rewrite模塊名:ngx_http_rewrite_module預設自動被編譯 指令:rewrite regex replacement [flag] regex :正則表達式,用於匹配用戶請求的uri replacement:重寫後的結果 flag: last:重寫完成之後停止對當前uri的進 ...
  • 1、安裝svn客戶端 1.1、使用命令安裝 1)CentOS 2)ubuntu 1.2、源碼安裝 http://www.cnblogs.com/fengbohello/p/4142810.html 2、開啟svn服務進程 2.1、我的習慣是把代碼倉庫放在/opt/svn目錄下,所以先創建目錄/opt ...
  • 1.Gnu/Linux是一個基於POSIX和UNIX的多用戶多任務 支持多線程多CPU的類UNIX的操作系統. 繼承了UNIX以網路為核心的設計思想 是性能穩定的多用戶網路操作系統. 1991年10月5日Linus Torvalds在usenet的comp.os.minix新聞組中發佈了第一個Lin ...
  • 故宮角樓是很多攝影愛好者常去的地方,夕陽餘輝下的故宮角樓平靜而安詳。首先,瞭解一下進程的基本概念,進程在記憶體中佈局和內容。此外,還需要知道運行時是如何為動態數據結構(如鏈表和二叉樹)分配額外記憶體的。一 進程1 進程和程式進程:是一個可執行程式的實例。程式:包含一系列信息的文件,這些信息描述瞭如何在運... ...
  • 最新的教程同時針對kali linux2016最新版本的多個問題解決辦法還有一些實例利用。 下載地址:http://www.fu83.cn/thread-310-1-1.html ...
  • 1.calc:啟動計算器 2.appwiz.cpl:程式和功能 3.certmgr.msc:證書管理實用程式 4.charmap:啟動字元映射表 5.chkdsk.exe:Chkdsk磁碟檢查(管理員身份運行命令提示符) 6.cleanmgr: 打開磁碟清理工具 7.cliconfg:SQL SER ...
  • 一、Android系統架構 第一層:Linux內核 包括驅動程式,管理記憶體、進程、電源等資源的程式 第二層:C/C++代碼庫 包括Linux的.so文件以及嵌入到APK程式中的NDK代碼 第三層:Android SDK API 包括用Java編寫的各種Library 第四層:應用程式 這是程式員與非 ...
  • 關於Icinga-php4的文檔信息及下載地址,可參考:http://icinga-cn.sourceforge.net/ 我這裡使用的是icinga-pnp4-cn-1.12.2.tar.xz。 因為賬號限制的原因,在這裡並沒有新建icinga用戶,後續icinga的使用者是monitor用戶。後 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...