在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Linux/ 初步進(jìn)入 linux 世界
初步進(jìn)入 linux 世界
Linux 系統(tǒng)的遠(yuǎn)程登錄
配置 Tomcat
配置 samba 服務(wù)器
LNMP 環(huán)境搭建
配置 FTP 服務(wù)
linux 系統(tǒng)用戶以及用戶組管理
正則表達(dá)式
LAMP環(huán)境搭建
安裝 RPM 包或者安裝源碼包
NFS 服務(wù)配置
文檔的壓縮與打包
Linux 操作系統(tǒng)的安裝
配置 squid 服務(wù)
Linux 文件與目錄管理
Linux 磁盤(pán)管理
學(xué)會(huì)使用簡(jiǎn)單的 MySQL 操作
關(guān)于 Linux 的歷史
學(xué)習(xí) shell 腳本之前的基礎(chǔ)知識(shí)
圖形界面還是命令窗口
文本編輯工具 vim
shell 腳本
使用 Nagios 搭建監(jiān)控服務(wù)器
linux 系統(tǒng)日常管理

初步進(jìn)入 linux 世界

Linux 系統(tǒng)啟動(dòng)過(guò)程

Linux 的啟動(dòng)其實(shí)和 Windows 的啟動(dòng)過(guò)程很類似,不過(guò) Windows 我們是無(wú)法看到啟動(dòng)信息的,而 linux 啟動(dòng)時(shí)我們會(huì)看到許多啟動(dòng)信息,例如某個(gè)服務(wù)是否啟動(dòng)。

Linux 系統(tǒng)的啟動(dòng)過(guò)程大體上可分為五部分:內(nèi)核的引導(dǎo);運(yùn)行 init;系統(tǒng)初始化;建立終端 ;用戶登錄系統(tǒng)。

內(nèi)核引導(dǎo)

當(dāng)計(jì)算機(jī)打開(kāi)電源后,首先是 BIOS 開(kāi)機(jī)自檢,按照 BIOS 中設(shè)置的啟動(dòng)設(shè)備(通常是硬盤(pán))來(lái)啟動(dòng)。緊接著由啟動(dòng)設(shè)備上的 grub 程序開(kāi)始引導(dǎo) linux,當(dāng)引導(dǎo)程序成功完成引導(dǎo)任務(wù)后,Linux 從它們手中接管了 CPU 的控制權(quán),然后 CPU 就開(kāi)始執(zhí)行 Linux 的核心映象代碼,開(kāi)始了 Linux 啟動(dòng)過(guò)程。也就是所謂的內(nèi)核引導(dǎo)開(kāi)始了,在內(nèi)核引導(dǎo)過(guò)程中其實(shí)是很復(fù)雜的,我們就當(dāng)它是一個(gè)黑匣子,反正是 linux 內(nèi)核做了一些列工作,最后內(nèi)核調(diào)用加載了 init 程序,至此內(nèi)核引導(dǎo)的工作就完成了。交給了下一個(gè)主角 init。

運(yùn)行 init

init 進(jìn)程是系統(tǒng)所有進(jìn)程的起點(diǎn),你可以把它比擬成系統(tǒng)所有進(jìn)程的老祖宗,沒(méi)有這個(gè)進(jìn)程,系統(tǒng)中任何進(jìn)程都不會(huì)啟動(dòng)。init 程序首先是需要讀取配置文件 /etc/inittab。inittab 是一個(gè)不可執(zhí)行的文本文件,它有若干行指令所組成。具體內(nèi)容如下:(你可以在你的linux上執(zhí)行命令 cat /etc/inittab 這樣獲得)

