Linux自學筆記 1

2021-09-27 05:24:45 字數 3173 閱讀 2120

linux相關

linux 創始人是linus torvalds。

linux的發行版說簡單點就是將linux核心與應用軟體做乙個打包。較知名的發行版有:ubuntu、redhat、centos、debain、fedora、suse、opensuse、turbolinux、bluepoint、redflag、xterm、slackware等。

雖然linux和微軟的windows一樣同為作業系統,但是它們有乙個很大的區別就是windows作業系統的圖形介面是和核心一體的,俗稱微核心,而linux作業系統圖形介面就像乙個軟體一樣,和核心並不是一體的。

linux的安裝

選擇使用者自定義然後開始按照下述進行分割槽

/boot 100m 、/swap分割槽為記憶體的兩倍,如果大於等於4只需4g即可、/分割槽20g、剩餘的給/data

/boot 分割槽是系統啟動所需要的檔案,就跟windows的c盤中的windows 目錄類似,這個分割槽中的檔案並不大,只需要100m足夠。swap分割槽是交換分割槽,當記憶體不夠時,系統會把這部分空間當記憶體使用。/分割槽,其實就是乙個根目錄。/data 這個分割槽是我們自定義的,就是專門放資料的分割槽。

如果你安裝的是虛擬機器,並且你只有8g的磁碟空間,那麼我建議你這樣分割槽:

a) /boot 100m

b) swap 記憶體的2倍

c) / 全部剩餘空間

可以在use a boot loader password 前面打勾,這個選項的作用是,給boot loader 加乙個密碼,為了防止有人通過光碟進入單使用者模式修改root密碼

選擇要安裝的軟體包,可以自定義安裝,建議不安裝圖形化介面。

linux的啟動

linux系統的啟動過程大體上可分為五部分:核心的引導;執行init;系統初始化;建立終端 ;使用者登入系統。

a) 核心引導

當計算機開啟電源後,首先是bios開機自檢,按照bios中設定的啟動裝置(通常是硬碟)來啟動。緊接著由啟動裝置上的grub程式開始引導linux,當引導程式成功完成引導任務後,linux從它們手中接管了cpu的控制權,然後cpu就開始執行linux的核心映象**,開始了linux啟動過程。也就是所謂的核心引導開始了,在核心引導過程中其實是很複雜的,我們就當它是乙個黑匣子,反正是linux核心做了一些列工作,最後核心呼叫載入了init程式,至此核心引導的工作就完成了。交給了下乙個主角init。

b) 執行init

init程序是系統所有程序的起點,你可以把它比擬成系統所有程序的老祖宗,沒有這個程序,系統中任何程序都不會啟動。init 程式首先是需要讀取配置檔案 /etc/inittab。inittab是乙個不可執行的文字檔案,它有若干行指令所組成。

initttab 格式 id:runlevel:action:process 

c) 系統初始化

在init的配置檔案中有這麼一行: si::sysinit:/etc/rc.d/rc.sysinit 它呼叫執行了/etc/rc.d/rc.sysinit,而rc.sysinit是乙個bash shell的指令碼,它主要是完成一些系統初始化的工作,rc.sysinit是每乙個執行級別都要首先執行的重要指令碼。它主要完成的工作有:啟用交換分割槽,檢查磁碟,載入硬體模組以及其它一些需要優先執行任務。

d) 建立終端

rc執行完畢後,返回init。這時基本系統環境已經設定好了,各種守護程序也已經啟動了。init接下來會開啟6個終端,以便使用者登入系統。在inittab中的以下6行就是定義了6個終端:

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的執行級別中都將以respawn方式執行mingetty程式,mingetty程式能開啟終端、設定模式。同時它會顯示乙個文字登入介面,這個介面就是我們經常看到的登入介面,在這個登入介面中會提示使用者輸入使用者名稱,而使用者輸入的使用者將作為引數傳給login程式來驗

證使用者的身份。

e) 使用者登入系統

對於執行級別為5的圖形方式使用者來說,他們的登入是通過乙個圖形化的登入介面。登入成功後可以直接進入kde、gnome等視窗管理器。而本文主要講的還是文字方式登入的情況:當我們看到mingetty的登入介面時,我們就可以輸入使用者名稱和密碼來登入系統了。

linux的賬號驗證程式是login,login會接收mingetty傳來的使用者名稱作為使用者名稱引數。然後login會對使用者名稱進行分析:如果使用者名稱不是root,且存在/etc/nologin檔案,login將輸出nologin檔案的內容,然後退出。這通常用來系統維護時防止非root使用者登入。只有/etc/securetty中登記了的終端才允許root使用者登入,如果不存在這個檔案,則root可以在任何終端上登入。/etc/usertty檔案用於對使用者作出附加訪問限制,如果不存在這個檔案,則沒有其他限制。

login程式成功後,會向對應的終端在輸出最近一次登入的資訊(在/var/log/lastlog中有記錄),並檢查使用者是否有新郵件(在/usr/spool/mail/的對應使用者名稱目錄下)。然後開始設定各種環境變數:對於bash來說,系統首先尋找/etc/profile指令碼檔案,並執行它;然後如果使用者的主目錄中存在.bash_profile檔案,就執行它,在這些檔案中又可能呼叫了其它配置檔案,所有的配置檔案執行後後,各種環境變數也設好了,這時會出現大家熟悉的命令列提示符,到此整個啟動過程就結束了。 

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

linux預設提供了六個命令視窗終端機讓我們來登入。預設我們登入的就是第乙個視窗,也就是tty1,這個六個視窗分別為tty1,tty2 … tty6,你可以按下ctrl + alt + f1 ~ f6 來切換它們。如果你安裝了圖形介面,預設情況下是進入圖形介面的,此時你就可以按ctrl + alt + f1 ~ f6來進入其中乙個命令視窗介面。當你進入命令視窗介面後再返回圖形介面只要按下ctrl + alt + f7 就回來了。如果你用的vmware 虛擬機器,命令視窗切換的快捷鍵為 alt + space + f1~f6. 如果你在圖形介面下請按alt + shift + ctrl + f1~f6 切換至命令視窗。

shell自學筆記1

shell自學筆記 1.給檔案改名,簡單好記可用 還可用rename mv 原檔名 新檔名 2.echo e 表示開啟開啟反斜槓esc轉義 echo c 關閉自動換行 echo n 換行 九九乘法表 巢狀迴圈 bin bash for i 1 i 9 i do for j 1 j i j dolet...

Flask自學筆記(1)

命令 說明注意 pip install pipenv 從pypi 上安裝pipenv pipenv install 建立虛擬環境 虛擬環境資料夾在路徑c users 使用者名稱 virtualenvs 目錄下 pipenv shell 啟用 進入 虛擬環境 pip list 檢視當前環境安裝包 在虛...

Python自學筆記 1

python 是不是乙個好選擇 如果你從未有過程式設計經驗,無論你是想將程式設計作為業餘愛好,還是只想體驗程式設計思維,或者是想以此為開端今後從事軟體開發工作,從 python 入手學習程式設計都是個 錯的選擇。對於新手而言 python 的優勢有 有些讀者在學習一門新的程式語言時,往往會很謹慎,費...