歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux配置文件全面認識

Linux配置文件全面認識

日期:2017/2/28 17:24:23   编辑:Linux教程

Linux配置文件

系統配置文件

內核本身也可以看成是一個“程序”。為什麼內核需要配置文件?內核需要了解系統中用戶和組的列表,進而管理文件權限(即根據權限判定特定用戶(UNIX_USERS)是否可以打開某個文件)。注意,這些文件不是明確地由程序讀取的,而是由系統庫所提供的一個函數讀取,並被內核使用。例如,程序需要某個用戶的(加密過的)密碼時不應該打開 /etc/passwd 文件。相反,程序應該調用系統庫的 getpw() 函數。這種函數也被稱為系統調用。打開 /etc/passwd 文件和之後查找那個被請求的用戶的密碼都是由內核(通過系統庫)決定的。

  除非另行指定,Red Hat Linux 系統中大多數配置文件都在 /etc 目錄中。配置文件可以大致分為下面幾類:

訪問文件

  /etc/host.conf 告訴網絡域名服務器如何查找主機名。(通常是 /etc/hosts,然後就是名稱服務器;可通過 netconf 對其進行更改)

  /etc/hosts 包含(本地網絡中)已知主機的一個列表。如果系統的 IP 不是動態生成,就可以使用它。對於簡單的主機名解析(點分表示法),在請求 DNS 或 NIS 網絡名稱服務器之前,/etc/hosts.conf 通常會告訴解析程序先查看這裡。

  /etc/hosts.allow 請參閱 hosts_access 的聯機幫助頁。至少由 tcpd 讀取。

  /etc/hosts.deny 請參閱 hosts_access 的聯機幫助頁。至少由 tcpd 讀取。

引導和登錄/注銷

  /etc/issue & /etc/issue.net 這些文件由 mingetty(和類似的程序)讀取,用來向從終端(issue)或通過 telnet 會話(issue.net)連接的用戶顯示一個“welcome”字符串。 它們包括幾行聲明 Red Hat 版本號、名稱和內核 ID 的信息。它們由 rc.local 使用。

  /etc/RedHat-release 包括一行聲明 Red Hat 版本號和名稱的信息。由 rc.local 使用。

  /etc/rc.d/rc 通常在所有運行級別運行,級別作為參數傳送。 例如,要以圖形(Graphics)模式(X-Server)引導機器,請在命令行運行下面的命令:init 5。運行級別 5 表示以圖形模式引導系統。

  /etc/rc.d/rc.local 非正式的。可以從 rc、rc.sysinit 或 /etc/inittab 調用。

  /etc/rc.d/rc.sysinit 通常是所有運行級別的第一個腳本。

  /etc/rc.d/rc/rcX.d 從 rc 運行的腳本(X 表示 1 到 5 之間的任意數字)。這些目錄是特定“運行級別”的目錄。 當系統啟動時,它會識別要啟動的運行級別,然後調用該運行級別的特定目錄中存在的所有啟動腳本。例如,系統啟動時通常會在引導消息之後顯示“entering run-level 3”的消息;這意味著 /etc/rc.d/rc3.d/ 目錄中的所有初始化腳本都將被調用。

文件系統

  內核提供了一個接口,用來顯示一些它的數據結構,這些數據結構對於決定諸如使用的中斷、初始化的設備和內存統計信息之類的系統參數可能很有用。這個接口是作為一個獨立但虛擬的文件系統提供的,稱為 /proc 文件系統。很多系統實用程序都使用這個文件系統中存在的值來顯示系統統計信息。例如,/proc/modules 文件列舉系統中當前加載的模塊。lsmod 命令讀取此信息,然後將其以人們可以看懂的格式顯示出來。 下面表格中指定的 mtab 文件以同樣的方式讀取包含當前安裝的文件系統的 /proc/mount 文件。

  /etc/mtab 這將隨著 /proc/mount 文件的改變而不斷改變。換句話說,文件系統被安裝和卸載時,改變會立即反映到此文件中。

  /etc/fstab 列舉計算機當前“可以安裝”的文件系統。 這非常重要,因為計算機引導時將運行 mount -a 命令,該命令負責安裝 fstab 的倒數第二列中帶有“1”標記的每一個文件系統。

  /etc/mtools.conf DOS 類型的文件系統上所有操作(創建目錄、復制、格式化等等)的配置。