# inittab       This file describes how the INIT process should set up
  #               the system in a certain run-level.
  #
  # Author:       Miquel van Smoorenburg,
  #               Modified for RHS Linux by Marc Ewing and Donnie Barnes
  #
  # Default runlevel. The runlevels used by RHS are:
  #   0 - halt (Do NOT set initdefault to this)
  #   1 - Single user mode
  #   2 - Multiuser, without NFS (The same as 3, if you do not havenetworking)
  #   3 - Full multiuser mode
  #   4 - unused
  #   5 - X11
  #   6 - reboot (Do NOT set initdefault to this)
  #
  ###表示當(dāng)前缺省運(yùn)行級(jí)別為5(initdefault);
  id:5:initdefault:
  ###啟動(dòng)時(shí)自動(dòng)執(zhí)行/etc/rc.d/rc.sysinit腳本(sysinit)
  # System initialization.
  si::sysinit:/etc/rc.d/rc.sysinit
  l0:0:wait:/etc/rc.d/rc 0
  l1:1:wait:/etc/rc.d/rc 1
  l2:2:wait:/etc/rc.d/rc 2
  l3:3:wait:/etc/rc.d/rc 3
  l4:4:wait:/etc/rc.d/rc 4
  ###當(dāng)運(yùn)行級(jí)別為5時(shí),以5為參數(shù)運(yùn)行/etc/rc.d/rc腳本,init將等待其返回(wait)
  l5:5:wait:/etc/rc.d/rc 5
  l6:6:wait:/etc/rc.d/rc 6
  ###在啟動(dòng)過(guò)程中允許按CTRL-ALT-DELETE重啟系統(tǒng)
  # Trap CTRL-ALT-DELETE
  ca::ctrlaltdel:/sbin/shutdown -t3 -r now
  # When our UPS tells us power has failed, assume we have a few minutes
  # of power left.  Schedule a shutdown for 2 minutes from now.
  # This does, of course, assume you have powerd installed and your
  # UPS connected and working correctly.
  pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
  # If power was restored before the shutdown kicked in, cancel it.
  pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
  ###在2、3、4、5級(jí)別上以ttyX為參數(shù)執(zhí)行/sbin/mingetty程序,打開(kāi)ttyX終端用于用戶登錄,
  ###如果進(jìn)程退出則再次運(yùn)行mingetty程序(respawn)
  # Run gettys in standard runlevels
  1:2345:respawn:/sbin/mingetty tty1
  2:2345:respawn:/sbin/mingetty tty2
  3:2345:respawn:/sbin/mingetty tty3
  4:2345:respawn:/sbin/mingetty tty4
  5:2345:respawn:/sbin/mingetty tty5
  6:2345:respawn:/sbin/mingetty tty6
  ###在5級(jí)別上運(yùn)行xdm程序,提供xdm圖形方式登錄界面,并在退出時(shí)重新執(zhí)行(respawn)
  # Run xdm in runlevel 5
  x:5:respawn:/etc/X11/prefdm -nodaemon

以上面的 inittab 文件為例,來(lái)說(shuō)明一下 inittab 的格式。其中以#開(kāi)始的行是注釋行,除了注釋行之外,每一行都有以下格式:

  id:runlevel:action:process

對(duì)上面各項(xiàng)的詳細(xì)解釋如下:

1.id

  id是指入口標(biāo)識(shí)符,它是一個(gè)字符串,對(duì)于getty或mingetty等其他login程序項(xiàng),要求id與tty的編號(hào)相同,否則getty程序?qū)⒉荒苷9ぷ鳌?2.Runlevel

runlevel 是 init 所處于的運(yùn)行級(jí)別的標(biāo)識(shí),一般使用 0-6 以及 S 或 s。0、1、6 運(yùn)行級(jí)別被系統(tǒng)保留:其中 0 作為 shutdown 動(dòng)作,1 作為重啟至單用戶模式,6 為重啟;S 和 s 意義相同,表示單用戶模式,且無(wú)需 inittab 文件,因此也不在 inittab 中出現(xiàn),實(shí)際上,進(jìn)入單用戶模式時(shí),init 直接在控制臺(tái)(/dev/console)上運(yùn)行 /sbin/sulogin。在一般的系統(tǒng)實(shí)現(xiàn)中,都使用了 2、3、4、5 幾個(gè)級(jí)別,在 CentOS 系統(tǒng)中,2 表示無(wú) NFS 支持的多用戶模式,3 表示完全多用戶模式(也是最常用的級(jí)別),4 保留給用戶自定義,5 表示 XDM 圖形登錄方式。7-9 級(jí)別也是可以使用的,傳統(tǒng)的 Unix 系統(tǒng)沒(méi)有定義這幾個(gè)級(jí)別。runlevel 可以是并列的多個(gè)值,以匹配多個(gè)運(yùn)行級(jí)別,對(duì)大多數(shù) action 來(lái)說(shuō),僅當(dāng) runlevel 與當(dāng)前運(yùn)行級(jí)別匹配成功才會(huì)執(zhí)行。

