偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

漫談傳統(tǒng)的Linux初始化系統(tǒng)的運(yùn)行級(jí)別

系統(tǒng) Linux
在 Linux 系統(tǒng)中,運(yùn)行級(jí)別是指運(yùn)維的級(jí)別,用于描述一種表明什么服務(wù)是可用的系統(tǒng)運(yùn)行狀態(tài)。

[[203401]]

了解運(yùn)行級(jí)別是如何配置的,如何改變系統(tǒng)運(yùn)行級(jí)別以及修改對(duì)應(yīng)狀態(tài)下運(yùn)行的服務(wù)。

在 Linux 系統(tǒng)中,運(yùn)行級(jí)別run level是指運(yùn)維的級(jí)別,用于描述一種表明什么服務(wù)是可用的系統(tǒng)運(yùn)行狀態(tài)。

運(yùn)行級(jí)別 1 是嚴(yán)格限制的,僅僅用于系統(tǒng)維護(hù);該級(jí)別下,網(wǎng)絡(luò)連接將不可操作,但是管理員可以通過控制臺(tái)連接登錄系統(tǒng)。

其他運(yùn)行級(jí)別的系統(tǒng)允許任何人登錄和使用,但是不同級(jí)別中可使用的服務(wù)不同。本文將探索如何配置運(yùn)行級(jí)別,如何交互式改變系統(tǒng)運(yùn)行級(jí)別以及修改該狀態(tài)下可用的服務(wù)。

Linux 系統(tǒng)的默認(rèn)運(yùn)行狀態(tài)是一個(gè)在系統(tǒng)開機(jī)時(shí)使用的運(yùn)行級(jí)別(除非有其他的指示),它通常是在 /etc/inittab 文件中進(jìn)行配置的,該文件內(nèi)容通常如下:

  1. id:3:initdefault 

包括 Debian 系統(tǒng)在內(nèi)的一些系統(tǒng),默認(rèn)運(yùn)行級(jí)別為 2,而不是上述文件中的 3,甚至都沒有 /etc/inittab 文件。

運(yùn)行級(jí)別在默認(rèn)情況下是如何被配置,其配置依賴于你所運(yùn)行的 Linux 操作系統(tǒng)的具體發(fā)行版本。 例如,在某些系統(tǒng)中, 運(yùn)行級(jí)別 2 是多用戶模式,運(yùn)行級(jí)別 3 是多用戶模式并支持 NFS (網(wǎng)絡(luò)文件系統(tǒng))。 在另外一些系統(tǒng),運(yùn)行級(jí)別 2 - 5 基本相同,運(yùn)行級(jí)別 1 是單用戶模式。例如,Debian 系統(tǒng)的所用運(yùn)行級(jí)別如下:

  1. 0 = 停機(jī) 
  2. 1 = 單用戶(維護(hù)模式) 
  3. 2 = 多用戶模式 
  4. 3-5 = 同 2 一樣 
  5. 6 = 重啟 

在 Linux 系統(tǒng)上,運(yùn)行級(jí)別 3 用于共享文件系統(tǒng)給其它系統(tǒng),可以方便地只通過改變系統(tǒng)的運(yùn)行級(jí)別來啟動(dòng)和停止文件系統(tǒng)共享。系統(tǒng)從運(yùn)行級(jí)別 2 改變到 3 系統(tǒng)將允許文件系統(tǒng)共享,反之從運(yùn)行級(jí)別 3 改變到 2 則系統(tǒng)不支持文件系統(tǒng)共享。

在某個(gè)運(yùn)行級(jí)別中,系統(tǒng)運(yùn)行哪些進(jìn)程依賴于目錄 /etc/rc?.d 目錄的內(nèi)容,其中 ? 可以是 2、 3、 4 或 5 (對(duì)應(yīng)于相應(yīng)的運(yùn)行級(jí)別)。

