成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

對于NFS掛載的研究

網絡 網絡管理
文章中,我們隊NFS 掛載的內容進行了詳細的介紹。首先是建立根目錄,然后是文檔系統的解析……具體內容請瀏覽正文。

對于NFS來說,它的一個非常重要的應用就是掛載。在這方面我們來詳細探討一下。有些人, 想用NFS Root掛載, 來建立其客戶端的目錄, 這份 Mini-Howto,正是為了幫助這些人而寫的. 請注意, 這工作有許多方法可以達成, 端視你的需求與目的而定. 假如客戶端彼此獨立, 且每個客戶端各自有用戶群和管理員, 那么, 不和其他客戶端, 分享重要的目錄, 將是必須的.另一方面, 倘若客戶端, 計劃用于多種用戶, 并且全都由同一人管理(例如電腦課), 這種情形, 為了容易管理, 盡可能要使愈多文檔能夠分享. 這份 Howto 將焦點于第二種情況.

當建立客戶端的根目錄, 并嘗試去降到最小尺寸時, 我們主要焦點于, 哪個文檔可以分享, 或者可從伺服器掛上. 在這份 Howto 中, 我將依自己的經驗, 對客戶端的組態 (configuration), 提出建議. 但在我們開始前,  請注意:

* 這份 Mini-Howto 并沒有實際說明, 如何掛載 NFS Root.如果你需要這方面的進一步信息, 請參考 NFS-Root Mini-Howto.

* 我客戶端的組態, 大多基礎于 mounts 和 symbolic links. 這些symbolic links, 大部份可取代為 hardlinks. 選擇哪種則隨個人喜好. 而在 mount 和 symbolic link 之間, 放置 hardlink 作聯系,這樣有其優點, 但或許會發生混淆. 一個文檔, 除非它的 hardlinks全都移除了, 否則將無法刪掉. 因此, 當你更新了某個檔, 該檔的 hardlinks 仍會指到舊的版本, 為了避免這情形, 你必須非常小心, 并要維系好, 你所放置的每個連結.

* 從伺服器掛上信息的方式, 有兩種. ***種 (最普遍), 是將整個伺服器的根目錄, 掛在本地端的目錄下, 然后只改路徑, 或直接連結相關的目錄. 就我而言, 我不喜歡把伺服器的 root partitions掛到客戶端上. 因此, 這份 Howto 建議一種方式, 把伺服器上相關的目錄, 掛到系統適當的位置.

* 這份 Howto 立論于, 我在 Slackware 3.1 based distribution 之上,建立客戶端目錄的經驗. 對其他使用者來說, 可能會有地方不同 (尤其是 rc.* 這些檔), 然而觀念應該仍舊不變.

建立客戶端的根目錄

1. 建立目錄樹

最初, 你需要建立目錄本身的架構. 我把所有的客戶端, 建在/clients/hostname 之下, 我拿它用于下面的例子. 不過, 這目錄也可改為其他路徑. 接著***階段, 是在這根目錄下, 建立相關的目錄. 你應該建立下列目錄:bin, dev, etc, home, lib, mnt, proc, sbin, server, tmp, usr, var以及其他, 你可能想置于系統上的目錄.local, proc, dev 這些目錄, 每臺機器要各自一份, 而其余目錄,則是部分的, 或完整的, 和其他客戶端共享.

2. 建立開機所需, 最小的文檔系統

2.1. 建立 dev 目錄.

盡管目錄 dev 可以共享, 但***還是為每個客戶端, 各自建一個.你可以用合適的 MAKEDEV scripts, 來建客端的 dev目錄, 不過大多數情況, 直接從伺服器復制, 比較簡單:cp -a /dev /clients/hostname你應記住, /dev/mouse, /dev/cdrom, /dev/modem 是 symbolic links,將連結至實際的設備, 因此, 你應確保, 它們連結正確, 而符合客戶端的硬件.

2.2. 復制所需的執行檔.