3.action

action 是描述其后的 process 的運(yùn)行方式的。action 可取的值包括:initdefault、sysinit、boot、bootwait等:initdefault 是一個(gè)特殊的 action 值,用于標(biāo)識(shí)缺省的啟動(dòng)級(jí)別;當(dāng) init 由核心激活以后,它將讀取 inittab 中的 initdefault 項(xiàng),取得其中的 runlevel,并作為當(dāng)前的運(yùn)行級(jí)別。如果沒(méi)有 inittab 文件,或者其中沒(méi)有 initdefault 項(xiàng),init 將在控制臺(tái)上請(qǐng)求輸入 runlevel。sysinit、boot、bootwait 等 action 將在系統(tǒng)啟動(dòng)時(shí)無(wú)條件運(yùn)行,而忽略其中的 runlevel。其余的 action(不含 initdefault)都與某個(gè) runlevel 相關(guān)。各個(gè) action 的定義在 inittab 的 man 手冊(cè)中有詳細(xì)的描述。

4.process

process 為具體的執(zhí)行程序。程序后面可以帶參數(shù)。

Tips: 如果你看不懂這個(gè)文件,沒(méi)有關(guān)系,隨著你對(duì)linux的深入了解,你再回過(guò)頭看這個(gè)文件你就會(huì)豁然開(kāi)朗的。但是你現(xiàn)在必須要明白runlevel的各個(gè)級(jí)別的含義。

系統(tǒng)初始化

在 init 的配置文件中有這么一行: si::sysinit:/etc/rc.d/rc.sysinit 它調(diào)用執(zhí)行了/etc/rc.d/rc.sysinit,而 rc.sysinit是一個(gè)bash shell的腳本,它主要是完成一些系統(tǒng)初始化的工作,rc.sysinit 是每一個(gè)運(yùn)行級(jí)別都要首先運(yùn)行的重要腳本。它主要完成的工作有:激活交換分區(qū),檢查磁盤(pán),加載硬件模塊以及其它一些需要優(yōu)先執(zhí)行任務(wù)。

rc.sysinit 約有 850 多行,但是每個(gè)單一的功能還是比較簡(jiǎn)單,而且?guī)в凶⑨專ㄗh有興趣的用戶可以自行閱讀自己機(jī)器上的該文件,以了解系統(tǒng)初始化所詳細(xì)情況。由于此文件較長(zhǎng),所以不在本文中列出來(lái),也不做具體的介紹。當(dāng) rc.sysinit 程序執(zhí)行完畢后,將返回 init 繼續(xù)下一步。通常接下來(lái)會(huì)執(zhí)行到 /etc/rc.d/rc 程序。以運(yùn)行級(jí)別 3 為例,init 將執(zhí)行配置文件 inittab 中的以下這行:

  l5:5:wait:/etc/rc.d/rc 5

這一行表示以 5 為參數(shù)運(yùn)行/etc/rc.d/rc,/etc/rc.d/rc 是一個(gè) Shell 腳本,它接受 5 作為參數(shù),去執(zhí)行/etc/rc.d/rc5.d/ 目錄下的所有的 rc 啟動(dòng)腳本,/etc/rc.d/rc5.d/ 目錄中的這些啟動(dòng)腳本實(shí)際上都是一些連接文件,而不是真正的 rc 啟動(dòng)腳本,真正的 rc 啟動(dòng)腳本實(shí)際上都是放在 /etc/rc.d/init.d/ 目錄下。而這些 rc 啟動(dòng)腳本有著類似的用法,它們一般能接受 start、stop、restart、status 等參數(shù)。

/etc/rc.d/rc5.d/ 中的 rc 啟動(dòng)腳本通常是 K 或 S 開(kāi)頭的連接文件,對(duì)于以 S 開(kāi)頭的啟動(dòng)腳本,將以 start 參數(shù)來(lái)運(yùn)行。而如果發(fā)現(xiàn)存在相應(yīng)的腳本也存在 K 打頭的連接,而且已經(jīng)處于運(yùn)行態(tài)了(以 /var/lock/subsys/ 下的文件作為標(biāo)志),則將首先以 stop 為參數(shù)停止這些已經(jīng)啟動(dòng)了的守護(hù)進(jìn)程,然后再重新運(yùn)行。這樣做是為了保證是當(dāng) init 改變運(yùn)行級(jí)別時(shí),所有相關(guān)的守護(hù)進(jìn)程都將重啟。

