版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第八章文件系統(tǒng)管理本章學習目標⊙ 了解磁盤分區(qū)和文件系統(tǒng)的概念⊙ 創(chuàng)建和掛載文件系統(tǒng)⊙ 維護文件系統(tǒng)8.1文件系統(tǒng)基礎
硬盤:容量大、速度快、價格低對硬盤進行分區(qū):使得每個分區(qū)在邏輯上是獨立的。在每個分區(qū)上安裝操作系統(tǒng),而多個操作系統(tǒng)就可以共處在同一塊硬盤上。主引導扇區(qū)MBR:硬盤分區(qū)后,分區(qū)軟件會寫一個MBR在該扇區(qū)512字節(jié)中:硬盤的主引導記錄區(qū)MBR占用了前446個字節(jié),另64個字節(jié)是硬盤分區(qū)表DPT8.1.1磁盤分區(qū)主引導記錄:包含了硬盤的一系列參數(shù)和一段引導程序。具體結構如圖8-1所示。三個主分區(qū)和一個擴展分區(qū)一個硬盤的分區(qū)最多只能有4個基本分區(qū),即4個主分區(qū)擴展分區(qū):在主分區(qū)的基礎上把分區(qū)再細分成多個子分區(qū),每個子分區(qū)都是邏輯分區(qū)。只允許存在一個擴展分區(qū)“fdisk–l”:獲得硬盤的分區(qū)信息Linux對硬盤分區(qū)的命名和DOS對硬盤分區(qū)的命名有很大的不同。8.1.2文件系統(tǒng)概述文件系統(tǒng):操作系統(tǒng)中實現(xiàn)對文件的組織、管理和存取的一組系統(tǒng)程序 提供了便捷的存取信息的方法:按文件名存取信息,無須了解存儲的物理位置。文件系統(tǒng)的主要功能:
·
實現(xiàn)了按文件名存取文件信息,映射
·
文件存儲空間的分配與回收
·
對文件及目錄的管理
·
提供操作系統(tǒng)與用戶的接口
·
菜單式接口
·
程序接口
·
提供了有關文件自身的服務Linux支持多種類型的文件系統(tǒng),如書上表8-1所示。當前ext3文件系統(tǒng)使用最為廣泛,日志型文件系統(tǒng)Linux系統(tǒng)采用了虛擬文件系統(tǒng)(VFS)技術文件系統(tǒng)是所有數(shù)據(jù)的基礎,所有文件和目錄都駐留在文件系統(tǒng)上。文件系統(tǒng)被連接到總目錄上,即根目錄(系統(tǒng)自動建立)。根目錄下有許多分支,分支又有子分支,從而整個目錄呈樹狀結構,如圖8-2所示。Linux中創(chuàng)建文件系統(tǒng)后,要把文件系統(tǒng)掛載(mount)后才能使用。8.1.3Linux的目錄結構系統(tǒng)子目錄中的文件的作用:是保證系統(tǒng)的正常運行許多還有自己的下級子目錄,并容納完成Linux操作系統(tǒng)的特定功能的程序。Linux根據(jù)文件系統(tǒng)層次標準(FHS)組織的目錄結構如書上表8-2所示。8.2創(chuàng)建文件系統(tǒng)進行磁盤分區(qū)(fdisk
分區(qū)工具)為每個分區(qū)指定分區(qū)的文件系統(tǒng)8.2.1創(chuàng)建磁盤分區(qū)fdisk的說明 通過fdisk命令,進入相應設備
列出當前操作硬盤的分區(qū)情況 在fdisk的命令提示符下,輸入“p”就可以查看當前的硬盤分區(qū)信息
通過fdisk的d指令刪除一個分區(qū) 刪除分區(qū)可以使用“d”命令,然后輸入想要刪除的分區(qū)對應的分區(qū)序號
通過fdisk的n指令增加一個分區(qū) 添加新分區(qū),用“n”命令。計算機會首先詢問分區(qū)類型,主分區(qū)還是邏輯分區(qū)。
通過fdisk的t指令指定分區(qū)類型 新建完分區(qū)后,就需要對分區(qū)指定其類型,使用“t”命令
fdisk的退出,用q或者w
q是不保存退出,w是保存退出8.2.2建立文件系統(tǒng)分區(qū)上建立文件系統(tǒng):會清除分區(qū)上的所有數(shù)據(jù)建立文件系統(tǒng)的命令是mkfs,其命令格式如下:
mkfs[參數(shù)]文件系統(tǒng)參數(shù)說明:
·
命令中的選擇說明如書上表8-4所示
·
文件系統(tǒng):需要重建的文件系統(tǒng)8.2.3交換分區(qū)交換分區(qū)的作用: 當系統(tǒng)的物理內存不夠用的時候,就需要將物理內存中的一部分空間釋放出來,以供當前運行的程序使用。不是所有從物理內存中交換出來的數(shù)據(jù)都會被放到交換分區(qū)中,有相當一部分數(shù)據(jù)被直接交換到文件系統(tǒng)。交換分區(qū)的建立和激活Linux系統(tǒng)下可以有多個交換分區(qū)創(chuàng)建好交換分區(qū)使用mkswap命令“格式化”分區(qū)用swapon命令激活交換分區(qū)。〖示例8.4〗在/dev/sda5上建立交換分區(qū):[root@localhostroot]#mkswap–c/dev/sda5激活該交換分區(qū):[root@localhostroot]#swapon/dev/sda5交換文件的建立和激活
交換文件的建立和激活過程:創(chuàng)建一個指定大小的文件創(chuàng)建交換文件并修改權限激活交換文件關閉交換文件的使用如果不再繼續(xù)使用,可以直接刪除8.2.4proc文件系統(tǒng)在用戶態(tài)檢查內核狀態(tài)和系統(tǒng)特征的機制文件系統(tǒng)安裝在/proc目錄下
提供更多的系統(tǒng)信息修改部分系統(tǒng)信息通過編程來擴充其中的內容將進程的地址空間、系統(tǒng)的硬件信息、系統(tǒng)相關機制等內容全部設置成虛擬文件。以一種特殊的文件系統(tǒng)的方式,為訪問系統(tǒng)內核數(shù)據(jù)的操作提供接口。/proc目錄:每個文件都有一組分配給它的非常特殊的文件許可權每個文件屬于特定的用戶標識這里面的文件僅僅包含以下幾種權限:
·只讀
——任何用戶都不能修改該文件
·root讀——對一般用戶不可見,對root用戶可見
·root寫——一些可寫文件,只能由root用戶寫
·其它
——
三種權限的組合8.3文件系統(tǒng)的掛載和卸載手動掛載:臨時使用文件系統(tǒng)的場合,尤其是軟盤和光盤的使用手工掛載文件系統(tǒng)使用mount命令,具體的格式如下:
mount[參數(shù)]設備名掛載點參數(shù)說明:
·
命令中的參數(shù)說明如表8-7所示
·
設備名:需要掛載的文件系統(tǒng)
·
掛載點:文件系統(tǒng)掛載的根目錄8.3.1手動掛載和卸載文件系統(tǒng)掛載文件系統(tǒng):用戶的當前目錄不能是掛載點只能使用超級用戶root來進行系統(tǒng)把已掛載的文件系統(tǒng)信息寫到/etc/mtab文件中mount命令:不帶任何參數(shù),顯示已經(jīng)掛載的文件系統(tǒng)的信息卸載文件系統(tǒng):
umount
掛載點或設備名8.3.2自動安裝文件系統(tǒng)/etc/fstab配置文件:系統(tǒng)啟動時就自動掛載〖示例8.7〗顯示/etc/fstab文件內容:[root@localhostroot]#cat/etc/fstabLABEL=//ext3defaults
11LABEL=/boot/bootext3defaults
12none/procprocdefaults
00/dev/sda3swapswapdefaults00/dev/cdrom/mnt/cdromudf,iso9660noauto,owner,kudzu,ro008.4文件系統(tǒng)的維護Linux系統(tǒng)啟動時,會自動檢查/etc/fstab文件中設定要自動檢查的文件系統(tǒng),使用fsck命令手工對文件系統(tǒng)進行檢查,fsck命令的格式如下:
fsck[參數(shù)]設備名參數(shù)說明:
·
命令中的參數(shù)說明如表8-9所示
·
設備名:需要檢查的文件系統(tǒng)手工檢查文件系統(tǒng)時應在沒有掛載的文件系統(tǒng)上進行8.4.1檢查文件系統(tǒng)8.4.2磁盤壞塊的檢查badblocks命令:檢查磁盤上的壞塊創(chuàng)建文件系統(tǒng)時可以利用檢查跳過壞塊,避免數(shù)據(jù)保存到磁盤壞塊上命令badblocks的格式如下:
badblocks[參數(shù)]設備名塊數(shù)參數(shù)說明:
·
命令中的參數(shù)說明如書本表8-10所示
·
設備名:需要檢查的文件系統(tǒng)
·
塊數(shù):需要檢查的塊數(shù)8.4.3文件系統(tǒng)管理命令統(tǒng)計目錄使用磁盤空間的情況
du[參數(shù)]目錄名命令的參數(shù)說明如下:
·
命令中的參數(shù)說明如表8-11所示
·
目錄名:需要統(tǒng)計的目錄統(tǒng)計未使用的磁盤空間
df[參數(shù)]命令的參數(shù)說明如下: 如表8-12所示選項說明-a包含全部的文件系統(tǒng)-k以千字節(jié)為單位顯示信息-m以MB為單位顯示信息-tfstype僅顯示指定文件系統(tǒng)類型的磁盤信息轉換和復制文件dd命令:可用來產生交換文件,也常常用來制作映象文件。ddif=輸入文件名of=輸出文件名count=塊數(shù)8.5課后習題與實驗在Linux系統(tǒng)中所有內容都被表示為文件,組織文件的各種方法稱為
。Linux使用支持Windows9.x/2000長文件名的文件系統(tǒng)的類型是
。在Linux系統(tǒng)中,用來存放系統(tǒng)所需要的配置文件和子目錄的目錄是
。Linux文件系統(tǒng)的文件都按其作用分門別類地放在相關的目錄中,對于外部設備文件,一般應將其放在
目錄中。列出當前磁盤的分區(qū)情況的命令為
。想要對硬盤IDE0的第二擴展分區(qū)建立ext3文件系統(tǒng),命令為
。Linux在啟動時,讀取
文件以自動加載文件系統(tǒng)。8.5.1課后習題8.請說出下面的目錄主要放置什么數(shù)據(jù)?/etc:
/boot:
/bin,/usr/bin:
/sbin,/usr/sbin
:
/var/log:
9.某/etc/fstab文件中的某行如下:/dev/hda5
/mnt/dos
vfat
defaults,usrquota
12請解釋其含義。10.當文件系統(tǒng)受到破壞時,如何檢查和修復系統(tǒng)?8.5.2實驗:Linux中的分區(qū)與文件系統(tǒng)的管理實驗目的掌握磁盤的分區(qū)掌握文件系統(tǒng)的建立、掛載理解自動掛載實驗內容使用fdisk命令進行磁盤分區(qū)使用mkfs命令創(chuàng)建文件系統(tǒng)使用fsck命令檢查文件系統(tǒng)使用mount和umount命令實施掛載和卸載文件系統(tǒng)在系統(tǒng)啟動時自動掛載文件系統(tǒng)實驗步驟
見書上完成實驗報告思考題在Linux下能創(chuàng)建Windows分區(qū)嗎?在Linux下能創(chuàng)建Windows的文件系統(tǒng)嗎?文件掛載表的文件是什么?作用是什么?格式是怎樣的?利用mount命令掛裝一個文件系統(tǒng)和將其寫入文件掛載表的區(qū)別是什么?第九章進程管理本章學習目標⊙ Linux系統(tǒng)引導過程⊙ init進程的功能和配置⊙ 進程管理的各種操作9.1系統(tǒng)初始化RedHatLinux9系統(tǒng)的引導啟動過程:主機啟動并進行硬件自檢后,讀取MBR中啟動引導器程序,并加載。啟動之后,選擇了Linux作為準備引導的操作系統(tǒng),第一個被加載的東西就是內核。內核在內存中解壓縮之后,就可以開始運行了。init進程根據(jù)配置文件執(zhí)行相應的系統(tǒng)程序,并進入指定的運行級別最后,運行控制臺程序并允許用戶登錄。9.1.1系統(tǒng)啟動過程9.1.2init進程的配置init進程:非內核進程中第一個被啟動運行的,進程編號PID的值總是1。init的配置文件:/etc/inittab,決定需要啟動的運行級別(Runlevel)。init進程的配置文件說明:如書本圖9-1所示。管理運行級別兩個命令:runlevel和initrunlevel:顯示上一次以及系統(tǒng)當前的運行級別。init:修改當前的運行級別, 命令格式為:init運行級別號9.1.3rc命令介紹rc命令腳本程序:/etc/rc.d/rc,負責為每一個運行級別按照正確的順序調用相應的命令腳本程序。rcX.d:運行級別的下級子目錄的命名方法,X就是代表運行級別的數(shù)字。符號鏈接:各個運行級別的子目錄中,都建立到/etc/rc.d/init.d子目錄中命令腳本程序鏈接命令腳本程序:存放在/etc/rc.d/init.d子目錄中、被符號鏈接上。是真正需要執(zhí)行的程序,用來完成啟動或者停止各種服務的操作過程。9.2進程管理在自身的虛擬地址空間運行的一個單獨的程序。Linux用分時管理方法使所有的任務共同分享系統(tǒng)資源。9.2.1進程概念9.2.2進程的啟動在Shell命令行下輸入要執(zhí)行的程序來啟動一個進程。方式分為前臺和后臺:默認為前臺啟動后臺運行,命令后加上一個“&”符號手工啟動調度啟動調度啟動:事先就設置好要在某個時刻運行的程序,當?shù)搅祟A設的時間時,由系統(tǒng)自動運行該程序指定的時間運行特定的程序:使用at或crontab命令at命令具體格式如下:at[參數(shù)]時間參數(shù)說明: 命令中的選擇說明如書上表9-1所示 時間:執(zhí)行程序的時刻crontab命令格式如下: crontab[參數(shù)]參數(shù)說明: 命令中的選擇說明如書上表9-2所示9.2.3管理系統(tǒng)進程ps命令具體格式如下:ps[參數(shù)]參數(shù)說明: 命令中的選擇說明如書上表9-3所示top命令具體格式如下:top[參數(shù)]參數(shù)說明:命令中的選擇說明如書上表9-4所示查看系統(tǒng)進程修改進程優(yōu)先級nice命令:可以改變進程執(zhí)行的優(yōu)先權等級參數(shù):-n<優(yōu)先等級>或-<優(yōu)先等級>或--adjustment=<優(yōu)先等級>等級范圍-20~19,-20最高,19最低只有root帳戶可以設置負數(shù)的等級。修改進程優(yōu)先級renice命令:可重新調整程序執(zhí)行的優(yōu)先權等級。參數(shù):<優(yōu)先等級>[-ppid]預設:以進程識別碼指定程序調整其優(yōu)先權可指定程序群組或用戶名稱調整優(yōu)先權等級并修改所有隸屬于該程序群組或用戶的進程的優(yōu)先權等級范圍從-20~19只有root帳戶可以改變其他用戶進程的優(yōu)先權,也僅有root帳戶可以設置負數(shù)等級結束系統(tǒng)進程kill命令:該命令使用進程識別號來終止進程運行。其格式為:
kill[-9]<pid>kill命令向指定的進程發(fā)送終止運行的信號,進程收到后會自動結束本進程,并處理好結束前的相關事務,屬于安全結束進程。kill命令還可以加上一個參數(shù)“-9”,用來終止已經(jīng)僵死而無法自動結束的進程。killall命令:該命令使用進程名來結束指定的進程,若系統(tǒng)中存在同名的多個進程,則這些進程將全部結束運行。該命令還可以加上參數(shù)“-9”用來結束僵死的進程。該命令格式為:
killall[-9]進程名9.3守護進程守護進程的概念守護進程:生存期長的一種進程。獨立于控制終端并且周期性的執(zhí)行某種任務或等待處理某些發(fā)生的事件。常常在系統(tǒng)引導裝入時啟動,系統(tǒng)關閉時終止。Linux系統(tǒng)有很多守護進程,大多數(shù)服務器都是用守護進程實現(xiàn)的。查看并配置系統(tǒng)啟動的守護進程,可以用root權限運行ntsysv命令,啟動后運行的圖形化界面配置工具如圖9-2所示。9.3.1守護進程概述圖9-2
ntsysv界面守護進程的工作原理在Client/Server模式下。守護進程打開一個端口,并且等待進入連接如果客戶端產生一個連接請求,守護進程就創(chuàng)建(Fork)一個子服務器響應這個連接,而主服務器繼續(xù)監(jiān)聽其他的服務請求。Linux下守護進程的簡介如書上表9-5所示,列出一些RedHatLinux9下的守護進程。9.3.2xinetd服務xinetd(eXtendedInterNETdaemon):網(wǎng)絡守護進程能夠同時監(jiān)聽多個指定的端口在接受用戶請求時,能夠根據(jù)用戶請求的端口不同,啟動不同的網(wǎng)絡服務進程來處理這些用戶請求。圖9-2
xinetd工作模式9.4課后習題與實驗1.結束后臺進程的命令是
。2.啟動進程有手動啟動和調度啟動兩種方法,其中調度啟動常用的命令為
和
。3.以進程優(yōu)先級-5來運行pstree的命令為
。4.終止一個前臺進程可能用到的命令和操作什么? ()A.kill B.<CTRL>+C C.shutdown D.halt5.從后臺啟動進程,應在命令的結尾加上什么符號? ()A.& B.@ C.# D.$9.4.1課后習題6.crontab文件由六個域組成,每個域之間用空格分割,其排列如下()A.MIN
HOUR
DAY
MONTH
YEAR
COMMANDB.MIN
HOUR
DAY
MONTH
DAYOFWEEK
COMMANDC.COMMAND
HOUR
DAY
MONTH
DAYOFWEEKD.COMMAND
YEAR
MONTH
DAY
HOUR
MIN7.關于進程調度命令,以下哪個選項是不正確的?()A.當日晚11點執(zhí)行clear命令,使用at命令:at23:00todayclearB.每年1月1日早上6點執(zhí)行date命令,使用at命令:at6amJan1dateC.每日晚11點執(zhí)行date命令,crontab文件中應為:023***dateD.每小時執(zhí)行一次clear命令,crontab文件中應為:0*/1***clear8.以下選項中哪一點不是進程和程序的區(qū)別?()A.程序是一組有序的靜態(tài)指令,進程是一次程序的執(zhí)行過程B.程序只能在前臺運行,而進程可以在前臺或后臺運行C.程序可以長期保存,進程是暫時的D.程序沒有狀態(tài),而進程是有狀態(tài)的9.簡述進程的啟動、終止的方式以及如何進行進程的查看。10.請簡述RedHatLinux9的啟動過程9.4.2實驗:Linux的進程管理實驗目的掌握Linux系統(tǒng)進程管理實驗內容進程狀態(tài)查看控制系統(tǒng)中運行的進程安排一次性和周期性自動執(zhí)行的后臺進程實驗步驟完成實驗報告思考題簡述進程與程序的區(qū)別。在RedHatLinux9中,cron用來周期性的進行任務調度,請列出cron任務的格式,如果要月運行一次,怎么設置?請說出cron建立的兩種方式,以及它們的命令。在RedHatLinux9中用于監(jiān)聽某個端口連接所發(fā)生的守護進程是什么?其工作原理是什么?第十章日志文件管理本章學習目標⊙ 查看日志文件⊙ 配置和管理系統(tǒng)日志10.1日志文件概述日志文件(logfile):是包含關于系統(tǒng)消息的文件,包括內核、服務、在系統(tǒng)上運行的應用程序等。主要功能:審計和監(jiān)測,實時的監(jiān)測系統(tǒng)狀態(tài),監(jiān)測和追蹤侵入者等。在Linux系統(tǒng)中,三個主要的日志子系統(tǒng):(1)連接時間日志(2)進程統(tǒng)計(3)錯誤日志10.1.1日志系統(tǒng)介紹10.1.2圖形化顯示日志查看系統(tǒng)日志文件:選擇“主菜單”—>“系統(tǒng)工具”—>“系統(tǒng)日志”程序終端下使用redhat-logviewer程序,如圖10-1所示。圖10-1系統(tǒng)日志界面圖10-2首選項下的日志文件標簽圖10-3首選項下的警告標簽10.2管理日志Syslog:記錄系統(tǒng)事件,寫到一個文件或設備中,或給用戶發(fā)送一個信息。能記錄本地事件或通過網(wǎng)絡記錄另一個主機上的事件。syslog設備兩個重要的文件:syslogd(守護進程)和/etc/syslog.conf配置文件syslog.conf指明syslogd程序記錄日志的行為syslogd在啟動時查詢配置文件syslog.conf
,如書上圖10-4所示。10.2.1syslog設備10.2.2日志文件介紹/var/log/boot.log記錄了系統(tǒng)在引導過程中發(fā)生的事件,就是Linux系統(tǒng)開機自檢過程顯示的信息。/var/log/cron記錄crontab守護進程crond所派生的子進程的動作,前面加上用戶、登錄時間和PID,以及派生出的進程的動作。/var/log/maillog記錄了每一個發(fā)送到系統(tǒng)或從系統(tǒng)發(fā)出的電子郵件的活動。/var/log/messages許多進程日志文件的匯總/var/log/lastlog記錄最近成功登錄的事件和最后一次不成功的登錄事件,由login生成。/var/log/wtmp永久記錄每個用戶登錄、注銷及系統(tǒng)的啟動、停機的事件。last也能根據(jù)用戶、終端tty或時間顯示相應的記錄。命令last有兩個可選參數(shù):last-u用戶名:顯示用戶上次登錄的情況。last-t天數(shù):顯示指定天數(shù)之前的用戶登錄情況。/var/run/utmp記錄有關當前登錄的每個用戶的信息。/var/log/kernlog默認沒有記錄該日志文件。要啟用該日志文件,必須修改syslog配置文件中的一行:原文件內容:#kern.* /dev/console修改后內容:kern.* /var/log/kernlog這樣就啟用了向/var/log/kernlog文件中記錄所有內核消息的功能。10.2.3查看二進制日志每次有一個用戶登錄時,login程序在文件lastlog中查看用戶的UID。如果存在,則把用戶上次登錄、注銷時間和主機名寫到標準輸出中然后login程序在lastlog中記錄新的登錄時間,打開utmp文件并插入用戶的utmp記錄。該記錄一直用到用戶登錄退出時刪除。utmp文件:被各種命令使用,包括who、w、users和finger。下一步,login程序打開文件wtmp附加用戶的utmp記錄。當用戶登錄退出時,具有更新時間戳的同一utmp記錄附加到文件中。wtmp文件:被程序last使用。who命令查詢utmp文件并報告當前登錄的每個用戶。who的命令格式:
who[參數(shù)][記錄文件]參數(shù)說明:命令中的選擇說明如書上表10-1所示記錄文件:可選,指明了/var/log/wtmp,這時,who命令查詢所有以前的記錄。w命令查詢utmp文件并顯示當前每個用戶和它所運行的進程信息w的命令格式:
w[參數(shù)][用戶賬號]命令的參數(shù)說明:命令中的選擇說明如表10-2所示用戶賬號:可選,指定所需要查看的用戶的信息users命令users命令:用單獨的一行打印出當前登錄的用戶,每個顯示的用戶名對應一個登錄會話。如果一個用戶有不止一個登錄會話,那他的用戶名將顯示相同的次數(shù)。last命令last命令:用來往回搜索wtmp來顯示自從文件第一次創(chuàng)建以來登錄過的用戶。last的命令格式:
last[參數(shù)][用戶賬號]命令的參數(shù)說明:命令中的選擇說明如表10-3所示用戶賬號:可選,指定所需要查看的用戶finger命令finger命令:僅用來查找并顯示用戶的詳細信息。finger的命令格式:
finger[參數(shù)][用戶賬號]命令的參數(shù)說明: 命令中的選擇說明如表10-4所示 用戶賬號:可選,指定所需要查看的用戶lastlog命令lastlog命令:通過/var/log/lastlog文件檢查用戶上次登錄的時間,并格式化輸出上次登錄日志的內容。lastlog的命令格式如下:
lastlog[參數(shù)]參數(shù)說明:
·命令中的選擇說明如書上表10-5所示10.3課后習題與實驗日志主要的功能有哪些?簡述Linux中主要的日志子系統(tǒng)。什么是syslog設備?如下的日志文件記錄的內容是什么?/var/log/boot.log:/var/log/cron:/var/log/maillog:10.3.1課后習題/var/log/messages:/var/log/lastlog:/var/log/wtmp:/var/log/utmp:/var/log/kernlog:5.上述日志文件中哪些是文本文件,哪些是二進制文件,分別應該如何查看文件內容?10.3.2實驗:Linux下日志文件的管理實驗目的掌握Linux的日志文件的管理實驗內容查看日志文件用命令方式查看二進制日志文件實驗步驟完成實驗報告思考題通過crontab創(chuàng)建任務,計劃每周三的12:00自動檢查所有文件系統(tǒng),設置完后,查看與此計劃任務有關的日志文件的變化。嘗試修改syslog配置文件,以啟動內核日志文件功能。第十一章
TCP/IP網(wǎng)絡設置本章學習目標⊙ OSI和TCP/IP網(wǎng)絡結構⊙ TCP/IP網(wǎng)絡的相關概念⊙ 如何配置TCP/IP網(wǎng)絡11.1Linux網(wǎng)絡基礎國際標準化組織(ISO)在1979年建立了一個分委員會來專門研究一種用于開放系統(tǒng)互聯(lián)的體系結構(OpenSystemInterconnectionReferenceModel)簡稱OSIOSI參考模型分為7層,分別是物理層,數(shù)據(jù)鏈路層,網(wǎng)絡層,傳輸層,會話層,表示層和應用層。11.1.1網(wǎng)絡模型OSI/RM模型TCP/IP模型TCP/IP協(xié)議(TransmissionControlProtocol/InternetProtocol)叫做傳輸控制/網(wǎng)際協(xié)議,又叫網(wǎng)絡通訊協(xié)議。是網(wǎng)絡中使用的基本的通信協(xié)議。一組協(xié)議,包括上百個各種功能的協(xié)議。用于計算機通信的一組協(xié)議,通常稱它為TCP/IP協(xié)議族。TCP/IP協(xié)議包括:TCP、IP、UDP、ICMP、RIP、TELNET、FTP、SMTP、ARP、TFTP等許多協(xié)議協(xié)議分層模型TCP/IP由四個層次組成:網(wǎng)絡接口層、網(wǎng)絡層、傳輸層、應用層。如圖11-1所示。圖11-1
TCP/IP模型(1)網(wǎng)絡接口層:
TCP/IP軟件的最低層,負責接收IP數(shù)據(jù)報并通過網(wǎng)絡發(fā)送之,或者從網(wǎng)絡上接收物理幀,抽出IP數(shù)據(jù)報,交給IP層。(2)網(wǎng)絡層:負責相鄰計算機之間的通信。功能三方面:一、處理來自傳輸層的分組發(fā)送請求,收到請求后,將分組裝入IP數(shù)據(jù)報,填充報頭,選擇路徑,然后將數(shù)據(jù)報發(fā)往適當?shù)木W(wǎng)絡接口二、處理輸入數(shù)據(jù)報:首先檢查其合法性,然后進行尋徑--假如該數(shù)據(jù)報已到達信宿機,則去掉報頭,將剩下部分交給適當?shù)膫鬏攨f(xié)議;假如該數(shù)據(jù)報尚未到達信宿,則轉發(fā)該數(shù)據(jù)報三、處理路徑、流控、擁塞等問題。(3)傳輸層: 提供應用程序間的通信。 其功能包括:一、格式化信息流;二、提供可靠傳輸。 為實現(xiàn)后者,傳輸層協(xié)議規(guī)定接收端必須發(fā)回確認,并且假如分組丟失,必須重新發(fā)送。(4)應用層: 向用戶提供一組常用的應用程序,比如電子郵件、文件傳輸訪問、遠程登錄等。 遠程登錄Telnet使用Telnet協(xié)議提供在網(wǎng)絡其它主機上注冊的接口。
Telnet會話提供了基于字符的虛擬終端。 文件傳輸訪問FTP使用FTP協(xié)議來提供網(wǎng)絡內機器間的文件拷貝功能。OSI與TCP/IP的關系(1)分層:OSI參考模型與TCP/IP協(xié)議都采用了分層結構,都是基于獨立的協(xié)議棧的概念。OSI參考模型有7層,而TCP/IP協(xié)議只有4層,二者的分層之間有一定的對應關系如圖11-2所示。圖11-2
TCP/IP與OSI/RM的關系(2)關系:
OSI參考模型有深厚的通信系統(tǒng)的特色,比如對服務質量(QoS)、差錯率的保證,只考慮了面向連接的服務。是先定義一套功能完整的構架,再根據(jù)該構架來發(fā)展相應的協(xié)議與系統(tǒng)。
TCP/IP協(xié)議產生于對Internet網(wǎng)絡的研究與實踐中,是應實際需求而產生的,再標準化。且TCP/IP最早是在UNIX系統(tǒng)中實現(xiàn)的,考慮了計算機網(wǎng)絡的特點,比較適合計算機實現(xiàn)和使用。(3)應用:
OSI體系復雜,設計先于實現(xiàn),有許多設計過于理想,不太方便計算機軟件實現(xiàn),因而完全實現(xiàn)OSI參考模型的系統(tǒng)并不多,應用的范圍有限。
TCP/IP協(xié)議最早在計算機系統(tǒng)中實現(xiàn),在Unix、Windows平臺中都有穩(wěn)定的實現(xiàn),并且提供了簡單方便的編程接口,可在其上開發(fā)出豐富的應用程序,因此得到了廣泛的應用。
TCP/IP協(xié)議已成為目前網(wǎng)際互聯(lián)事實上的國際標準和工業(yè)標準。11.1.2TCP/IP協(xié)議族概述(1)IP協(xié)議: 互聯(lián)網(wǎng)協(xié)議是互聯(lián)網(wǎng)層的重要協(xié)議,主要功能是實現(xiàn)無連接的數(shù)據(jù)報傳送和數(shù)據(jù)報的路由選擇(2)ICMP協(xié)議: 互聯(lián)網(wǎng)控制報文協(xié)議ICMP則專門用來處理差錯報告和控制(3)ARP協(xié)議: 任務就是查找與給定IP地址相對應主機的網(wǎng)絡物理地址。(4)RARP協(xié)議:
RARP協(xié)議主要解決網(wǎng)絡物理地址MAC到IP地址的轉換。網(wǎng)絡層協(xié)議傳輸層協(xié)議(1)TCP協(xié)議:TCP是一個面向連接的協(xié)議,為網(wǎng)絡上提供有序可靠的傳輸服務。TCP允許從一臺主機發(fā)出的字節(jié)流無差錯地發(fā)往互聯(lián)網(wǎng)上的其他主機。它把輸入的字節(jié)流分成報文段并傳給網(wǎng)絡層,在接收端,TCP接收進程把收到的報文再組裝成輸出流。TCP功能包括為了取得可靠的傳輸而進行的分組丟失檢測,對收不到確認的信息自動重傳,以及處理延遲的重復數(shù)據(jù)報等。TCP能進行流量控制和差錯控制。(2)UDP協(xié)議:UDP是對IP協(xié)議的擴充,它使發(fā)送方可以區(qū)分其他計算機上的多個接收者。采用無連接的方式向高層提供服務,與遠方的UDP實體不建立端對端的連接,而是將數(shù)據(jù)報送上網(wǎng)絡或者從網(wǎng)絡上接收數(shù)據(jù)它不保證數(shù)據(jù)的可靠投遞。應用層協(xié)議(1)FTP協(xié)議:
FTP用于兩臺主機之間的文件傳輸,F(xiàn)TP在工作時使用兩個TCP連接,一個用于交換命令和應答,另一個用于傳送文件。(2)DNS協(xié)議:DNS駐留在域名服務器上,維持著一個分布式數(shù)據(jù)庫,提供了從域名到IP地址的相互轉換,并給出命名規(guī)則。(3)Telnet協(xié)議:提供了一種與終端進程連接的標準方法,支持連接(終端到終端)和分布式計算通信(進程到進程),允許一個用戶的計算機通過遠程登錄仿真成某個遠程主機的終端,來訪問遠程主機的程序和數(shù)據(jù)資源。(4)SMTP協(xié)議:一個簡單的面向文本的協(xié)議,用來有效和可靠地傳遞郵件。11.1.3TCP/IP配置概念在TCP/IP中,每臺連接網(wǎng)絡的計算機(或主機)都被指定惟一的IP地址。IP地址:長32位,用4組8位二進制數(shù)表示,每組數(shù)字之間以“.”間隔,即用形如x.x.x.x的格式表示。x為由八位二進制數(shù)轉換而來的十進制數(shù),其值為0-255。這種格式的地址常稱為“點分十進制”地址。IP地址IP采用了分級尋址的方案:一個IP地址分為兩個部分一部分稱為“網(wǎng)絡號”一部分稱為“主機號”網(wǎng)絡號通常標識一個主機所在的網(wǎng)絡區(qū)域,而主機號則表示在本區(qū)域內惟一確定的—臺主機。根據(jù)網(wǎng)絡號和主機號的劃分方法不同,將IP地址空間分為A、B、C、D和E類,A、B、C三類是正常的IP地址,分級方案如圖11-3所示,IP地址劃分如表11-1所示。其余兩類使用較少,D類用于群組廣播,E類保留。圖11-3 A、B、C三類地址結構A類網(wǎng)絡主機主機主機B類網(wǎng)絡網(wǎng)絡主機主機C類網(wǎng)絡網(wǎng)絡網(wǎng)絡主機IP地址分級IP地址范圍A類~55B類~55C類~55D類~55E類~55表11-1 IP地址范圍子網(wǎng)與子網(wǎng)掩碼子網(wǎng)掩碼是:另一組由句號分開的單字節(jié)整數(shù),定義了IP地址中表示網(wǎng)絡的部分。例如:對于一個8位數(shù)字194,其二進制表示如下:11000010如果將這個數(shù)字一分為二,前4位表示網(wǎng)絡,后4位表示主機,則子網(wǎng)掩碼用邏輯“與”組合這個數(shù)字時,后4位為0,前4位不變。根據(jù)邏輯“與”的規(guī)則,子網(wǎng)掩碼的二進制形式為11110000。廣播地址用戶能將消息一次性傳遞到自己網(wǎng)絡中的全體系統(tǒng)中。廣播地址中主機部分被設置為255(二進制位為全1),而網(wǎng)絡部分不變。網(wǎng)關地址網(wǎng)關是提供外部世界的路由的機器通常至少有兩個網(wǎng)絡接口卡:一個連接局域網(wǎng),另一個進行遠程連接。網(wǎng)關在適當時候將局域網(wǎng)中的分組重新選擇路由。對于連接外部網(wǎng)絡的主機,則需要知道局域網(wǎng)外至少一個網(wǎng)關的IP地址。域名系統(tǒng)(DNS)域名服務(DNS,DomainNameService)是一個系統(tǒng)主機的IP地址與主機名對應起來并存放在DNS服務器上。DNS服務器遇到請求之后,就將域名解析為IP地址后反饋回去。使用域名將大大減輕用戶記憶的負擔。端口(port)網(wǎng)絡服務一般都是通過人們所熟知的TCP或UDP端口號來識別的,如表11-4所示。服務名端口類型說明FTP21TCP文件傳輸協(xié)議Telnet23TCPTelnet連接SMTP25TCP簡單郵件傳輸協(xié)議DNS53TCP域名系統(tǒng)服務HTTP80TCP超文本傳輸協(xié)議POP3110TCP使用郵政局協(xié)議3的郵件閱讀器IMAP143TCP使用Internet消息訪問協(xié)議的郵件閱讀器11.1.4TCP/IP網(wǎng)絡配置在RedHatLinux9下進行TCP/IP網(wǎng)絡的配置,redhat-config-network命令(“主菜單”—>“系統(tǒng)設置”—>“網(wǎng)絡”)是在圖形化界面下最常用的網(wǎng)絡配置工具,如圖11-4所示。
在主界面下,雙擊網(wǎng)卡設備,或者點擊“編輯”,均可以進入該網(wǎng)卡的配置,比如使用DHCP還是靜態(tài)IP地址、子網(wǎng)掩碼、默認網(wǎng)關以及路由配置等。在主界面的標簽中,還可以修改DNS、靜態(tài)主機解析表。修改完確認無誤后,可以單擊“文件”菜單下的“保存”來保存配置信息。然后確保該網(wǎng)絡設備已經(jīng)激活(狀態(tài)欄顯示“活躍”,若沒有激活,則單擊菜單欄的“激活”)后,重新啟動network服務,就可以使配置信息生效了。11.1.5IPv6簡介IPv6是下一版本的互聯(lián)網(wǎng)協(xié)議,IPv6采用128位地址長度,幾乎可以不受限制地提供地址。IPv6的主要優(yōu)勢:擴大地址空間、提高網(wǎng)絡的整體吞吐量、改善服務質量(QoS)、安全性有更好的保證、支持即插即用和移動性、更好實現(xiàn)多播功能。11.2網(wǎng)絡配置命令說明:該命令用來顯示或改變主機名,不過改變主機名的狀態(tài)只是暫時的,當計算機重啟或關閉后,主機名會恢復到修改前的狀態(tài)。格式:hostname[主機名]11.2.1hostname11.2.2ifconfig說明:該命令用來顯示或設置網(wǎng)絡設備,不加任何參數(shù)的情況下是顯示網(wǎng)絡設備信息。格式:ifconfig[網(wǎng)絡設備名][IP地址][參數(shù)]·
命令中的選擇說明如表11-5所示·
網(wǎng)絡設備名:Linux標示網(wǎng)絡設備的別名,eth0,eth1……·
IP地址:該網(wǎng)絡設備的IP地址設置11.2.3ping說明:執(zhí)行ping指令會使用ICMP傳輸協(xié)議,發(fā)出要求回應的信息,若遠端主機的網(wǎng)絡功能沒有問題,就會回應該信息,因而得知該主機運作正常。格式:ping[參數(shù)][主機名或IP地址]命令的參數(shù)說明如下:·
命令中的選擇說明如表11-6所示·
主機名或IP地址:遠程主機的標示11.2.4route說明:該命令用于顯示或修改路由表,默認是顯示路由表。格式:route[參數(shù)]命令的參數(shù)說明如下:·
命令中的選擇說明如表11-7所示選項說明-n以IP地址顯示路由表add增加一條路由信息del刪除一條路由信息-net|-host標示路由信息屬于網(wǎng)段還是主機netmask子網(wǎng)掩碼gw|dev標示以IP或是網(wǎng)絡設備號來建立路由11.2.5traceroute說明:該命令用于追蹤網(wǎng)絡數(shù)據(jù)包主機間傳送的路由途徑。格式:traceroute[參數(shù)][主機名或IP地址][數(shù)據(jù)包大小]命令的參數(shù)說明如下:·
命令中的選擇說明如表11-8所示·
主機名或IP地址:遠程主機的標示·
數(shù)據(jù)包大?。好看伟l(fā)送的數(shù)據(jù)包大小11.2.6netstat說明:該命令用于獲取整個Linux系統(tǒng)的網(wǎng)絡狀態(tài)。格式:netstat[參數(shù)]命令的參數(shù)說明如下:·
命令中的選擇說明如書上表11-9所示11.2.7nslookup說明:該命令用于查詢DNS服務器的信息,可以用于查錯,不加任何參數(shù)的情況下是進入交互模式。格式:nslookup[主機地址]·
主機地址:主機的IP或域名地址。11.2.8tcpdump
說明:該命令可以將網(wǎng)絡中傳送的數(shù)據(jù)包的“頭”完全截獲下來提供分析,它支持針對網(wǎng)絡層、協(xié)議、主機、網(wǎng)絡或端口的過濾。格式:tcpdump[參數(shù)]·
命令中的選擇說明如書上表11-10所示11.3課后習題與實驗欲發(fā)送10個分組報文測試與主機的連通性,應使用的命令和參數(shù)是
。ping命令可以測試網(wǎng)絡中本機系統(tǒng)是否能到達
,所以常常用于測試網(wǎng)絡的
。協(xié)議為IP協(xié)議提供差錯報告。DNS域名系統(tǒng)主要負責主機名和
之間的解析。在TCP/IP模型中,應用層包含了所有的高層協(xié)議,在下列的一些應用協(xié)議中,
協(xié)議是能夠實現(xiàn)本地與遠程主機之間的文件傳輸工作。下面的網(wǎng)絡協(xié)議中,面向連接的協(xié)議是哪個? ()A.傳輸控制協(xié)議B.用戶數(shù)據(jù)報協(xié)議C.網(wǎng)際協(xié)議D.網(wǎng)際控制報文協(xié)議11.3.1課后習題7.局域網(wǎng)的網(wǎng)絡地址,子網(wǎng)掩碼為,局域網(wǎng)絡連接其它網(wǎng)絡的網(wǎng)關地址是。主機0訪問網(wǎng)絡地址為,子網(wǎng)掩碼為的網(wǎng)絡時,其路由設置正確的是那個?()A.route
add
-net
gw
netmask
metric
1B.route
add
-net
gw
netmask
55
metric1C.route
add
-net
gw
netmask
metric
1D.route
add
default
netmask
metric
18.下列提法中,哪個選項不屬于ifconfig命令作用范圍? ()A.配置本地回環(huán)地址 B.配置網(wǎng)卡的IP地址C.激活網(wǎng)絡適配器D.加載網(wǎng)卡到內核中9.當我們與某遠程網(wǎng)絡連接不上時,就需要跟蹤路由查看,以便了解在網(wǎng)絡的什么位置出現(xiàn)了問題,滿足該目的的命令是哪個? ()A.ping B.traceroute C.netstat D.route10.子網(wǎng)號為16bit的A類地址與子網(wǎng)號為8bit的B類地址的子網(wǎng)掩碼。()A.11111111.11111111.11111111.00000000和11111111.11111111.11111111.00000000B.11111111.00000000.11111111.00000000和11111111.11111111.11111111.00000000C.11111111.00000000.00000000.00000000和11111111.00000000.00000000.00000000D.11111111.00000000.00000000.00000000和11111111.00000000.11111111.0000000011.3.2實驗:TCP/IP網(wǎng)絡設置實驗目的掌握如何在Linux下的TCP/IP網(wǎng)絡的設置學會使用命令檢測網(wǎng)絡配置實驗內容使用ifconfig命令配置網(wǎng)絡接口使用route命令加默認網(wǎng)關使用hostname命令設置主機名使用ping、netstat命令檢測配置設置系統(tǒng)啟動時自動配置網(wǎng)絡參數(shù)實驗步驟完成實驗報告思考題當無法連接遠程主機的時候,此時應該按什么順序,用什么方法,分別檢測系統(tǒng)中的哪些設置?利用ifconfig和route命令配置的IP地址、子網(wǎng)掩碼和默認網(wǎng)關等信息和利用netconfig及編輯配置文件有什么不同?第十二章ApacheWeb服務器本章學習目標⊙ Apache的安裝和簡單配置⊙ 訪問控制、認證、授權的配置⊙ Apache的日志管理⊙ 動態(tài)站點及虛擬主機的配置12.1ApacheWeb服務器概述WWW是WorldWideWeb(環(huán)球信息網(wǎng))的縮寫,也可以簡稱為Web,中文名字為“萬維網(wǎng)”。通過萬維網(wǎng),人們只要通過使用簡單的方法,就可以很迅速方便地取得豐富的信息資料。12.1.1WWW服務簡介WWW簡介WWW的發(fā)展和特點于計算機網(wǎng)絡的發(fā)展,信息的獲取變得非常及時、迅速和便捷。1993年,WWW的技術有了突破性的進展,它解決了遠程信息服務中的文字顯示、數(shù)據(jù)連接以及圖像傳遞的問題,使得WWW成為Internet上最為流行的信息傳播方式。Web服務器簡介WWW服務器,又稱為Web服務器主要功能:利用應用層提供的HTTP協(xié)議、HTML文檔格式、瀏覽器統(tǒng)一資源定位器(URL)等技術提供網(wǎng)上信息瀏覽服務。世界上常用的Web服務器:Apache,MicrosoftIISIBMWebSphereBEAWebLogicIPlanetApplicationServerOracleIAS12.1.2Apache發(fā)展史Apache音譯為阿帕奇,是北美印弟安人的一個部落,叫阿帕奇族,名字“Apache”出現(xiàn)在軟件的早期版本中,因為它是一個“補丁”服務器,來自于源代碼開放的NCSAHTTPdWeb服務器的補丁。在當前的Internet上,Apache是應用最廣泛的Web服務器。NCSAHTTPd項目終止一段時間以后,許多人為該代碼編寫了許多補丁,修補程序中的問題并添加想要的功能。該軟件的代碼隨處可見,人們可以自由使用,但是完全沒有人管理。一段時間后,BobBehlendorf建立集中存儲補丁的機構,從而誕生了Apache項目。早期的Apache服務器由ApacheGroup來維護,直到1999年6月ApacheGroup在美國德拉瓦市成立了非盈利性組織的公司,即Apache軟件基金會(ApacheSoftwareFoundation,ASF)。12.2Apache的默認配置安裝ApacheWeb服務器:可以采取RPM軟件包安裝和源碼編譯安裝兩種方式圖形界面下利用軟件包管理器來進行自動安裝,該安裝方式其實仍屬于RPM軟件包安裝。12.2.1安裝和啟動Apache使用軟件包管理器進行安裝若當前的系統(tǒng)是XWindow圖形界面,則可以使用軟件包管理器來直接安裝Apache,同時還可以安裝與其相關的一些軟件包,該方式簡單直觀。啟動進入Linux圖形界面,單擊“主菜單”—>“系統(tǒng)設置”—>“添加/刪除應用程序”,選擇“萬維網(wǎng)服務器”,并在其欄目中可以選擇安裝Apache的一些附加軟件包,如PHP解釋器、Perl解釋器、MySQL和PostgreSQL基于Apache的基本驗證模塊等等,如圖12-1所示。圖12-2
Apache服務器測試界面使用RPM軟件包進行安裝Shell環(huán)境下,可用RPM軟件包來安裝ApacheWeb服務器。安裝之前,檢查當前系統(tǒng)是否已經(jīng)安裝了Apache。
[root@localhostroot]#rpm-qhttpdchkconfig命令:自動運行Apache服務器,默認情況不自動啟動沒有安裝:Apache服務:先下載或復制RPM軟件包httpd-X.X.X…-i386.rpm到主目錄下,采用以下命令進行安裝。[…root]#rpm-ivhhttpd-X.X.X…-i386.rpm系統(tǒng)內已有Apache:升級,下載最新的RPM軟件包升級[…root]#rpm-Uvhhttpd-X.X.X…-i386.rpm源代碼編譯安裝下載Apache的源代碼包或復制到/usr/local/src目錄中采用以下步驟進行配置、編譯和安裝[…root]#cd/usr/local/src#將源碼包解壓縮[…src]#tarzxvfhttpd-2.2.4.tar.gz#顯示軟件包中的文件信息[…src]#cdhttpd-2.2.4[…h(huán)ttpd-2.2.4]#./configure--prefix=/usr/local/apache2--enable-so--with-mpm=prefork--enable-modules=”setenvifrewritedeflatevhost_aliasalias”#檢查配置信息,成功后顯示config.status:executingdefaultcommands[…h(huán)ttpd-2.2.4]#make//然后就對源碼進行編譯,會耗一段時間[…h(huán)ttpd-2.2.4]#makeinstall//安裝Apache采用源碼方式安裝Apache配置文件和相關文檔均安裝在指定的/usr/local/apache2目錄下面配置文件存放在/usr/local/apache2/conf目錄下網(wǎng)頁文件存放在/usr/local/apache2/htdocs目錄下,它是默認Web站點的根目錄日志文件存放在/usr/local/apache2/logs目錄下Apache提供的應用程序、啟動腳本等均存放在/usr/local/apache2/bin目錄中12.2.2httpd.confhttpd.conf:Apache的配置文件在Apache啟動時,自動讀取配置文件的內容。配置文件內容改變后,只有重啟httpd服務或者重新啟動Linux才會生效。整個配置文件總體上劃分為三部分:第一部分是全局環(huán)境設置第二部分是服務器的Web站點基本配置第三部分是虛擬主機段。12.2.3.htaccess配置文件.htaccess文件:Apache服務器上的一個設置文件一個文本文件:可以使用任何文本編輯器進行編寫。.htaccess文件提供了針對目錄改變配置的方法功能:設置網(wǎng)頁密碼、設置發(fā)生錯誤時出現(xiàn)的文件、改變首頁的文件名(如index.html)、禁止讀取文件名、重新導向文件、加上MIME類別、禁止列目錄下的文件等。.htaccess文件簡介在需要針對目錄改變服務器的配置,而對服務器系統(tǒng)沒有root權限時,應該使用.htaccess文件。如果服務器管理員不愿意頻繁修改配置,則可以允許用戶通過.htaccess文件自己修改配置.htaccess是一個完整的文件名上傳.htaccess文件:必須使用ASCII模式,并使用chmod命令改變權限為:644(rw-r--r--)。每一個放置.htaccess的目錄和其子目錄都會被.htaccess影響。啟用.htaccess文件(1) 設置文件名稱必須保證在主配置文件中包含如下的配置語句:AccessFileName.htaccess<Files~"^\.htaccess">Orderallow,denyDenyfromall</Files>(2)控制在.htaccess文件中可以使用的指令組要控制在.htaccess文件中可以使用的指令組,需要在主配置文件中使用AllowOverride指令。如書上表12-2所示,列出了可以在AllowOverride指令所使用的指令組。當在主配置文件中配置了對.htaccess文件的啟用和控制之后,接下來就可以在需要覆蓋主配置文件的目錄下生成.htaccess文件。.htaccess文件中可以使用的配置指令取決于主配置文件中AllowOverride指令的設置。圖12-3 未使用.htaccess文件圖12-4 使用.htaccess文件12.2.4配置Web站點為了讓本地計算機上擁有帳戶的每個用戶都能建立自己單獨的Web站點可以修改主配置文件httpd.conf來為每個用戶配置相應的站點。圖12-5 個人Web站點配置12.3Apache的高級配置Apache提供三個指令配置訪問控制:allow:定義允許訪問列表deny:定義拒絕訪問列表Order:指定允許訪問與拒絕訪問的順序訪問控制指令在主配置文件的容器中均生效,如Location容器,Directory容器,F(xiàn)iles容器等。12.3.1訪問控制圖12-6 未配置訪問控制圖12-7 已配置訪問控制12.3.2認證和授權認證配置指令如表12-3所示,可用于主配置文件中的Directory容器,或存在于.htaccess文件中。認證配置指令語法說明AuthNameAuthName
區(qū)域名稱定義受保護區(qū)域名稱AuthTypeAuthTypeBasic或Digest使用的認證方式AuthGroupFileAuthGroupFile
文件名認證組文件的位置AuthUserFileAuthUserFile
文件名認證口令文件的位置授權配置配置認證后,還需要給授權給指定的認證組或用戶。授權的指令為require,使用格式如表12-4所示。命令格式說明requireuser用戶名[用戶名]授權給一個或多個用戶requiregroup組名[組名]授權給一個或多個組requirevalid-user授權給認證口令文件中的所有用戶管理認證文件(1)創(chuàng)建新的認證口令文件:htpasswd-c認證口令文件名用戶名該命令在創(chuàng)建認證口令文件的同時,會向其中添加一條用戶記錄。(2)修改認證口令文件:htpasswd
認證口令文件名用戶名該命令可以添加或修改認證口令文件中的記錄htpasswd命令并沒有提供刪除用戶記錄的參數(shù),可以手動修改認證口令文件,刪除相應的用戶記錄。Apache沒有提供創(chuàng)建認證組文件的命令,可以手動創(chuàng)建該文本文件,格式如下:組名:用戶名用戶名…在認證組文件中指定的用戶名必須先添加到認證口令文件中。圖12-8認證授權配置應用12.3.3頁面重定向某站點進行目錄結構更新時,未知這一變化的用戶再次使用原來的URL進行訪問,會出現(xiàn)“頁面不存在”的錯誤信息,這時就要配置頁面重定向,來讓用戶可以繼續(xù)使用原來的URL進行訪問,并且可以告知用戶這一變化。頁面重定向在httpd.conf中配置命令為:redirect[錯誤響應代碼]用戶請求的URL[重定向的URL]12.4Apache日志管理Apache日志功能:內建記錄服務器活動的功能。如果Apache的安裝方式是默認安裝,服務器一運行就會有兩個日志文件生成。這兩個文件是access_log和error_log。訪問日志:access_log記錄了所有對Web服務器的訪問活動12.4.1Apache日志訪問12.4.2日志配置訪問日志文件的位置實際上是一個配置選項。檢查httpd.conf配置文件,可以看到該文件中有如下這行內容:
CustomLog/usr/local/apache/logs/access_logcommonCustomLog指令:指定了保存日志文件的具體位置以及日志的格式。指令中的路徑:是日志文件的路徑。配置訪問日志錯誤日志Apache的標準日志。位置和內容錯誤日志:文件名字error_log,其位置可以通過ErrorLog指令設置:
ErrorLoglogs/error.logLogLevel指令設置:日志文件記錄信息級別的高低控制日志文件記錄信息的數(shù)量和類型定義日志格式使公共日志格式本身也重新用定制日志格式定義。定制日志文件的格式涉及到兩個指令,即LogFormat指令和CustomLog指令
12.5虛擬主機“虛擬主機”:在一個機器上運行多個網(wǎng)站虛擬主機可以是“基于IP”的,也可以是“基于域名”基于IP的虛擬主機使用連接的IP地址來決定相應的虛擬主機?;谟蛎奶摂M主機相對比較簡單12.5.1虛擬主機概述12.5.2基于IP地址的虛擬主機每個基于IP的虛擬主機必須擁有不同的IP地址。通過配備多個真實的物理網(wǎng)絡接口來達到這一要求使用虛擬界面來達到這一要求,這種功能一般被稱作“IP別名”用ifconfig命令來進行設置。圖12-9
IP相同、端口號不同(81)的虛擬主機圖12-10
IP相同、端口號不同(82)的虛擬主機圖12-11端口號相同、IP地址不同的虛擬主機圖12-12端口號相同、IP地址不同的虛擬主機12.5.3基于域名的虛擬主機基于域名的虛擬主機,可以讓多個域名對應一個Web服務器,其配置相對比較簡單。圖12-13基于域名的虛擬主機12.6動態(tài)站點簡介CGI(公共網(wǎng)關接口,CommonGatewayInterface)定義了網(wǎng)站服務器與外部內容協(xié)商程序之間交互的方法通常是指CGI程序或者CGI腳本,是在網(wǎng)站上實現(xiàn)動態(tài)頁面的最簡單而常用的方法。12.6.1基于CGI的動態(tài)站點讓CGI程序能正常運作,配置Apache以允許CGI的執(zhí)行,方法:(1)ScriptAliasScriptAlias指令:使Apache允許執(zhí)行一個特定目錄中的CGI程序。當客戶端請求此特定目錄中的資源時,Apache假定其中文件都是CGI程序并試圖運行。ScriptAlias指令形如:ScriptAlias/cgi-bin//usr/local/apache/cgi-bin/(2)用Options顯式地允許CGI的執(zhí)行Options指令:顯式地允許特定目錄中CGI的執(zhí)行:<Directory/usr/local/apache/htdocs/somedir>Options+ExecCGI</Directory>上述指令使Apache允許CGI文件的執(zhí)行。AddHandler指令:告訴服務器所有帶有cgi或pl后綴的文件是CGI程序:
AddHandlercgi-scriptcgipl12.6.2基于PHP的動態(tài)站點PHP:(HypertextPreprocessor)是一個基于服務端來創(chuàng)建動態(tài)網(wǎng)站的腳本語言,可以用PHP和HTML生成網(wǎng)站主頁。PHP開放源碼和跨越平臺,PHP可以運行在WindowsNT系列和多種版本的UNIX上在Apache環(huán)境下安裝PHP的時候,三種安裝模式:靜態(tài)模塊、動態(tài)模塊(DSO)和CGI。進行安裝:在RedHatLinux9上安裝PHP,可以通過“添加/刪除程序”—>“服務器”—>“萬維網(wǎng)服務器”
。若系統(tǒng)中的ApacheWeb服務器是通過源碼編譯安裝的,則還可以通過源碼編譯的方式來把PHP安裝成DSO。圖12-14
PHP測試頁面12.6.3基于JSP的動態(tài)站點JSP:JavaServerPages由SunMicrosystems公司倡導、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術標準。在傳統(tǒng)的網(wǎng)頁HTML文件中加入Java程序片段和JSP標記,就構成了JSP網(wǎng)頁,Web服務器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序片段,然后將執(zhí)行結果以HTML格式返回給客戶。JSP構建的網(wǎng)站操作系統(tǒng)可以選用Unix、Linux或Windows平臺12.7課后習題與實驗1.檢查是否安裝了Apache軟件包的指令是
。2.Apache的主要配置文件是
。3.用來設定當服務器產生錯誤時,顯示在瀏覽器上的管理員Email的屬性是
。4.如果在配置文件中有如下指令:
ServerRootwww ErrorLoglogfile那么,此服務器的錯誤日志的存放路徑是
。5.為代理服務器指定的缺省域名的語句是
。12.7.1課后習題12.7課后習題與實驗6. Apache支持
種類型的虛擬主機,它們分別是
。7. 解釋在配置文件中如下的指令段:
<Directory/home/httpd/cgi-bin> AllowOverrideNone OptionsExecCGI </Directory>8. 什么是“頁面重定向”技術?9. Alias指令與ScriptAlias指令的區(qū)別是什么?10. 解釋指令Denyfrom/的功能。如果要禁止來自的訪問,應如何添加指令?12.7.1課后習題12.7.2實驗:在Linux下配置
ApacheWebServer實驗目的掌握Apache的基本配置啟動和停止Apache為系統(tǒng)用戶配置自己的站點掌握架設Web服務器的方法實驗內容安裝運行apache配置apache,建立普通的Web站點配置apache,實現(xiàn)用戶認證和訪問控制配置用戶的Web站點實驗步驟完成實驗報告思考題在什么情況下需要訪問授權與認證控制?將實驗中的.htaccess文件方式修改為在主配置文件中的<Directory>方式。在配置用戶認證的時候,如果密碼文件中包含多個用戶,如何設置只允許其中的某幾個用戶訪問一個認證區(qū)域?第十三章
文件傳輸服務器
本章學習目標⊙ FTP的相關概念⊙ FTP服務配置⊙ FTP客戶程序的使用13.1FTP概述
13.1.1FTP簡介FTP:FileTransferProtocol(文件傳輸協(xié)議)用來在兩臺計算機之間互相傳送文件。FTP服務:為Internet最古老的服務之一。FTP是一個8位的客戶端
——
服務器協(xié)議,能操作任何類型的文件而不需要進一步處理。FTP有著極高的延時.FTP實現(xiàn)的目標:
促進文件的共享(計算機程序或數(shù)據(jù))鼓勵間接或者隱式的使用遠程計算機向用戶屏蔽不同主機中各種文件存儲系統(tǒng)的細節(jié)可靠和高效的傳輸數(shù)據(jù)缺點:密碼和文件內容都使用明文傳輸,可能產生不希望發(fā)生的竊聽。因為必需開放一個隨機的端口以建立連接,當防火墻存在時,客戶端很難過濾處于主動模式下的FTP流量。通過使用被動模式的FTP得到了很大解決。服務器可能會被告知連接一個第三方計算機的保留端口。13.1.2Linux下的FTP服務器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年外貿實習業(yè)務員工作計劃樣本(三篇)
- 2024年土地租賃建房合同范本(三篇)
- 2024年幼兒園大班配班老師的個人工作計劃范例(三篇)
- 2024年小學衛(wèi)生室工作計劃模版(二篇)
- 2024年外貿業(yè)務員工作計劃(四篇)
- 2024年國培個人研修計劃例文(二篇)
- 2024年幼兒園小班家長會計劃范例(七篇)
- 2024年工會工作總結例文(二篇)
- 2024年危重患者護理管理制度范本(五篇)
- 2024年地下車位租賃合同標準模板(二篇)
- 自考《學前教育研究方法》全套課件(完整版)
- 無痛宮腔鏡檢查日間手術臨床路徑及表單
- 企業(yè)、事業(yè)專職消防隊訓練內容及操作規(guī)程
- 中考課外古詩詞鑒賞
- 語言行為法簡介(課堂PPT)
- 完形填空20篇(附答案解析)
- GB_T5235-2021 加工鎳及鎳合金牌號和化學成分(高清最新版)
- 【課件】高一上學期英語人教版(2019)必修第一冊Unit 2 Grammar 現(xiàn)在進行時-
- 甲骨文軟件操作手冊4操作手冊
- 寧波大學機械原理考研歷年真題(共23頁)
- 新版報關單格式
評論
0/150
提交評論