1. 程式人生 > >Linux中的磁碟

Linux中的磁碟

 

磁碟分割槽:將硬碟劃分成多個邏輯儲存單元。
邏輯儲存單元:分割槽

分割槽的益處:
1、限制應用或使用者的可用空間
2、允許同一塊硬碟安裝不同的作業系統
3、可以給虛擬記憶體一個單獨的分割槽
4、提高硬碟的使用效能
磁碟    磁軌        扇區(磁碟的最小單位-512位元組)

MBR-Main Boot Record(主引導記錄):告訴硬碟如何進行分割槽

特點:
1、支援4個主分割槽
2、使用擴充套件分割槽和邏輯分割槽可以支援15個分割槽
3、允許最大分割槽和磁碟大小為2T
fdisk來進行分割槽
IDE介面硬碟:/dev/dh[a-z]  SCSI介面硬碟:/dev/sd[a-z]

 

n(新建)> p(建立主分割槽)> 分割槽編號 > 起始扇區 > 設定分割槽大小 > p(檢視)> w(儲存)
先分割槽   d:刪除



核心重新讀取新的分割槽表
    [[email protected] ~]# partprobe /dev/sdb

建立檔案系統,linux支援很多檔案系統,ext4和xfs,windowS下檔案系統:NTFS   FAT32
    mkfs.ext4 /dev/sdb1

掛載,將檔案系統連線到目錄結構中—將目錄和一個硬碟進行掛鉤

掛載:
手動掛載:重啟後會失效。用於檢測已經格式化的裝置,是否可以和預期一樣的進行工作
mount  硬體所在目錄   掛載點(目錄)


永久掛載:就要將裝置新增到/etc/fstab中去了
永久掛載-檔案格式

該檔案由六個部分組成
第一部分:要使用的裝置—可以使用UUID,也可以使用裝置檔案
       blkid //檢視裝置的UUID號

blkid主要用來對系統的塊裝置(包括交換分割槽)所使用的檔案系統型別、LABEL、UUID等資訊進行查詢。要使用這個命令必須安裝e2fsprogs軟體包。

第二部分:寫掛載點,已經存在直接寫,不存在使用mkdir來建立


第三部分:檔案系統型別




該檔案由六個部分組成
第四部分:掛載時,應用於裝置的自定義選項,defaults是必須的

第五和第六部分:轉存標誌和fsck順序
轉存標誌:用於生成裝置內容的備份,
0:表示不需要備份
1:表示需要備份

fsck:當有多個檔案系統需要檢查時,檢查的順序。
0表示不需要檢查,開機直接掛載
1表示檢查後第一個掛載
2表示檢查後第二個掛載

使用mount -a命令  檢查書寫格式是否有誤。

交換空間-swap

交換空間—虛擬記憶體。
1、存放記憶體中不活動的資訊
2、記憶體寫滿時,使用
3、如果虛擬記憶體寫滿,那麼Linux會非常卡,甚至崩潰

建立步驟
1、建立分割槽
2、將分割槽型別設為swap—fdisk t(修改分割槽型別)
3、格式化—mkswap  分割槽
4、掛載:臨時和永久(ect/fstab)

臨時:
free命令:檢視可用的記憶體和虛擬記憶體空間
swapon命令:啟用記憶體空間
交換空間—虛擬記憶體。
1、存放記憶體中不活動的資訊
2、記憶體寫滿時,使用
3、如果虛擬記憶體寫滿,那麼Linux會非常卡,甚至崩潰

建立步驟
1、建立分割槽
2、將分割槽型別設為swap—fdisk t(修改分割槽型別)
3、格式化—mkswap  分割槽
4、掛載:臨時和永久(ect/fstab)

臨時:
free命令:檢視可用的記憶體和虛擬記憶體空間
swapon命令:啟用記憶體空間
交換空間—虛擬記憶體。
1、存放記憶體中不活動的資訊
2、記憶體寫滿時,使用
3、如果虛擬記憶體寫滿,那麼Linux會非常卡,甚至崩潰

建立步驟
1、建立分割槽
2、將分割槽型別設為swap—fdisk t(修改分割槽型別)
3、格式化—mkswap  分割槽
4、掛載:臨時和永久(ect/fstab)

臨時:
free命令:檢視可用的記憶體和虛擬記憶體空間
swapon命令:啟用記憶體空間

邏輯卷和邏輯分割槽不是同一個概念

邏輯卷的作用:
正常的分割槽如果寫滿了,我們就可以要把資料匯入到更大的磁碟中,工作量非常大,而且十分危險。
邏輯卷管理器(LVM)可以更加輕鬆的管理磁碟空間,來輕鬆的解決一個問題。

lvm比傳統硬碟儲存的優化點
1、靈活性容量—允許多個磁碟或分割槽做成一個邏輯卷
2、可伸縮的儲存池—可以用命令來修改邏輯卷,而不用格式化
3、線上資料在分配—可以線上移動資料,可以在跟換熱插拔磁碟
4、裝置命名方便
5、映象卷—很方便的做資料映象
6、卷快照—快照會把邏輯卷中的內容全部內容儲存
物理卷(PV):用於註冊基礎物理裝置,對映到物理裝置
卷組(VG):儲存池,由一個或多個物理卷組成
邏輯卷(LV):根據卷租中空閒的物理空間進行分配