至于在每個(gè)運(yùn)行級(jí)中將運(yùn)行哪些守護(hù)進(jìn)程,用戶可以通過(guò) chkconfig 或 setup 中的"System Services"來(lái)自行設(shè)定。

建立終端

rc 執(zhí)行完畢后,返回 init。這時(shí)基本系統(tǒng)環(huán)境已經(jīng)設(shè)置好了,各種守護(hù)進(jìn)程也已經(jīng)啟動(dòng)了。init 接下來(lái)會(huì)打開(kāi) 6 個(gè)終端,以便用戶登錄系統(tǒng)。在 inittab 中的以下 6 行就是定義了 6 個(gè)終端:

  1:2345:respawn:/sbin/mingetty tty1
  2:2345:respawn:/sbin/mingetty tty2
  3:2345:respawn:/sbin/mingetty tty3
  4:2345:respawn:/sbin/mingetty tty4
  5:2345:respawn:/sbin/mingetty tty5
  6:2345:respawn:/sbin/mingetty tty6

  從上面可以看出在 2、3、4、5 的運(yùn)行級(jí)別中都將以 respawn 方式運(yùn)行 mingetty 程序,mingetty 程序能打開(kāi)終端、設(shè)置模式。同時(shí)它會(huì)顯示一個(gè)文本登錄界面,這個(gè)界面就是我們經(jīng)??吹降牡卿浗缑妫谶@個(gè)登錄界面中會(huì)提示用戶輸入用戶名,而用戶輸入的用戶將作為參數(shù)傳給 login 程序來(lái)驗(yàn)證用戶的身份。

用戶登錄系統(tǒng)

對(duì)于運(yùn)行級(jí)別為 5 的圖形方式用戶來(lái)說(shuō),他們的登錄是通過(guò)一個(gè)圖形化的登錄界面。登錄成功后可以直接進(jìn)入KDE、Gnome 等窗口管理器。而本文主要講的還是文本方式登錄的情況:當(dāng)我們看到 mingetty 的登錄界面時(shí),我們就可以輸入用戶名和密碼來(lái)登錄系統(tǒng)了。

Linux 的賬號(hào)驗(yàn)證程序是 login,login 會(huì)接收 mingetty 傳來(lái)的用戶名作為用戶名參數(shù)。然后 login 會(huì)對(duì)用戶名進(jìn)行分析:如果用戶名不是 root,且存在 /etc/nologin文件,login 將輸出 nologin 文件的內(nèi)容,然后退出。這通常用來(lái)系統(tǒng)維護(hù)時(shí)防止非 root 用戶登錄。只有 /etc/securetty 中登記了的終端才允許 root 用戶登錄,如果不存在這個(gè)文件,則 root 可以在任何終端上登錄。/etc/usertty 文件用于對(duì)用戶作出附加訪問(wèn)限制,如果不存在這個(gè)文件,則沒(méi)有其他限制。

在分析完用戶名后,login 將搜索 /etc/passwd 以及 /etc/shadow 來(lái)驗(yàn)證密碼以及設(shè)置賬戶的其它信息,比如:主目錄是什么、使用何種 shell。如果沒(méi)有指定主目錄,將默認(rèn)為根目錄;如果沒(méi)有指定 shell,將默認(rèn)為 /bin/bash。

login 程序成功后,會(huì)向?qū)?yīng)的終端在輸出最近一次登錄的信息(在 /var/log/lastlog 中有記錄),并檢查用戶是否有新郵件(在 /usr/spool/mail/ 的對(duì)應(yīng)用戶名目錄下)。然后開(kāi)始設(shè)置各種環(huán)境變量:對(duì)于 bash 來(lái)說(shuō),系統(tǒng)首先尋找 /etc/profile 腳本文件,并執(zhí)行它;然后如果用戶的主目錄中存在 .bash_profile 文件,就執(zhí)行它,在這些文件中又可能調(diào)用了其它配置文件,所有的配置文件執(zhí)行后后,各種環(huán)境變量也設(shè)好了,這時(shí)會(huì)出現(xiàn)大家熟悉的命令行提示符,到此整個(gè)啟動(dòng)過(guò)程就結(jié)束了。

圖形模式與文字模式的切換方式

