對RedHat 系統的一些概括性描述(轉)
對RedHat 系統的一些概括性描述(轉)[@more@]RedHat使用RPM作為軟體組織方式, 其啟動風格是SYSV的. 我在這裡
就我所理解的東東作一個描述.
1. 啟動
------
在/etc/rc.d/--有下列目錄rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d
init.d
還有下列檔案
rc rc.local rc.sysinit
rcn.d (n為1到6) 是對應於不同的runlevel下起不同的服務. 這些目錄下都
是一些符號連線, 連線到init.d下的一些檔案.以S開頭的表示要啟動, 以K開頭的不啟動.
第一個字母后面的數值是一個優先順序, 這個優先順序是用chkconfig來維護的. init.d下
的每一個檔案都有類似下面的話:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for
# higher quality random number generation.
看有chkconfig的那一行, 2345表示在runlevel 2 3 4 5下被啟動, 20 80 是優先順序
20為啟動, 80為關閉. 即在rc3.d你可能看到 S20 或 K80. Redhat下的setup也是用
它處理的. 你可以再參考一下man chkconfig. 有一點注意, 優先即是一個兩位數.
RedHat下啟動網路一定要啟動network的服務, 該服務會執行
/etc/sysconfig/network, 並用ifup載入所有的/etc/sysconfig/network-script
下定義的網路卡. 注意, 在預設配置中這些定義檔名中不可以有. 象ipforward這樣的定義
也是在它中完成的. 你可以看看它的原始檔. 它還定義了一個重要的變數$NETWORK, 其他的所
有網路服務都透過檢查該變數來決定是否啟動.
另外的三個檔案是這樣的
先執行rc.sysinit 完成了包括mount分割槽 啟用swap 載入modules等重要的工作.
再執行rc.local 完成一些本地的處理, 預設情況下, 它幾乎什麼都沒作.
最後是執行rc 啟動所有的服務.
2. 文件
------
最常用的是man手冊, 在/usr/doc下有一些HOWTO, 和一些軟體的文件. 實際上最
方便的是info系統, 如果你沒用過的話, 執行一下info. 看一看熱鍵的幫助. 裡面的文件非常
多. 許多的軟體的說明檔案有多種格式, text-info是很普通的, 特別是在一些大的軟體中.
你可以使用 install-info 命令來安裝新的text-info檔案. 另一種比較通用的格式是SGML,
它可以被方便的轉化為其他格式的檔案 如:html info lyx latex txt rtf.
tex和latex也是一種比較通用的格式, 他們最終被處理成dvi檔案來觀看.
ps(postscript)使用gv(ghostview)來觀看.
pdf 使用xpdf或acroread來看, xpdf的速度要快一些, 但對新的pdf格式不支援.
這三種格式主要是圖形格式, 解析度比較高. 但大部分的說明是純文字的, 這時, info
是最爽的.
3. 關閉
------
halt reboot shutdown Ctrl_Alt_Del這三個命令都完成了那些工作?
它們同屬於SysVinit包. reboot是一個連向halt的符號連線.
我這裡講的是RedHat 6.0所帶的SysVinit2.74.
先說明幾個小問題:
runlevel是從wtmp中找到的. 在啟動時, 由init寫入.
runlevel 0 是 halt mode,
1 是 single mode or maintenance mode
6 是 reboot mode.
halt(reboot)
如果系統的runlevel不是0或6, halt會exec shutwon -h,
而reboot會exec shutdown -r.
主要的工作都是由shutdown來完成的. halt的引數都被整理後
發到shutdown(exec時的引數).
shutdown
大部分程式碼用於處理引數等等, 核心工作是由shutdown來完成的.
shutdown主要是呼叫execv init來修改runlevel. 它也完成
下列工作: warn 系統上的每一個使用者. 處理幾個檔案:
/etc/nologin
/fastboot
/forcefsck
引數-n, 這是, 它自己來完成所有的工作, 而不呼叫init.
Ctrl-Alt-Del實際上是由init程式直接處理的, 它通知kernel將
Ctrl-Alt-Del訊號轉化為SIGINT發到它.
4. 口令的長度和加密演算法
-------------------
很多人在說Linux使用了DES加密演算法, 最多隻能用8個字元的口令. 但這是不對的,
Linux的認證都是透過pam來作的, 它使用了兩種演算法 bigcrypt和md5, 前一種支援到128個字
符, 後一種是無限長. 事實上在UNIX中只需要一種單向的演算法即可, 它並不需要一種可以加密解
密的演算法. RedHat中用setup來修改級認證機制時, 它只修改了三個檔案
/etc/pam.d/login
/etc/pam.d/rlogin
/etc/pam.d/passwd
中的一行:
passwd /lib/security/pam_pwdb.so shadow md5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pam中的auth並不需要這樣的設定, 它會根據crypted passwd中的salt來判斷是那一種演算法,
因此檔案中兩種演算法是可以並存的,
cat /etc/shadow
friday:$1$I92CumQb$I./BJehrqEKIUX9vNmZcL/:10832:0:99999:7:-1:-1:134538420
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
md5以$1$開頭, 其salt為$1$I92CumQb$.
5. Shadow 和 Unshadow
---------------------
將當前的passwd狀態在兩種格式之間轉換, 可以用下列命令來完成.
pwconv
unpwdconv
不過, 我實在看不出後者有什麼用.
6. make install
---------------
在你安裝軟體的最後一步往往是make install.
這時, 通常有兩種做法:
1. cp execfile /usr/bin/execfile
2. 使用 install 命令 如:
install execfile /usr/bin/execfile
事實上, 後一種更廣泛. 它有一些引數可以設定檔案的屬主, 檔案的模
式等.
7. vi 中的顏色
------------
在~/.exrc加入下面一行
syntax on
8. Xemacs 的中文環境
------------------
Emacs使用Mule來處理多國語言.
如果你已經安裝好了帶Mule的Xemacs. 在你的~/.emacs 加入如下一行.
(setup-chinese-gb-environment)
這樣, 每次啟動會自動的設製成中文環境.
你可以從Mule->Describe labguage support中來選擇一個合適的輸入法.
Ctrl- 用於啟用或關閉中文輸入.
就我所理解的東東作一個描述.
1. 啟動
------
在/etc/rc.d/--有下列目錄rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d
init.d
還有下列檔案
rc rc.local rc.sysinit
rcn.d (n為1到6) 是對應於不同的runlevel下起不同的服務. 這些目錄下都
是一些符號連線, 連線到init.d下的一些檔案.以S開頭的表示要啟動, 以K開頭的不啟動.
第一個字母后面的數值是一個優先順序, 這個優先順序是用chkconfig來維護的. init.d下
的每一個檔案都有類似下面的話:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for
# higher quality random number generation.
看有chkconfig的那一行, 2345表示在runlevel 2 3 4 5下被啟動, 20 80 是優先順序
20為啟動, 80為關閉. 即在rc3.d你可能看到 S20 或 K80. Redhat下的setup也是用
它處理的. 你可以再參考一下man chkconfig. 有一點注意, 優先即是一個兩位數.
RedHat下啟動網路一定要啟動network的服務, 該服務會執行
/etc/sysconfig/network, 並用ifup載入所有的/etc/sysconfig/network-script
下定義的網路卡. 注意, 在預設配置中這些定義檔名中不可以有. 象ipforward這樣的定義
也是在它中完成的. 你可以看看它的原始檔. 它還定義了一個重要的變數$NETWORK, 其他的所
有網路服務都透過檢查該變數來決定是否啟動.
另外的三個檔案是這樣的
先執行rc.sysinit 完成了包括mount分割槽 啟用swap 載入modules等重要的工作.
再執行rc.local 完成一些本地的處理, 預設情況下, 它幾乎什麼都沒作.
最後是執行rc 啟動所有的服務.
2. 文件
------
最常用的是man手冊, 在/usr/doc下有一些HOWTO, 和一些軟體的文件. 實際上最
方便的是info系統, 如果你沒用過的話, 執行一下info. 看一看熱鍵的幫助. 裡面的文件非常
多. 許多的軟體的說明檔案有多種格式, text-info是很普通的, 特別是在一些大的軟體中.
你可以使用 install-info 命令來安裝新的text-info檔案. 另一種比較通用的格式是SGML,
它可以被方便的轉化為其他格式的檔案 如:html info lyx latex txt rtf.
tex和latex也是一種比較通用的格式, 他們最終被處理成dvi檔案來觀看.
ps(postscript)使用gv(ghostview)來觀看.
pdf 使用xpdf或acroread來看, xpdf的速度要快一些, 但對新的pdf格式不支援.
這三種格式主要是圖形格式, 解析度比較高. 但大部分的說明是純文字的, 這時, info
是最爽的.
3. 關閉
------
halt reboot shutdown Ctrl_Alt_Del這三個命令都完成了那些工作?
它們同屬於SysVinit包. reboot是一個連向halt的符號連線.
我這裡講的是RedHat 6.0所帶的SysVinit2.74.
先說明幾個小問題:
runlevel是從wtmp中找到的. 在啟動時, 由init寫入.
runlevel 0 是 halt mode,
1 是 single mode or maintenance mode
6 是 reboot mode.
halt(reboot)
如果系統的runlevel不是0或6, halt會exec shutwon -h,
而reboot會exec shutdown -r.
主要的工作都是由shutdown來完成的. halt的引數都被整理後
發到shutdown(exec時的引數).
shutdown
大部分程式碼用於處理引數等等, 核心工作是由shutdown來完成的.
shutdown主要是呼叫execv init來修改runlevel. 它也完成
下列工作: warn 系統上的每一個使用者. 處理幾個檔案:
/etc/nologin
/fastboot
/forcefsck
引數-n, 這是, 它自己來完成所有的工作, 而不呼叫init.
Ctrl-Alt-Del實際上是由init程式直接處理的, 它通知kernel將
Ctrl-Alt-Del訊號轉化為SIGINT發到它.
4. 口令的長度和加密演算法
-------------------
很多人在說Linux使用了DES加密演算法, 最多隻能用8個字元的口令. 但這是不對的,
Linux的認證都是透過pam來作的, 它使用了兩種演算法 bigcrypt和md5, 前一種支援到128個字
符, 後一種是無限長. 事實上在UNIX中只需要一種單向的演算法即可, 它並不需要一種可以加密解
密的演算法. RedHat中用setup來修改級認證機制時, 它只修改了三個檔案
/etc/pam.d/login
/etc/pam.d/rlogin
/etc/pam.d/passwd
中的一行:
passwd /lib/security/pam_pwdb.so shadow md5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pam中的auth並不需要這樣的設定, 它會根據crypted passwd中的salt來判斷是那一種演算法,
因此檔案中兩種演算法是可以並存的,
cat /etc/shadow
friday:$1$I92CumQb$I./BJehrqEKIUX9vNmZcL/:10832:0:99999:7:-1:-1:134538420
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
md5以$1$開頭, 其salt為$1$I92CumQb$.
5. Shadow 和 Unshadow
---------------------
將當前的passwd狀態在兩種格式之間轉換, 可以用下列命令來完成.
pwconv
unpwdconv
不過, 我實在看不出後者有什麼用.
6. make install
---------------
在你安裝軟體的最後一步往往是make install.
這時, 通常有兩種做法:
1. cp execfile /usr/bin/execfile
2. 使用 install 命令 如:
install execfile /usr/bin/execfile
事實上, 後一種更廣泛. 它有一些引數可以設定檔案的屬主, 檔案的模
式等.
7. vi 中的顏色
------------
在~/.exrc加入下面一行
syntax on
8. Xemacs 的中文環境
------------------
Emacs使用Mule來處理多國語言.
如果你已經安裝好了帶Mule的Xemacs. 在你的~/.emacs 加入如下一行.
(setup-chinese-gb-environment)
這樣, 每次啟動會自動的設製成中文環境.
你可以從Mule->Describe labguage support中來選擇一個合適的輸入法.
Ctrl- 用於啟用或關閉中文輸入.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-947768/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- redhat ntsysv中一些服務的簡單解釋(轉)Redhat
- redhat系統升級openssh到7.5Redhat
- RedHat 7.6作業系統安裝Redhat作業系統
- 19c(01):Redhat:系統引數Redhat
- 適合Linux系統初學的redhat系列有哪些?LinuxRedhat
- Linux系統中Ubuntu和Redhat的差異有哪些?LinuxUbuntuRedhat
- 作業系統3——程式的描述與控制作業系統
- 對於api管理系統的一些總結和思考API
- 系統利益相關者描述案例
- 作業系統(二)——程式的描述與控制(1)作業系統
- 作業系統系列----程式與程式 程式的描述作業系統
- 作業系統中的描述符和GDT作業系統
- 第4章 資料的概括性度量
- 檔案描述符和檔案系統
- kali下一些代理工具的簡單描述
- 編寫具有描述性的 RESTful API (四): 通知系統RESTAPI
- 【作業系統】程式的描述與控制[執行緒](4)作業系統執行緒
- redhat 7.4安裝mysql 8.0.18 source code原始碼的一些思考RedhatMySql原始碼
- 請描述下你對translate()方法的理解
- 2. 湍流的統計描述
- Diagrams:使用圖表描述雲系統架構原型架構原型
- 工程師筆記:我對資料庫系統雲原生化的一些思考工程師筆記資料庫
- 【作業系統】 第二章 程式管理 程式的描述與控制作業系統
- 轉轉支付通道監控系統的搭建
- 關於作業系統的一些思考作業系統
- 分散式系統中的一些問題分散式
- 對話系統的前世今生
- 請描述你對瀏覽器同源策略的理解瀏覽器
- redhat系統伺服器重啟後提示An error occurred during the file system check.Redhat伺服器Error
- 雲vps管理系統對於系統的選擇指南
- 學習Linux系統需要明白的一些事情Linux
- 關於許可權系統的一些思考
- CRM系統實施中的一些問題?
- ORACLE系統概述(轉)Oracle
- 如何對SAP系統進行掃描和分析,在實施轉型專案之前對SAP系統做全面評估?
- 對ThreadLocal的一些思考thread
- 對ThreadLocal的一些理解thread
- 對Transformer的一些理解ORM
- 我對作業系統的理解作業系統