好久沒有發博客了,接下來會把暑假學習的陸陸續續整理到博客上來,原本是想先整理python的,但剛好手頭在學這個,就先整理了。
這篇博客時Linux學習的開篇,以前都是用到什么命令就了解一下,這周系統學習了一下常用的命令和相關知識,發現解決了很多之前的困惑,先從Linux的分區和安裝的概念說起。
Linux安裝前要經歷四個步驟,分別是:分區,格式化,定義設備文件名,掛載
1.分區
Linux的分區有三種:主分區,擴展分區和邏輯分區。
主分區最多只能有四個;
擴展分區最多有一個,主分區加擴展分區最多有四個,擴展分區不能寫入數據只能包含邏輯分區;
邏輯分區可以寫入數據和格式化。
可以用一個櫃子來理解這個問題:

一個大櫃子分為許多個小櫃子,其中1,2,3櫃子屬於主分區,4櫃屬於擴展分區,擴展分區是指一塊被分成很多塊區域的總和,但它其實並沒有空間,只是一個統稱。
而這塊擴展分區所分的幾個小分區就是邏輯分區,也就是圖中的5,6號櫃子。
2.格式化(高級格式化)
又稱邏輯邏輯格式化,是根據用戶選定的文件系統(Linux的文件系統:EXT2/EXT3/EXT4(CentOS6.3默認)),在磁盤的特定區域寫入特定數據,在分區中划出一片用於存放文件分配表/目錄表等用於文件管理的磁盤空間。
再借用櫃子的比喻,就是把一個櫃子分為一個個等大的小個子,再EXT4中每個數據塊默認大小是4KB,這時如果有個10KB的文件要寫入,就需要分配三個數據塊,多余的2KB不存數據,且這三個數據塊分布在櫃子里的隨機小格子中而不是連續排列的。
磁盤碎片整理:把保存同一個文件的數據塊盡量放在一起。
每個文件都有一個i節點號(inode號),通過它可以建立inode列表,查找文件時通過尋找inode號在列表中找到文件條款,從而知道文件保存在哪幾個數據塊,從而打開數據塊拼湊成完整文件。
格式化的目的不是清空數據,而是寫入文件系統。
3.設備文件名
先介紹硬件設備文件名

在這里需要注意,在Linux中所有硬件都是文件,dev目錄下中所有文件都是硬件文件
在定義設備文件名時定義的是分區設備文件名:/dev/sda1代表第一個SATA硬盤的第一個分區
現在使用的硬盤一般都是SATA硬盤

4.掛載
在Windows中掛載被稱為分配盤符,而Windows中的盤符在Linux中成為掛載點
在Linux中掛載時
必須分區的有:
/ (根分區)
swap分區 (交換分區,不超過內存2倍)
推薦分區:
/boot (啟動分區,200M)
這里可以發現Linux與Windows不同的特點,Linux可以給根分區目錄下的子目錄單獨分配硬盤空間,比如給根目錄 / 分配sda1分區,還可以給根目錄下的 /home 單獨分配分區,這樣 /home 目錄雖然是根目錄的子目錄,卻單獨具有存放空間。
這里把以上四點總結如下:

順便在這里提幾點需要注意的問題:
1.Linux中所有內容以文件形式保存,沒有寫入配置文件的都是在內存中臨時生效。
2.Linux區分大小寫
3.Linux不以擴展名區分文件類型,壓縮文件通過擴展名可以區分壓縮類型
4.Linux所有的存儲設備都必須掛載后用戶才能使用(即Windows中分配盤符)
5.Windows下的程序不能直接在Linux中安裝和運行
再介紹一下遠程登陸管理工具,在管理服務器的時候比較方便,我使用的是Xshell,在虛擬機也可以使用它連接,只要在虛擬機使用NAT或橋接模式,建立一個與本機同網段的網卡,就可以使用Xshell連接自己設置的ip地址從而操作虛擬機。