Linux 預(yù)設(shè)提供了六個(gè)命令窗口終端機(jī)讓我們來(lái)登錄。默認(rèn)我們登錄的就是第一個(gè)窗口,也就是 tty1,這個(gè)六個(gè)窗口分別為 tty1,tty2 … tty6,你可以按下 Ctrl + Alt + F1 ~ F6 來(lái)切換它們。如果你安裝了圖形界面,默認(rèn)情況下是進(jìn)入圖形界面的,此時(shí)你就可以按 Ctrl + Alt + F1 ~ F6 來(lái)進(jìn)入其中一個(gè)命令窗口界面。當(dāng)你進(jìn)入命令窗口界面后再返回圖形界面只要按下 Ctrl + Alt + F7 就回來(lái)了。如果你用的 vmware 虛擬機(jī),命令窗口切換的快捷鍵為 Alt + Space + F1~F6. 如果你在圖形界面下請(qǐng)按 Alt + Shift + Ctrl + F1~F6 切換至命令窗口。

學(xué)會(huì)使用快捷鍵

Ctrl + C:這個(gè)是用來(lái)終止當(dāng)前命令的快捷鍵,當(dāng)然你也可以輸入一大串字符,不想讓它運(yùn)行直接 Ctrl + C,光標(biāo)就會(huì)跳入下一行。

Tab: 這個(gè)鍵是最有用的鍵了,也是筆者敲擊概率最高的一個(gè)鍵。因?yàn)楫?dāng)你打一個(gè)命令打一半時(shí),它會(huì)幫你補(bǔ)全的。不光是命令,當(dāng)你打一個(gè)目錄時(shí),同樣可以補(bǔ)全,不信你試試。

Ctrl + D: 退出當(dāng)前終端,同樣你也可以輸入 exit。

Ctrl + Z: 暫停當(dāng)前進(jìn)程,比如你正運(yùn)行一個(gè)命令,突然覺(jué)得有點(diǎn)問(wèn)題想暫停一下,就可以使用這個(gè)快捷鍵。暫停后,可以使用 fg 恢復(fù)它。

Ctrl + L: 清屏,使光標(biāo)移動(dòng)到第一行。

學(xué)會(huì)查詢幫助文檔 — man

這個(gè) man 通常是用來(lái)看一個(gè)命令的幫助文檔的。例如:

http://wiki.jikexueyuan.com/project/linux/images/man.png" alt="" />

輸入 man ls 其實(shí)格式為 man + 命令

你就會(huì)看到相關(guān)的幫助文檔了。從命令的介紹到命令的參數(shù)以及用法介紹的都非常詳細(xì)的。不錯(cuò)吧。

Linux 系統(tǒng)目錄結(jié)構(gòu)

登錄系統(tǒng)后,在當(dāng)前命令窗口下輸入 ls / 你會(huì)看到

http://wiki.jikexueyuan.com/project/linux/images/ls.png" alt="" />

以下是對(duì)這些目錄的解釋:

/bin bin 是 Binary 的縮寫(xiě)。這個(gè)目錄存放著最經(jīng)常使用的命令。

/boot 這里存放的是啟動(dòng) Linux 時(shí)使用的一些核心文件,包括一些連接文件以及鏡像文件。

/dev dev 是 Device(設(shè)備)的縮寫(xiě)。該目錄下存放的是 Linux 的外部設(shè)備,在 Linux 中訪問(wèn)設(shè)備的方式和訪問(wèn)文件的方式是相同的。

/etc 這個(gè)目錄用來(lái)存放所有的系統(tǒng)管理所需要的配置文件和子目錄。

/home 用戶的主目錄,在 Linux 中,每個(gè)用戶都有一個(gè)自己的目錄,一般該目錄名是以用戶的賬號(hào)命名的。

/lib 這個(gè)目錄里存放著系統(tǒng)最基本的動(dòng)態(tài)連接共享庫(kù),其作用類似于 Windows 里的 DLL 文件。幾乎所有的應(yīng)用程序都需要用到這些共享庫(kù)。

/lost+found 這個(gè)目錄一般情況下是空的,當(dāng)系統(tǒng)非法關(guān)機(jī)后,這里就存放了一些文件。