建立邏輯卷步驟:
1、使用fdisk建立一個分割槽,t設定分割槽型別為:linux LVM
2、使用partprobe向核心註冊新的分割槽
3、建立物理卷pvcreate /dev/sdb1
4、建立卷組vgcreate lewis /dev/sdb1
5、建立邏輯卷lvcreate -n abc -L 10M lewis
6、建立檔案系統mkfs.ext4 /dev/lewis/abc
7、建立掛載點-永久
檢視物理卷資訊-pvdisplay /dev/sdb1
檢視卷組資訊-vgdisplay lewis
檢視邏輯卷資訊-lvdisplay /dev/lewis/lewis-lv
物理卷(PV):用於註冊基礎物理裝置,對映到物理裝置
卷組(VG):儲存池,由一個或多個物理卷組成
邏輯卷(LV):根據卷租中空閒的物理空間進行分配

刪除邏輯卷步驟:
1、取消掛載,umount /mnt/lewis-lv/,同時要刪除/etc/fstable檔案中的內容
2、刪除邏輯卷,lvremove /dev/lewis/abc
3、刪除卷組,vgremove lewis
4、刪除物理卷,pvremove /dev/sdb1

 





如果卷組還有空間,直接給邏輯卷增加大小
1、lvextend -L +20M /dev/lewis/lewis-lv  //增加20M
2、resize2fs /dev/lewis/lewis-lv  //使增加的生效

如果卷組空間不夠,需要先增加捲租空間,在增加邏輯卷大小
1、準備物理裝置-fdisk,partprobe,mkfs.ext4
2、建立物理卷
3、給原來的卷組增加物理卷-vgextend lewis /dev/sdb2,然後vgdisplay

 

 如果卷組還有空間,直接給邏輯卷增加大小
1、lvextend -L +20M /dev/lewis/lewis-lv  //增加20M
2、xfs_growfs /dev/lewis/lewis-lv//使增加的生效

如果卷組空間不夠,需要先增加捲租空間,在增加邏輯卷大小
1、準備物理裝置-fdisk,partprobe,mkfs.ext4
2、建立物理卷
3、給原來的卷組增加物理卷-vgextend lewis /dev/sdb2,然後vgdisplay

 

1、載入 BIOS
系統韌體載入 BIOS(基本輸入輸出系統),然後進行開機自檢(POST),並開始初始化部分硬 件;

BIOS:basic input output system,它是一套程式,寫死到主 板上的一個記憶體晶片中,這個記憶體晶片在沒有通電的情況下也能將數 據記錄下來(ROM,非揮發性)。

2、讀取 MBR 系統韌體搜尋磁碟上的主啟動記錄(MBR)

由於我們的系統軟體大多放置在硬碟中,所以 BIOS 會指定啟動 的裝置,好讓我們可以讀取磁碟中的作業系統核心檔案,這時候就需要 一個引導裝載程式來處理核心檔案載入(LOAD)的問題,這個引導裝 載程式就被稱為 BootLoader。

那這個 BootLoader 放在哪裡呢?
就放在我們系統上第一個硬碟上的第一個扇區裡面。也就是我們 說的 MBR:master boot record。

3、啟動載入器(grub2)
系統韌體從磁碟中讀取啟動載入器(Boot Loader),然後將系統
控制權交給啟動載入器。在 7 中,我們的 BootLoader 是通過一個 grub 程式來實現的。
現在是 grub2.0,前一版本是 grub0.97。

grub2 的主要功能: 1、提供選單:選擇不同的啟動選項;
2、載入核心檔案:直接指向可啟動的程式區段來開始 OS;
3、轉交其他 Loader(多系統時)。
4、顯示選單
啟動載入器從我們的磁碟中載入其配置,然後向用戶顯示用於啟 動的可能配置的選單,這就是我們在開機的時候會看到的讓你上下選 擇什麼什麼版本啊,什麼什麼東西的那個介面。

我們可通過以下方式進行配置: /etc/grub.d/
/etc/default/grub
/boot/grub2/grub.cfg(非手動)
5、載入核心
在使用者做出選擇(超時)後,啟動載入器會從磁碟中載入配置的
核心及 initramfs,並將其置於記憶體中;
initramfs 是一個歸檔檔案,裡面包含了啟動時所需要的必要硬 件的核心模組、初始化指令碼等等。在 RHEL7 中,initramfs 得到了加 強,包含自身可用的整個系統。

6、系統內部傳遞資訊
這時候我們的啟動載入器又將系統控制權交給核心,從而傳遞啟 動載入器的核心命令列中指定的任何選項,以及 initramfs 在核心中 的位置。

7、初始化 核心這時候會在 initramfs 中找到驅動程式的所有硬體,並且初
始化它,然後作為 PID1 從 initramfs 中執行/sbin/init。

PID1 就是systemd,代表的是系統啟動的第一個使用者級 程序,是所有其他程序的父程序。

8、執行單元 初始化完成後,我們的 systemd 會執行 initrd.target 目標 的所有檔案,這些所有的東西都包括在/sysroot 上掛載實際的 root 檔案系統中。

9、系統迴歸 接下來核心 root 檔案系統會回到之前掛載於/sysroot 上的系統 root 檔案系統,然後就是我們 systemd 的事情了,它會使用系統中 安裝的 systemd 副本來自行重新執行。
 
10、開機介面
我們們熟悉的輸入賬號密碼的介面了

 







1、開機按e進入編輯模式
2、選擇 linux16 那一行,然後游標移到這一行末尾,新增一個參 數rd.break。
3、然後按 ctrl+x 執行。執行之後會進入一個 shell 介面
4、設定 root 密碼。 設定密碼一共 5 步:
    1、重新掛載根目錄為讀寫模式 mount –o remount,rw /sysroot
    2、切換到系統真正的根 chroot /sysroot
    3、修改密碼 passwd root
    4、SELinux 給所有資料夾標籤,必須要有.autorelabel 檔案。 touch /.autorelabel
    5、退出編輯模式(兩次),系統會自動重啟 exit 兩次