盡管我們從伺服器, 掛載每件東西, 但***限度, 我們還是需要把些東西, 拷到客戶端. 首先, 我們需要 "初始", 在初始化之前, 系統不可能跑任何東西 (雖然作者費了許多工夫, 才發現到這件事 ;-).所以***, 你應該把 /sbin/init 復制到客戶端的目錄 sbin 下, 這么一來, 便會執行 rc.S, 接著, 你應復制 /bin/sh 到客戶端的目錄 bin 下.還有, 為了掛載所有東西, 你需要把 /sbin/mount 拷到客戶端的目錄 sbin 下. 假設你 rc.S 的***行是 mount -av, 那這就是***限度了. 然而, 我建議再多拷些檔: update, ls, rm, cp, umount, 如此一來,客戶端掛載時若出問題, 就有基本工具可用了. 假如你選擇在掛載前啟動 swap, 那你還應復制執行檔 swapon.因為這些執行檔, 多數預設為動態連結, 所以你也需復制等份的 /lib:cp -a /lib/ld* /lib/libc.* /lib/libcursses.* /client/hostname/lib應考慮, 若不用復制, 而是 hardlink 至執行檔本身的情形. 請讀我對這所作的評語, 在這份 Howto 的 2.1 節.請注意, 上述所有資料, 是假設開機時, 網路組態的參數已傳給核心. 如果你打算用 rarp 或 bootp 的話, 與這些相關的執行檔, 你也可能需要.一般而言, 你需要的文檔, 最少要使你能設定網路以及跑 rc.S, 直到開始掛上文檔系統的其他部分. 確定你檢查過, 你的 /etc/init 以及 rc.S 檔, 確定它們沒有任何的 "驚喜", 這是指, 在***次掛載前,發生存取其他文檔的狀況. 然而, 倘若你真的發現有這樣的檔, 你可以也拷過來, 或是從你的 init 檔和 rc.S 檔, 移除相關的部分.

2.3. 目錄 var

大多數情況下, 目錄 var 應該, 每個客戶端各別一份. 可是, 目錄 var 的資料大多都能共享. 請在伺服器的目錄下, 建一目錄,稱作 var. 我們將在那, 掛上伺服器的 var 目錄. 要建立本地端的var 目錄, 直接鍵入:cp -a /var /clients/hostname/現在, 你可選擇, 何者要區隔開, 何者要共享. 要共享的目錄或文檔,要先從客戶端的 var 目錄中, 把它移除, 再把它 symbolic link 至目錄 /server/var. 不過請注意, 你應該 symbolic link 至 /server/var 或../server/var, 而非 /clients/hostname/server/var, 因為這么做, 當根目錄(指 /clients/hostname/) 更動后, 將會失效.一般而言, 我建議隔開 /var/run, /var/lock, /var/spool, /var/log.

2.4. 其余的目錄

* etc 在下節有完整說明.

* mnt 與 proc 用于本地端.

* usr 和 home 僅為掛載點 (mount points).

* tmp 隨你決定. 你可以為每個客戶端, 各別建立不同的 tmp 目錄,也可以建些 /clients/tmp 目錄, 然后把它掛到每個客戶端的 /tmp之下. 我建議你為每個客戶端, 各別提供一 tmp 目錄.

3. 建立 etc 目錄, 并設定客戶端的組態

請注意 - 本節是談, 建立目錄 etc, 此目錄大多共享于客戶端之間. 假如你哪些無磁盤的客戶端, 各有不同的系統管理員, 那***為每個客戶端, 各自設立一 etc 目錄.

3.1. 建立多個客戶端共用的 etc 目錄

雖然我們隔開客戶端之間的 etc 目錄, 不過我們仍想在那, 分享大部分的文檔. 一般而言, 我認為, 和伺服器的 /etc 目錄, 共享 etc檔, 這樣不好, 因此我建議, 開個目錄 /clients/etc, 容納客戶端所需的信息. 這樣一開始, 只要把伺服器的 etc 目錄內容, 復制到/clients/etc 目錄下即可.

你應該把所有非硬件規格的組態檔, 如 motd, issue 等, 全都加進這個目錄, 而不應加入會隨客戶端硬件而異的文檔. (例如, initab或是 fstab)最重大的改變, 是在你的 rc.d 目錄里. 首先, 你應該調整 rc.inet1,以適宜于你本地端的設定. 我透過 LILO/Loadlin, 把我網路組態的所有參數, 都傳給核心, 因此我幾乎移除了 rc.inet1 檔的每一行.唯一留下的, 是 localhost 的 ifconfig 和 route. 假如你是用 rarp 或是 bootp, 那你就必須視情況而改.