系統管理

  /etc/group 包含有效的組名稱和指定組中包括的用戶。單一用戶如果執行多個任務,可以存在於多個組中。例如,如果一個“用戶”是“project 1”工程組的成員,同時也是管理員,那麼在 group 文件中他的條目看起來就會是這樣的:user: * : group-id : project1

  /etc/nologin 如果有 /etc/nologin 文件存在,login(1) 將只允許 root 用戶進行訪問。它將對其它用戶顯示此文件的內容並拒絕其登錄。

  etc/passwd 請參閱“man passwd”。它包含一些用戶帳號信息,包括密碼(如果未被 shadow 程序加密過)。

  /etc/rpmrc rpm 命令配置。所有的 rpm 命令行選項都可以在這個文件中一起設置,這樣,當任何 rpm 命令在該系統中運行時,所有的選項都會全局適用。

  /etc/securetty 包含設備名稱,由 tty 行組成(每行一個名稱,不包括前面的 /dev/),root 用戶在這裡被允許登錄。

  /etc/usertty

  /etc/shadow 包含加密後的用戶帳號密碼信息,還可以包括密碼時效信息。包括的字段有:

    登錄名

    加密後的密碼

    從 1970 年 1 月 1 *到密碼最後一次被更改的天數

    距密碼可以更改之前的天數

    距密碼必須更改之前的天數

    密碼到期前用戶被警告的天數

    密碼到期後帳戶被禁用的天數

    從 1970 年 1 月 1 *到帳號被禁用的天數

  /etc/shells 包含系統可用的可能的“shell”的列表。

  /etc/motd 每*消息;在管理員希望向 Linux 服務器的所有用戶傳達某個消息時使用。

聯網

  /etc/gated.conf gated 的配置。只能被 gated 守護進程所使用。

  /etc/gated.version 包含 gated 守護進程的版本號。

  /etc/gateway 由 routed 守護進程可選地使用。

  /etc/networks 列舉從機器所連接的網絡可以訪問的網絡名和網絡地址。通過路由命令使用。允許使用網絡名稱。

  /etc/protocols 列舉當前可用的協議。請參閱 NAG(網絡管理員指南,Network Administrators Guide)和聯機幫助頁。

  C 接口是 getprotoent。絕不能更改。

  /etc/resolv.conf 在程序請求“解析”一個 IP 地址時告訴內核應該查詢哪個名稱服務器。

  /etc/rpc 包含 RPC 指令/規則,這些指令/規則可以在 NFS 調用、遠程文件系統安裝等中使用。

  /etc/exports 要導出的文件系統(NFS)和對它的權限。

  /etc/services 將網絡服務名轉換為端口號/協議。由 inetd、telnet、tcpdump 和一些其它程序讀取。有一些 C 訪問例程。

  /etc/inetd.conf inetd 的配置文件。請參閱 inetd 聯機幫助頁。 包含每個網絡服務的條目,inetd 必須為這些網絡服務控制守護進程或其它服務。注意,服務將會運行,但在 /etc/services 中將它們注釋掉了,這樣即使這些服務在運行也將不可用。 格式為:

  /etc/sendmail.cf 郵件程序 sendmail 的配置文件。比較隱晦,很難理解。

  /etc/sysconfig/network 指出 NETWORKING=yes 或 no。至少由 rc.sysinit 讀取。

  /etc/sysconfig/network-scripts/if* Red Hat 網絡配置腳本。

Copyright © Linux教程網 All Rights Reserved