在以下示例中(Ubuntu 系統(tǒng)),由于這些目錄的配置是相同的,我們將看見上述 4 個(gè)級(jí)別對(duì)應(yīng)的目錄中的內(nèi)容是一致的。

  1. /etc/rc2.d$ ls 
  2. README         S20smartmontools      S50saned      S99grub-common 
  3. S20kerneloops  S20speech-dispatcher  S70dns-clean  S99ondemand 
  4. S20rsync       S20sysstat            S70pppd-dns   S99rc.local 
  5. /etc/rc2.d$ cd ../rc3.d 
  6. /etc/rc3.d$ ls 
  7. README         S20smartmontools      S50saned      S99grub-common 
  8. S20kerneloops  S20speech-dispatcher  S70dns-clean  S99ondemand 
  9. S20rsync       S20sysstat            S70pppd-dns   S99rc.local 
  10. /etc/rc3.d$ cd ../rc4.d 
  11. /etc/rc4.d$ ls 
  12. README         S20smartmontools      S50saned      S99grub-common 
  13. S20kerneloops  S20speech-dispatcher  S70dns-clean  S99ondemand 
  14. S20rsync       S20sysstat            S70pppd-dns   S99rc.local 
  15. /etc/rc4.d$ cd ../rc5.d 
  16. /etc/rc5.d$ ls 
  17. README         S20smartmontools      S50saned      S99grub-common 
  18. S20kerneloops  S20speech-dispatcher  S70dns-clean  S99ondemand 
  19. S20rsync       S20sysstat            S70pppd-dns   S99rc.local 

這些都是什么文件?它們都是指向 /etc/init.d 目錄下用于啟動(dòng)服務(wù)的腳本符號(hào)連接。 這些文件的文件名是至關(guān)重要的, 因?yàn)樗鼈儧Q定了這些腳本文件的執(zhí)行順序,例如, S20 腳本是在 S50 腳本前面運(yùn)行的。

  1. $ ls -l 
  2. total 4 
  3. -rw-r--r-- 1 root root 677 Feb 16  2016 README 
  4. lrwxrwxrwx 1 root root  20 Aug 30 14:40 S20kerneloops -> ../init.d/kerneloops 
  5. lrwxrwxrwx 1 root root  15 Aug 30 14:40 S20rsync -> ../init.d/rsync 
  6. lrwxrwxrwx 1 root root  23 Aug 30 16:10 S20smartmontools -> ../init.d/smartmontools 
  7. lrwxrwxrwx 1 root root  27 Aug 30 14:40 S20speech-dispatcher -> ../init.d/speech-dispatcher 
  8. lrwxrwxrwx 1 root root  17 Aug 31 14:12 S20sysstat -> ../init.d/sysstat 
  9. lrwxrwxrwx 1 root root  15 Aug 30 14:40 S50saned -> ../init.d/saned 
  10. lrwxrwxrwx 1 root root  19 Aug 30 14:40 S70dns-clean -> ../init.d/dns-clean 
  11. lrwxrwxrwx 1 root root  18 Aug 30 14:40 S70pppd-dns -> ../init.d/pppd-dns 
  12. lrwxrwxrwx 1 root root  21 Aug 30 14:40 S99grub-common -> ../init.d/grub-common 
  13. lrwxrwxrwx 1 root root  18 Aug 30 14:40 S99ondemand -> ../init.d/ondemand 
  14. lrwxrwxrwx 1 root root  18 Aug 30 14:40 S99rc.local -> ../init.d/rc.local 

如你所想,目錄 /etc/rc1.d 因運(yùn)行級(jí)別 1 的特殊而不同。它包含的符號(hào)鏈接指向非常不同的一套腳本。 同樣也要注意到其中一些腳本以 K 開頭命名,而另一些與其它運(yùn)行級(jí)別腳本一樣以 S 開頭命名。這是因?yàn)楫?dāng)系統(tǒng)進(jìn)入單用戶模式時(shí), 一些服務(wù)需要停止。 然而這些 K 開頭的符號(hào)鏈接指向了其它級(jí)別 S 開頭的符號(hào)鏈接的同一文件時(shí), K(kill)表示這個(gè)腳本將以指示其停止的參數(shù)執(zhí)行,而不是以啟動(dòng)的參數(shù)執(zhí)行。

  1. /etc/rc1.d$ ls -l 
  2. total 4 
  3. lrwxrwxrwx 1 root root  20 Aug 30 14:40 K20kerneloops -> ../init.d/kerneloops 
  4. lrwxrwxrwx 1 root root  15 Aug 30 14:40 K20rsync -> ../init.d/rsync 
  5. lrwxrwxrwx 1 root root  15 Aug 30 14:40 K20saned -> ../init.d/saned 
  6. lrwxrwxrwx 1 root root  23 Aug 30 16:10 K20smartmontools -> ../init.d/smartmontools 
  7. lrwxrwxrwx 1 root root  27 Aug 30 14:40 K20speech-dispatcher -> ../init.d/speech-dispatcher 
  8. -rw-r--r-- 1 root root 369 Mar 12  2014 README 
  9. lrwxrwxrwx 1 root root  19 Aug 30 14:40 S30killprocs -> ../init.d/killprocs 
  10. lrwxrwxrwx 1 root root  19 Aug 30 14:40 S70dns-clean -> ../init.d/dns-clean 
  11. lrwxrwxrwx 1 root root  18 Aug 30 14:40 S70pppd-dns -> ../init.d/pppd-dns 
  12. lrwxrwxrwx 1 root root  16 Aug 30 14:40 S90single -> ../init.d/single 

