NMG
2014/10/20
前情提要

Unix
Linux
Unix Like
Linux distribution
-Linus Torvalds-
前情提要
GNU GPL


前情提要
nano / vim 編輯器
gcc *.c / g++ *.cpp
"Hello World"
Linux Kernel
User

Linux Kernel
Linux distribution =
Linux kernel + Free Software
+ Software + Tools + 可完整安裝流程

Linux Kernel
核心釋出時的版本定義為:
2.6.18-92.e15
主版本.次版本.釋出次數-修改版本
奇數(development發展中版本)
- 2.5.XX
偶數(stable穩定版本)
- 2.6.XX

硬碟介面
IDE
SATA
...

硬碟介面
IDE


硬碟介面
SATA


硬碟介面
在Linux系統中
每個裝置
都被當成一個檔案來對待
硬碟介面

硬碟介面
IDE : 固定
/dev/hd[a-d]
IDE \ Jumper
IDE1(Primary)
IDE2(Secondary)
Master Slave
/dev/hda /dev/hda
/dev/hda /dev/hda
硬碟介面
SATA :根據Linux核心偵測到磁碟的順序
/dev/sd[a-p]
SATA/USB/SCSI等磁碟介面都是使用SCSI模組來驅動
硬碟介面-例題1
/dev/hdc
假設你的主機僅有一顆IDE介面的磁碟
而這一顆磁碟接在IDE2的Master上面
請問他在Linux裡面的裝置檔名為何?
硬碟介面-例題2
假設主機板上有六個SATA插槽
你有兩個SATA硬碟和一個USB
將硬碟分別插在第一個(SATA1)
和第五個(SATA5)插槽
請問這三個裝置在Linux底下檔名為?
SATA1插槽:/dev/sda
SATA5插槽:/dev/sdb
USB:/dev/sdc
USB是開機完成後才讀取到的。
硬碟組成

磁碟
中二★煞氣第零軌第零面
第一個磁區
總共512bytes
-MBR(Master Boot Record) 446bytes
-分割表(partition table) 64bytes
磁碟
MBR(主要開機紀錄區)
Boot Loader(開機管理程式)
-提供選單
-載入核心檔案
-轉交其他loader
磁碟
開機流程
BIOS (Basic I/O System)
-載入CMOS晶片的資料
MBR
-Boot Loader
Kernel
磁碟分割
目的
資料的安全性
神聖的C槽 v.s 萬惡的D槽
系統的效能考量
加速讀取

磁碟分割
64bytes 磁碟分割表

/dev/sda1 /dev/sda2 /dev/sda3 /dev/sda4
磁碟分割
所謂的『分割』只是針對64 bytes的分割表進行設定而已
最多僅能寫入四組分割資訊
這四組分割資訊稱為主要(Primary)或延伸(Extended)分割槽
延伸分割
最多只能有一個
不能格式化
繼續切出來的稱為邏輯分割槽(logical partition)
邏輯分割數量依作業系統而定
磁碟分割

P1:/dev/sda1
P2:/dev/sda2
L1:/dev/sda5
L2:/dev/sda6
L3:/dev/sda7
L4:/dev/sda8
L5:/dev/sda9
P1
P2
L1 L2 L3 L4 L5
磁碟分割

磁碟分割-例題1

在Windows作業系統當中
如果你想要將D與E槽整合
成為一個新的分割槽
如果有兩種分割的情況如圖
特殊顏色區塊為D與E槽
請問這兩種方式
是否均可將D與E整合成為
一個新的分割槽?
磁碟分割-例題1
上圖可以整合:因為上圖的D與E同屬於延伸分割內的邏輯分割,因此只要將兩個分割槽刪除,然後再重新建立一個新的分割槽, 就能夠在不影響其他分割槽的情況下,將兩個分割槽的容量整合成為一個。
下圖不可整合:因為D與E分屬主分割與邏輯分割,兩者不能夠整合在一起。除非將延伸分割破壞掉後再重新分割。 但如此一來會影響到所有的邏輯分割槽,要注意的是:如果延伸分割被破壞,所有邏輯分割將會被刪除。 因為邏輯分割的資訊都記錄在延伸分割裡面嘛!
目錄樹結構

/home/username/data
目錄樹結構
如何結合目錄樹的架構與磁碟內的資料
掛載(mount)
掛載
利用一個目錄當成進入點,
將磁碟分割槽的資料放置在該目錄下
進入該目錄=讀取該分割槽

~參觀Ubuntu動物園~
sudo apt-get install oneko
sudo apt-get install cowsay
ls /dev
NMG_20141020
By 坊吉
NMG_20141020
- 249