/media linux 系統(tǒng)會(huì)自動(dòng)識(shí)別一些設(shè)備,例如U盤(pán)、光驅(qū)等等,當(dāng)識(shí)別后,linux 會(huì)把識(shí)別的設(shè)備掛載到這個(gè)目錄下。

/mnt 系統(tǒng)提供該目錄是為了讓用戶臨時(shí)掛載別的文件系統(tǒng)的,我們可以將光驅(qū)掛載在 /mnt/ 上,然后進(jìn)入該目錄就可以查看光驅(qū)里的內(nèi)容了。

/opt 這是給主機(jī)額外安裝軟件所擺放的目錄。比如你安裝一個(gè) ORACLE 數(shù)據(jù)庫(kù)則就可以放到這個(gè)目錄下。默認(rèn)是空的。

/proc 這個(gè)目錄是一個(gè)虛擬的目錄,它是系統(tǒng)內(nèi)存的映射,我們可以通過(guò)直接訪問(wèn)這個(gè)目錄來(lái)獲取系統(tǒng)信息。這個(gè)目錄的內(nèi)容不在硬盤(pán)上而是在內(nèi)存里,我們也可以直接修改里面的某些文件,比如可以通過(guò)下面的命令來(lái)屏蔽主機(jī)的 ping 命令,使別人無(wú)法 ping 你的機(jī)器:

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all。

/root 該目錄為系統(tǒng)管理員,也稱作超級(jí)權(quán)限者的用戶主目錄。

/sbin s 就是 Super User 的意思,這里存放的是系統(tǒng)管理員使用的系統(tǒng)管理程序。

/selinux 這個(gè)目錄是 Redhat/CentOS 所特有的目錄,Selinux 是一個(gè)安全機(jī)制,類似于 Windows 的防火墻,但是這套機(jī)制比較復(fù)雜,這個(gè)目錄就是存放 selinux 相關(guān)的文件的。

/srv 該目錄存放一些服務(wù)啟動(dòng)之后需要提取的數(shù)據(jù)。

/sys 這是 linux2.6 內(nèi)核的一個(gè)很大的變化。該目錄下安裝了 2.6 內(nèi)核中新出現(xiàn)的一個(gè)文件系統(tǒng) sysfs ,sysfs 文件系統(tǒng)集成了下面3種文件系統(tǒng)的信息:針對(duì)進(jìn)程信息的 proc 文件系統(tǒng)、針對(duì)設(shè)備的 devfs 文件系統(tǒng)以及針對(duì)偽終端的 devpts 文件系統(tǒng)。該文件系統(tǒng)是內(nèi)核設(shè)備樹(shù)的一個(gè)直觀反映。當(dāng)一個(gè)內(nèi)核對(duì)象被創(chuàng)建的時(shí)候,對(duì)應(yīng)的文件和目錄也在內(nèi)核對(duì)象子系統(tǒng)種被創(chuàng)建。

/tmp 這個(gè)目錄是用來(lái)存放一些臨時(shí)文件的。

/usr 這是一個(gè)非常重要的目錄,用戶的很多應(yīng)用程序和文件都放在這個(gè)目錄下,類似與 windows 下的 program files目錄。

/usr/bin:系統(tǒng)用戶使用的應(yīng)用程序。

/usr/sbin:超級(jí)用戶使用的比較高級(jí)的管理程序和系統(tǒng)守護(hù)程序。

/usr/src:內(nèi)核源代碼默認(rèn)的放置目錄。

/var 這個(gè)目錄中存放著在不斷擴(kuò)充著的東西,我們習(xí)慣將那些經(jīng)常被修改的目錄放在這個(gè)目錄下。包括各種日志文件。

在 linux 系統(tǒng)中,有幾個(gè)目錄是比較重要的,平時(shí)需要注意不要誤刪除或者隨意更改內(nèi)部文件。/etc: 上邊也提到了,這個(gè)是系統(tǒng)中的配置文件,如果你更改了該目錄下的某個(gè)文件可能會(huì)導(dǎo)致系統(tǒng)不能啟動(dòng)。/bin, /sbin, /usr/bin, /usr/sbin: 這是系統(tǒng)預(yù)設(shè)的執(zhí)行文件的放置目錄,比如 ls 就是在 /bin/ls 目錄下的。值得提出的是,/bin, /usr/bin 是給系統(tǒng)用戶使用的指令(除 root 外的通用戶),而 /sbin, /usr/sbin 則是給 root 使用的指令。 /var: 這是一個(gè)非常重要的目錄,系統(tǒng)上跑了很多程序,那么每個(gè)程序都會(huì)有相應(yīng)的日志產(chǎn)生,而這些日志就被記錄到這個(gè)目錄下,具體在 /var/log 目錄下,另外 mail 的預(yù)設(shè)放置也是在這里。

