linux簡易教程
linux 系統啟動過程過程可以分為5個階段:
核心的引導。
當計算機開啟電源後,首先是bios開機自檢,按照bios中設定的啟動裝置(通常是硬碟)來啟動。
作業系統接管硬體以後,首先讀入 /boot 目錄下的核心檔案。(/boot分割槽就是作業系統的核心及在引導過程中使用的檔案)
執行 init。
init 程序是系統所有程序的起點,你可以把它比擬成系統所有程序的老祖宗,沒有這個程序,系統中任何程序都不會啟動。
init 程式首先是需要讀取配置檔案 /etc/inittab。
執行級別
許多程式需要開機啟動。它們在windows叫做"服務"(service),在linux就叫做"守護程序"(daemon)。
init程序的一大任務,就是去執行這些開機啟動的程式。
但是,不同的場合需要啟動不同的程式,比如用作伺服器時,需要啟動apache,用作桌面就不需要。
linux允許為不同的場合,分配不同的開機啟動程式,這就叫做"執行級別"(runlevel)。也就是說,啟動時根據"執行級別",確定要執行哪些程式。
系統初始化。
在init的配置檔案中有這麼一行: si::sysinit:/etc/rc.d/rc.sysinit 它呼叫執行了/etc/rc.d/rc.sysinit,而rc.sysinit是乙個bash shell的指令碼,它主要是完成一些系統初始化的工作,rc.sysinit是每乙個執行級別都要首先執行的重要指令碼。
它主要完成的工作有:啟用交換分割槽,檢查磁碟,載入硬體模組以及其它一些需要優先執行任務。
建立終端 。
rc執行完畢後,返回init。這時基本系統環境已經設定好了,各種守護程序也已經啟動了。
init接下來會開啟6個終端,以便使用者登入系統。
使用者登入系統。
一般來說,使用者的登入方式有三種:
(1)命令列登入
(2)ssh登入
(3)圖形介面登入
linux 的賬號驗證程式是 login,login 會接收 mingetty 傳來的使用者名稱作為使用者名稱引數。
然後 login 會對使用者名稱進行分析:如果使用者名稱不是 root,且存在 /etc/nologin 檔案,login 將輸出 nologin 檔案的內容,然後退出。
/bin:
bin是binary的縮寫, 這個目錄存放著最經常使用的命令。
/boot:
這裡存放的是啟動linux時使用的一些核心檔案,包括一些連線檔案以及映象檔案。
/dev :
dev是device(裝置)的縮寫, 該目錄下存放的是linux的外部裝置,在linux中訪問裝置的方式和訪問檔案的方式是相同的。
/etc:
這個目錄用來存放所有的系統管理所需要的配置檔案和子目錄。
/home:
使用者的主目錄,在linux中,每個使用者都有乙個自己的目錄,一般該目錄名是以使用者的賬號命名的。
/lib:
這個目錄裡存放著系統最基本的動態連線共享庫,其作用類似於windows裡的dll檔案。幾乎所有的應用程式都需要用到這些共享庫。
/lost+found:
這個目錄一般情況下是空的,當系統非法關機後,這裡就存放了一些檔案。
/media:
linux系統會自動識別一些裝置,例如u盤、光碟機等等,當識別後,linux會把識別的裝置掛載到這個目錄下。
/mnt:
系統提供該目錄是為了讓使用者臨時掛載別的檔案系統的,我們可以將光碟機掛載在/mnt/上,然後進入該目錄就可以檢視光碟機裡的內容了。
/opt:
這是給主機額外安裝軟體所擺放的目錄。比如你安裝乙個oracle資料庫則就可以放到這個目錄下。預設是空的。
/proc:
這個目錄是乙個虛擬的目錄,它是系統記憶體的對映,我們可以通過直接訪問這個目錄來獲取系統資訊。
這個目錄的內容不在硬碟上而是在記憶體裡,我們也可以直接修改裡面的某些檔案,比如可以通過下面的命令來遮蔽主機的ping命令,使別人無法ping你的機器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/root:
該目錄為系統管理員,也稱作超級許可權者的使用者主目錄。
/sbin:
s就是super user的意思,這裡存放的是系統管理員使用的系統管理程式。
/selinux:
這個目錄是redhat/centos所特有的目錄,selinux是乙個安全機制,類似於windows的防火牆,但是這套機制比較複雜,這個目錄就是存放selinux相關的檔案的。
/srv:
該目錄存放一些服務啟動之後需要提取的資料。
/sys:
這是linux2.6核心的乙個很大的變化。該目錄下安裝了2.6核心中新出現的乙個檔案系統 sysfs 。
sysfs檔案系統整合了下面3種檔案系統的資訊:針對程序資訊的proc檔案系統、針對裝置的devfs檔案系統以及針對偽終端的devpts檔案系統。
該檔案系統是核心裝置樹的乙個直觀反映。
當乙個核心物件被建立的時候,對應的檔案和目錄也在核心物件子系統中被建立。
/tmp:
這個目錄是用來存放一些臨時檔案的。
/usr:
這是乙個非常重要的目錄,使用者的很多應用程式和檔案都放在這個目錄下,類似於windows下的program files目錄。
/usr/bin:
系統使用者使用的應用程式。
/usr/sbin:
超級使用者使用的比較高階的管理程式和系統守護程式。
/usr/src:
核心源**預設的放置目錄。
/var:
這個目錄中存放著在不斷擴充著的東西,我們習慣將那些經常被修改的目錄放在這個目錄下。包括各種日誌檔案。
/run:
是乙個臨時檔案系統,儲存系統啟動以來的資訊。當系統重啟時,這個目錄下的檔案應該被刪掉或清除。如果你的系統上有 /var/run 目錄,應該讓它指向 run。
在 linux 系統中,有幾個目錄是比較重要的,平時需要注意不要誤刪除或者隨意更改內部檔案。
/etc: 上邊也提到了,這個是系統中的配置檔案,如果你更改了該目錄下的某個檔案可能會導致系統不能啟動。
/bin, /sbin, /usr/bin, /usr/sbin: 這是系統預設的執行檔案的放置目錄,比如 ls 就是在/bin/ls 目錄下的。
值得提出的是,/bin, /usr/bin 是給系統使用者使用的指令(除root外的通使用者),而/sbin, /usr/sbin 則是給root使用的指令。
/var: 這是乙個非常重要的目錄,系統上跑了很多程式,那麼每個程式都會有相應的日誌產生,而這些日誌就被記錄到這個目錄下,具體在/var/log 目錄下,另外mail的預設放置也是在這裡。
linux中第乙個字元代表這個檔案是目錄、檔案或鏈結檔案等等。
當為[ d ]則是目錄
當為[ - ]則是檔案;
若是[ l ]則表示為鏈結文件(link file);
若是[ b ]則表示為裝置檔案裡面的可供儲存的介面裝置(可隨機訪問裝置);
若是[ c ]則表示為裝置檔案裡面的串列埠裝置,例如鍵盤、滑鼠(一次性讀取裝置)。
處理目錄的常用命令
幾個常見的處理目錄的命令:
ls: 列出目錄
cd:切換目錄
pwd:顯示目前的目錄
mkdir:建立乙個新的目錄
rmdir:刪除乙個空的目錄
cp: 複製檔案或目錄
rm: 移除檔案或目錄
mv: 移動檔案與目錄,或修改檔案與目錄的名稱
你可以使用 man [命令] 來檢視各個命令的使用文件,如 :man cp。
linux系統中使用以下命令來檢視檔案的內容:
cat 由第一行開始顯示檔案內容
tac 從最後一行開始顯示,可以看出 tac 是 cat 的倒著寫!
nl 顯示的時候,順道輸出行號!
more 一頁一頁的顯示檔案內容
less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!
head 只看頭幾行
tail 只看尾巴幾行
微信小程式入門系列簡易教程
微信小程式入門系列簡易教程。自1月9日微信小程式 以下簡稱小程式 發布以來,迅速火遍朋友圈,我也前後看了很多關於小程式的文章,自己也嘗試著做了一點自己的小程式,最後的感受也讓我加深了之前在某篇文章上看到的一句話 我們可能高估了小程式在短時間內的威力,同時也很可能低估了他長時間的潛力 到現在我覺得我們...
Vi 簡易教程
vi file1 file2 此時,您會發現您面對如下視窗 圖 4.4.vim 開始 您現在是在開啟的第乙個檔案的最前面,並處於 命令模式 在此模式下,您不能往檔案中插入文字。要插入文字,您需要先切換到 插入模式 以下是一些插入文字的快捷方式 在插入模式中,您會在螢幕底部看到 插入 字串 提示您所處...
Vim簡易教程
vim時linux內建的一款可定製的文字編輯器,使用者可以根據自己的需求對其進行功能的補充。要對文字內容進行編輯,需要按下 i,i,o,o,a,a,r,r 這些鍵中的任意乙個,此時vi編輯器將處於編輯狀態,使用者便可對文字進行需要的修改。下面對這個開啟編輯模式的鍵進行簡單的介紹 命令含義 i進入編輯...