其次, 你應該編輯你的 rc.S 檔. 首先, 移除所有會導致 fsck 檢查的部分, 這是因為伺服器開機時, 會啟動 fsck. 接著, 你應該把掛載你 fstab 的那一行找出來. 這應該看起來像:

  1. mount -avt nonfs 

-t nonfs 在這, 是因為正常的客戶端, 先跑 rc.S, 緊接著以 rc.inet1來組設 Ethernet. 由于這會導致, 不掛載任何的 NFS partitions,所以這行應該刪掉. 因此, 把它改成 mount -av. 倘若你需要跑rarp/bootp 來設定你網路的組態, 那就在掛載前, 在 rc.S 作這件事(或者從 rc.S 呼叫適當的 script), 并且確定你磁盤的 bin 和 sbin目錄, 提供所需的文檔.#p#

執行完 mount -av, 你就有個運作中的文檔系統了. 建個一般的fstab, 這樣稍后你便可, 把它復制到每個客戶端. 你的 fstab 應該看起來像:

  1. server:/clients/hostname    /               nfs     default  1 1  
  2. server:/bin                 /bin            nfs     default  1 1  
  3. server:/usr                 /usr            nfs     default  1 1  
  4. server:/sbin                /sbin           nfs     default  1 1  
  5. server:/home                /home           nfs     default  1 1  
  6. server:/lib                 /lib            nfs     default  1 1  
  7. server:/clients/etc         /server/etc     nfs     default  1 1  
  8. server:/clients/var         /server/var     nfs     default  1 1  
  9. none                        /proc           proc    default  1 1 

請注意, 關鍵字 default 或許不會有效于所有不同版本的掛載. 你可以把它更改為 rw 或 ro, 或者移除全部的 default 1 1.再者, 確定你伺服器的 /etc/exports, 看起來像:

  1. /clients/hostname   hostname.domainname(rw,no_root_squash)  
  2. /clients/etc        hostname.domainname(ro,no_root_squash)  
  3. /clients/var        hostname.domainname(ro,no_root_squash)  
  4. /usr                hostname.domainname(ro,no_root_squash)  
  5. /sbin               hostname.domainname(ro,no_root_squash)  
  6. /bin                hostname.domainname(ro,no_root_squash)  
  7. /lib                hostname.domainname(ro,no_root_squash)  
  8. /home               hostname.domainname(rw,no_root_squash) 

對每臺主機而言, ***行應該各自獨立, 除此之外, 其他行可替換為主機遮罩 (hostmask), 使你所有的主機都能相契 (如 pc*.domain -然而要記住, * 只能代換沒有句點的字串). 我建議你, 讓大部分的目錄唯讀, 不過這由你決定. no_root_squash 將確保使用者 root,在客戶端上, 對于 nfsd 實際也有 root 權限. 請查證 man exports(5).

假如你要讓使用者, 也能從客戶端執行 passwd, 那請確定 /etc 可讀可寫 (rw) 而非唯讀 (ro). 不過, 這并不明智.請注意另一件, 有關文檔 rc.S 的事. 在 Slackware 執行 rc.S, 預設會每次都建立新的 /etc/issue 和 /etc/motd. 假如這些檔從伺服器掛載為唯讀 (ro), 那這個功能一定要停用, 而且我建議, 在任何情況都應停用.

***, 如果你伺服器, 要和客戶端一樣, 擁有相同的使用者資料庫 (userbase), 你應在下列兩種方式作選擇,

1) 使用 NIS (YellowPages - 請參考 yp-howto), 這樣, 接收自 NIS 伺服器之故, 每個客戶端都會各自有 /etc/passwd 以及 /etc/group.

2) 大多數情況, 簡單的 symbolic link 就夠了. 因此, 你需要 hardlink /clients/etc/passwd到 /etc/passwd, 或者你喜歡用 symbolic link 的話, 那就把 /etc/passwd連結到 /clients/etc/passwd (反過來說, 這是因為客戶端并不掛載伺服器的 etc 目錄). 至于 /etc/group, 方法也一樣.

3.2. 建立單一客戶端專用的 etc 目錄