你可以改變系統(tǒng)的默認(rèn)運(yùn)行級(jí)別,盡管這很少被用到。例如,通過修改前文中提到的 /etc/inittab 文件,你能夠配置 Debian 系統(tǒng)的默認(rèn)運(yùn)行級(jí)別為 3 (而不是 2),以下是該文件示例:

  1. id:3:initdefault: 

一旦你修改完成并重啟系統(tǒng), runlevel 命令將顯示如下:

  1. $ runlevelN 3 

另外一種可選方式,使用 init 3 命令,你也能改變系統(tǒng)運(yùn)行級(jí)別(且無需重啟立即生效), runlevel 命令的輸出為:

  1. $ runlevel2 3 

當(dāng)然,除非你修改了系統(tǒng)默認(rèn)級(jí)別的 /etc/rc?.d 目錄下的符號(hào)鏈接,使得系統(tǒng)默認(rèn)運(yùn)行在一個(gè)修改的運(yùn)行級(jí)別之下,否則很少需要通過創(chuàng)建或修改 /etc/inittab 文件改變系統(tǒng)的運(yùn)行級(jí)別。

在 Linux 系統(tǒng)中如何使用運(yùn)行級(jí)別?

為了扼要重述在系統(tǒng)中如何使用運(yùn)行級(jí)別,下面有幾個(gè)關(guān)于運(yùn)行級(jí)別的快速問答問題:

如何查詢系統(tǒng)當(dāng)前的運(yùn)行級(jí)別?

使用 runlevel 命令。

如何查看特定運(yùn)行級(jí)別所關(guān)聯(lián)的服務(wù)進(jìn)程?

查看與該運(yùn)行級(jí)別關(guān)聯(lián)的運(yùn)行級(jí)別開始目錄(例如, /etc/rc2.d 對(duì)應(yīng)于運(yùn)行級(jí)別 2)。

如何查看系統(tǒng)的默認(rèn)運(yùn)行級(jí)別?

首先,查看 /etc/inittab 文件是否存在。如果不存在,就執(zhí)行 runlevel 命令查詢,你一般就已經(jīng)處在該運(yùn)行級(jí)別。

如何改變系統(tǒng)運(yùn)行級(jí)別?

用 init 命令(例如 init 3)臨時(shí)改變運(yùn)行級(jí)別,通過修改或創(chuàng)建 /etc/inittab 文件***改變其運(yùn)行級(jí)別。

能改變特定運(yùn)行級(jí)別下運(yùn)行的服務(wù)么?

當(dāng)然,通過改變對(duì)應(yīng)的 /etc/rc?.d 目錄下的符號(hào)連接即可。

還有一些其他的什么需要考慮?

當(dāng)改變系統(tǒng)運(yùn)行級(jí)別時(shí),你應(yīng)該特別小心,確保不影響到系統(tǒng)上正在運(yùn)行的服務(wù)或者正在使用的用戶。

(題圖:Vincent Desjardins (CC BY 2.0)) 

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2022-11-15 20:48:41

Linux

2016-10-19 13:53:46

LinuxUniuxSystemD

2011-03-16 10:52:20

2021-01-26 09:14:19

Linux內(nèi)核模塊

2012-03-13 13:38:42

Java

2009-06-10 16:17:00

Netbeans JT初始化

2021-07-07 05:00:17

初始化源碼

2011-03-31 16:46:10

LinuxMySQL

2023-11-12 23:08:17

C++初始化

2020-11-23 14:22:17

代碼Go存儲(chǔ)

2012-05-23 12:46:53

JavaJava類

2010-09-08 14:49:09

藍(lán)牙協(xié)議棧

2023-10-06 20:57:52

C++聚合成員

2011-12-25 20:41:55

云計(jì)算

2010-02-24 15:41:19

Linux Light

2025-01-03 08:53:59

2010-02-05 09:31:23

Ubuntu 配置文件

2013-03-04 11:10:03

JavaJVM

2011-08-10 13:36:30

Servlet

2015-10-30 09:51:19

Java重寫初始化隱患
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)