如何正確關(guān)機(jī)

其實(shí),在 linux 領(lǐng)域內(nèi)大多用在服務(wù)器上,很少遇到關(guān)機(jī)的操作。畢竟服務(wù)器上跑一個(gè)服務(wù)是永無(wú)止境的,除非特殊情況下,不得已才會(huì)關(guān)機(jī)。

linux 和 Windows 不同,在 Linux 底下,由于每個(gè)程序(或者說(shuō)是服務(wù))都是在在背景下執(zhí)行的,因此,在你看不到的屏幕背后其實(shí)可能有相當(dāng)多人同時(shí)在你的主機(jī)上面工作,例如瀏覽網(wǎng)頁(yè)啦、傳送信件啦以 FTP 傳送檔案啦等等的,如果你直接按下電源開(kāi)關(guān)來(lái)關(guān)機(jī)時(shí),則其它人的數(shù)據(jù)可能就此中斷!那可就傷腦筋了!此外,最大的問(wèn)題是,若不正常關(guān)機(jī),則可能造成文件系統(tǒng)的毀損(因?yàn)閬?lái)不及將數(shù)據(jù)回寫(xiě)到檔案中,所以有些服務(wù)的檔案會(huì)有問(wèn)題!)。

如果你要關(guān)機(jī),必須要保證當(dāng)前系統(tǒng)中沒(méi)有其他用戶在線??梢韵逻_(dá) who 這個(gè)指令,而如果要看網(wǎng)絡(luò)的聯(lián)機(jī)狀態(tài),可以下達(dá) netstat -a 這個(gè)指令,而要看背景執(zhí)行的程序可以執(zhí)行 ps -aux 這個(gè)指令。使用這些指令可以讓你稍微了解主機(jī)目前的使用狀態(tài)?。ㄟ@些命令在以后的章節(jié)中會(huì)提及,現(xiàn)在只要了解即可?。?/p>

正確的關(guān)機(jī)流程為:sysnc ? shutdown ? reboot ? halt

sync 將數(shù)據(jù)由內(nèi)存同步到硬盤(pán)中。

shutdown 關(guān)機(jī)指令,你可以man shutdown 來(lái)看一下幫助文檔。例如你可以運(yùn)行如下命令關(guān)機(jī):

shutdown –h 10 ‘This server will shutdown after 10 mins’ 這個(gè)命令告訴大家,計(jì)算機(jī)將在10分鐘后關(guān)機(jī),并且會(huì)顯示在登陸用戶的當(dāng)前屏幕中。

Shutdown –h now 立馬關(guān)機(jī)

Shutdown –h 20:25 系統(tǒng)會(huì)在今天20:25關(guān)機(jī)

Shutdown –h +10 十分鐘后關(guān)機(jī)

Shutdown –r now 系統(tǒng)立馬重啟

Shutdown –r +10 系統(tǒng)十分鐘后重啟

reboot 就是重啟,等同于 shutdown –r now

halt 關(guān)閉系統(tǒng),等同于shutdown –h now 和 poweroff

最后總結(jié)一下,不管是重啟系統(tǒng)還是關(guān)閉系統(tǒng),首先要運(yùn)行 sync 命令,把內(nèi)存中的數(shù)據(jù)寫(xiě)到磁盤(pán)中。關(guān)機(jī)的命令有 shutdown –h now halt poweroff 和 init 0 , 重啟系統(tǒng)的命令有 shutdown –r now reboot init 6。

忘記 root 密碼如何做

以前筆者忘記 Windows 的管理員密碼,由于不會(huì)用光盤(pán)清除密碼最后只能重新安裝系統(tǒng)?,F(xiàn)在想想那是多么愚笨的一件事情。同樣 linux 系統(tǒng)你也會(huì)遇到忘記 root 密碼的情況,如果遇到這樣的情況怎么辦呢?重新安裝系統(tǒng)嗎?當(dāng)然不用!進(jìn)入單用戶模式更改一下 root 密碼即可。如何進(jìn)入呢。