一般而言, 在客戶端的 etc 中, 文檔大部分應該 symbolic link 到目錄 /server/etc. 然而, 有些文檔應隨每臺硬件的差異, 而彼此不同,而有些只在載入核心時才用到. 目錄 etc 中, 你最少需要的檔, 如下:

  1. resolv.conf  
  2. hosts  
  3. inittab  
  4. rc.d/rc.S  
  5. fstab 

既然這五個檔, 在所有客戶端都可以相同, 你可以直接把它們hardlink, 或者再復制一次. 不過, rc.S 與 fstab 兩檔, ***是每個客戶端各復制一份. 你還需要每個客戶端, 各自一份 etc/HOSTNAME.我個人是建議, 所有的 rc.d 檔, 每個客戶端都要各自有一份, 因為組態和硬件可能彼此相異.為每個客戶端, 把適當的 swap 行, 加入其 fstab 檔:

  1. /dev/swap_partition                 swap    swap    default  1 1 

客戶端其余的 /etc 檔, 你可以 hardlink 到文檔 /clients/etc/*, 或把它們 symbolic link 到 /server/etc (這是 /clients/etc/ 的掛載點).確定你的主機能正確的 resolve, 無論是透過 named 還是 etc/hosts.在 etc/hosts 中記錄伺服器的 IP, 而不倚賴 resolve, 這方式不錯. 假如你只倚賴 named 的 resolve, named 出了個問題, 將使你客戶端無法開機.

3.3. 開機

現在, 你該作的就是, 開機, 十指交叉, 期望每件事都正常運作。

4. 建立更多的客戶端

如果你已跟著我的指示, 作到這里, 那這應該很簡單 - cd 到 /clients,鍵入:

  1. cp -a hostname1 hostname2 

然后, 確定你檢查了這幾點:rc.d/* 檔符合軟硬件組態etc/HOSTNAME 正確, fstab 的 swap 行正確, dev/mouse, dev/modem,dev/cdrom 這三個的 symbolic links 正確.

責任編輯:佟健 來源: 比特網
相關推薦

2010-08-04 14:43:03

NFS掛載

2010-07-16 17:56:18

CMD Telnet

2010-08-04 14:22:55

掛載NFS

2010-08-04 14:33:42

自動掛載nfs

2010-08-04 14:45:18

NFS掛載腳本

2010-08-04 17:41:52

掛載NFS

2019-05-08 13:18:22

Linux網絡文件系統系統運維

2010-02-03 15:52:02

Python學習研究

2010-07-15 10:24:25

Microsoft T

2010-06-21 13:07:14

2010-01-15 15:13:28

C++概述

2013-07-30 10:29:07

SUSE LinuxNFS

2010-09-10 11:27:07

WCDMA核心網絡協議棧

2009-12-03 14:53:49

.NET Framew

2009-12-24 10:28:07

WPF動態換膚

2009-12-24 15:51:34

ADO屬性

2009-12-22 09:25:57

ADO.NET3.5

2010-09-02 10:50:55

CISCO路由器dhc

2009-09-08 15:06:45

NFS服務器

2010-01-04 10:14:04

ADO.NET對象模型
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜影院在线观看 | 麻豆久久久久 | 国产成人精品午夜视频免费 | 操人视频在线观看 | 综合久久综合久久 | 成人免费淫片aa视频免费 | 亚洲欧美在线一区 | 亚洲激情一区二区三区 | 午夜精品一区二区三区在线视频 | 日韩一区二区三区四区五区 | 亚洲高清在线 | 午夜影院 | 国产成人高清视频 | 免费成人在线网站 | 精品久久久久久亚洲综合网站 | 国产高潮好爽受不了了夜夜做 | 激情亚洲 | 精品国产一区二区在线 | 久久久做 | 日韩高清电影 | 在线免费国产视频 | 毛片片 | 91久久国产综合久久91精品网站 | 国产精品免费观看视频 | 成人国产精品久久 | www.中文字幕.com | 欧美一区二区在线 | 国产成人影院 | 污书屋 | 欧美精品久久久 | 国产精品一区久久久久 | 亚洲性综合网 | 日韩一区二区三区在线观看 | 国产精品久久久久久妇女 | 欧美日韩中文字幕在线 | 国产精品久久久久久久久久久免费看 | 伊人网站在线 | 日韩精品四区 | 免费h在线| 国产欧美日韩一区二区三区在线 | 羞羞的视频免费观看 |