原创 Linux 通用塊設備層基礎之buffer_head

1. 塊設備 Linux 系統中能夠隨機訪問的數據片(chunk)的設備稱爲塊設備,這些數據片稱爲片。而字符設備是按照字符流的方式有序訪問。常見的塊設備如硬盤,CD-ROM,而字符設備主要有串口和鍵盤。塊設備最小可尋址的單元稱爲扇區,通常

原创 Linux shell高級編程(上)

1. 概述 在前面的章節中,我們講解了shell腳本的基本編程,包括結構化命令,讀取用戶輸入和測試命令。而這篇文章主要是描述shell腳本的高級編程部分,包括創建函數,流式編輯器sed和gawk的基本用法。     2. 函數部分   (

原创 Linux網絡編程之IPv6

1.IPv6特點 我們已經學習過了流式套接字(SOCK_STREAM),數據報套接字(SOCK_DGRAM)和原始套接字(SOCK_RAWM),其中原始套接字的功能十分強大,能夠傳送自定義的數據包,偵聽網絡上的數據,拒絕服務攻擊,發送I

原创 Linux VFS相關結構體

1. 概述 Linux 虛擬文件系統是建立在具體文件系統之上,其包括幾種主要的對象,分別是超級塊對象,目錄項對象,索引節點對象,與進程相關的文件對象,安裝點對象,文件系統類型對象。在VFS中,多個文件系統可以被安裝在同一個目錄,例如/de

原创 Linux Shell基本編程(下)

1. 結構化命令 (1)if-then語句 if command then commands fi 示例:   #!/bin/bash #testing multiple commands in the then section tes

原创 Linux shell應用2-自動下載文件

1. 概述 Linux強大的命令行,能夠完成各種不同的功能。然而,如果只是無休止的輸入命令來完成功能,那麼就太有點費事了。那麼怎麼能夠解決這個問題了? Linux shell腳本給我們提供了答案。通過shell編程可以把命令進行組合,去自

原创 Linux shell基本編程(上)

1.概述 Linux Shell是用戶與Linux內核交互的接口,通過Shell腳本可以執行很多複雜的功能。Shell腳本對於Linux系統管理員提供很好的幫助,能夠自動化執行一些例行的管理任務。也能夠監控系統數據和數據文件到爲上級生成報

原创 Linux 網絡編程之UDP

1.介紹 UDP協議是無連接的,不可靠傳輸的協議. 服務器與客戶端的交互不需要建立連接,沒有流量控制的功能。與TCP一樣,它也是傳輸層協議,通信過程中需要IP地址與端口號。使用UDP進行程序設計包括服務器與客戶端,下面介紹一下服務器與客戶

原创 Linux shell編程之正則表達式

1. 概述 正則表達式是用來篩選文本的模式模板。將正則表達式同數據相匹配,如果數據與模式一致,那麼就接受處理,如果不一致,就不接受處理。 2. 正則表達式的類型 基本的BRE引擎: (1)純文本 用標準的文本匹配來處理數據。 如:   [

原创 Linux Shell 高級編程(下)

1.概述 在前面的章節中,我們已經介紹了shell結構化命令,函數用法,正則表達式以及sed,gawk的基本用法,在這裏,主要介紹一下sed和awk的高級用法。sed是流編輯器,具有速度快的優點。sed 每次處理一行數據,在每一行數據上執

原创 Linux 網絡配置

1. 介紹 Linux 網絡管理主要涉及到一些配置文件和一些網絡配置命令,熟悉這些文件和命令對於配置Linux網絡十分重要。 在本文中,主要介紹一下幾個重要的網絡配置文件和網絡配置命令。 2. 網絡配置文件 (1)/etc/hosts  

原创 Linux網絡編程之簡單併發服務器

1.概念 與前面介紹的循環服務器不同,併發服務器對服務請求併發處理。而循環服務器只能夠一個一個的處理客戶端的請求,顯然效率很低. 併發服務器通過建立多個子進程來實現對請求的併發處理,但是由於不清楚請求客戶端的數目,因此很難確定子進程的數目

原创 Linux Samba服務器架構

1.概述 在同一網絡中,爲了更加合理的利用網絡資源共享,經常需要共享打印機與文件,在網絡中同時存在Linux與Windows主機時,要藉助於Samba服務來共享資源。該服務主要用於Linux系統與Windows系統之間共享資源。 Samb

原创 Linux網絡編程之循環服務器

1.介紹 Linux網絡循環服務器是指逐個處理客戶端的連接,處理完一個連接後再處理下一個連接,是一個串行處理的方式,比較適合時間服務器,DHCP服務器.對於TCP服務器來說,主要阻塞在accept函數,等待客戶端的連接。而對於UDP服務器

原创 Linux shell應用1-自動配置網絡

1. 概述 Linux shell給我們提供了很多有用的命令,利用這些命令,能夠自動的完成許多複雜的任務。如察看每個用戶所佔用的磁盤容量,CPU負載及內存情況,自動管理網絡,定時下載等功能。而這篇文章中主要是介紹一下,利用腳本來實現自動配