1 重啟 linux 系統(tǒng)

http://wiki.jikexueyuan.com/project/linux/images/4_21.png" alt="" />

3 秒之內(nèi)要按一下回車,出現(xiàn)如下界面

http://wiki.jikexueyuan.com/project/linux/images/4_22.png" alt="" />

然后輸入 e

http://wiki.jikexueyuan.com/project/linux/images/4_23.png" alt="" />

在第二行最后邊輸入 single,有一個(gè)空格。具體方法為按向下尖頭移動(dòng)到第二行,按“e”進(jìn)入編輯模式

http://wiki.jikexueyuan.com/project/linux/images/4_24.png" alt="" />

在后邊加上 single 回車

http://wiki.jikexueyuan.com/project/linux/images/4_25.png" alt="" />

最后按“b”啟動(dòng),啟動(dòng)后就進(jìn)入了單用戶模式了

http://wiki.jikexueyuan.com/project/linux/images/4_26.png" alt="" />

此時(shí)已經(jīng)進(jìn)入到單用戶模式了,你可以更改 root 密碼了。更密碼的命令為 passwd

http://wiki.jikexueyuan.com/project/linux/images/4_27.png" alt="" />

使用系統(tǒng)安裝光盤(pán)的救援模式

救援模式即 rescue ,這個(gè)模式主要是應(yīng)用于,系統(tǒng)無(wú)法進(jìn)入的情況。如,grub 損壞或者某一個(gè)配置文件修改出錯(cuò)。如何使用 rescue 模式呢?

光盤(pán)啟動(dòng),按 F5 進(jìn)入 rescue 模式

http://wiki.jikexueyuan.com/project/linux/images/4_28.png" alt="" />

輸入 linux rescue 回車

http://wiki.jikexueyuan.com/project/linux/images/4_29.png" alt="" />

選擇語(yǔ)言,筆者建議你選擇英語(yǔ)

http://wiki.jikexueyuan.com/project/linux/images/4_30.png" alt="" />

選擇 us 鍵盤(pán)

http://wiki.jikexueyuan.com/project/linux/images/4_31.png" alt="" />

http://wiki.jikexueyuan.com/project/linux/images/4_32.png" alt="" />

這里問(wèn)你是否啟動(dòng)網(wǎng)絡(luò),有時(shí)候可能會(huì)聯(lián)網(wǎng)調(diào)試。我們選 no

http://wiki.jikexueyuan.com/project/linux/images/4_33.png" alt="" />

這里告訴我們,接下來(lái)會(huì)把系統(tǒng)掛載在 /mnt/sysimage 中。其中有三個(gè)選項(xiàng),Continue 就是掛載后繼續(xù)下一步; Read-Only 掛載成只讀,這樣更安全,有時(shí)文件系統(tǒng)損壞時(shí),只讀模式會(huì)防止文件系統(tǒng)近一步損壞;Skip 就是不掛載,進(jìn)入一個(gè)命令窗口模式。這里我們選擇 Continue。

http://wiki.jikexueyuan.com/project/linux/images/4_34.png" alt="" />

至此,系統(tǒng)已經(jīng)掛載到了 /mnt/sysimage 中。接下來(lái)回車,輸入 chroot /mnt/sysimage 進(jìn)入管理員環(huán)境。

http://wiki.jikexueyuan.com/project/linux/images/4_35.png" alt="" />

Tips: 其實(shí)也可以到 rescue 模式下更改 root 的密碼的。這個(gè) rescue 模式和 Windows PE 系統(tǒng)很相近。當(dāng)運(yùn)行了 chroot /mnt/sysimage/ 后,再 ls 看到目錄結(jié)構(gòu)和原來(lái)系統(tǒng)中的目錄結(jié)構(gòu)是一樣的。沒(méi)錯(cuò)!現(xiàn)在的環(huán)境和原來(lái)系統(tǒng)的環(huán)境是一模一樣的。你可以輸入 exit 或者按 Ctrl + D 退出這個(gè)環(huán)境。然后你再 ls 看一下

http://wiki.jikexueyuan.com/project/linux/images/4_36.png" alt="" />

這個(gè)目錄其實(shí)就是 rescue 模式下的目錄結(jié)構(gòu),而我們的系統(tǒng)文件全部在 /mnt/sysimage目錄下。