5-1 linux中的磁碟
磁碟分割槽:將硬碟劃分成多個邏輯儲存單元。
邏輯儲存單元:分割槽
分割槽的益處:
1、限制應用或使用者的可用空間
2、允許同一塊硬碟安裝不同的作業系統
3、可以給虛擬記憶體乙個單獨的分割槽
4、提高硬碟的使用效能
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:刪除
先分割槽核心重新讀取新的分割槽表
[root@localhost ~]# partprobe /dev/sdb
建立檔案系統, linux支援很多檔案系統, ext4和xfs
mkfs.ext4 / dev / sdb1
掛載,將檔案系統連線到目錄結構中–將目錄和乙個硬碟進行掛鉤
掛載:手動掛載:重啟後會失效。用於檢測已經格式化的裝置,是否可以和預期一樣的進行工作 mount檔案系統掛載點(目錄)
永久掛載:就要將裝置新增到/etc/fstab中去了
永久掛載-檔案格式
該檔案由六個部分組成
第一部分:要使用的裝置一可以使用uuid,也可以使用裝置檔案
blkid//檢視裝置的uuid號
bikid主要用來對系統的塊裝置(包括交換分割槽)所使用的檔案系統型別、label,uuid等資訊進行查詢。要使用這不命令必須安裝e2fsprogs軟體包。
第二部分:寫掛載點,已經存在直接寫,不存在使用mkdir來建立
第三部分:檔案系統型別
第四部分:掛載時,應用於裝置的自定義選項, defaults是必須的
第五和第六部分:轉存標誌和sck順序轉存標誌;用於至成裝置內容的備份
0:表示不需要備份
1:表示需要備份
fsck:當有多個檔案系統需要檢查時,檢查的順序。
0表示不需要檢查,開機直接掛載
1表示檢查後第乙個掛載
2表示檢查後第二個掛載
使用mount -a命令檢查書寫格式是否有誤–否則開不了機進入,並發出警告。
5-6 swap分割槽1
交換空間-swap
交換空間一虛擬記憶體
物理記憶體 交換分割槽(swap)
1、存放記憶體中不活動的資訊 <=4g 至少4g
2、記憶體寫滿時,使用 4–16g 至少8g
3、如果虛擬記憶體寫滿,那麼linu會非常卡,甚至崩潰 16–64g 至少16g
64–256g 至少32g
建立步驟
1、建立分割槽
2、將分割槽型別設為swap-fdiskt (修改分割槽型別)
3、格式化-mkswap分割槽
4、掛載:臨時和永久(ect/fstab)
臨時:free命令:檢視可用的記憶體和虛擬記憶體空間
swapon命令:啟用記憶體空間
5-8 邏輯卷
邏輯卷-lv
邏輯卷和邏輯分割槽不是同乙個概念
邏4牲的作用:
e富的外區如果寫滿了,我們就可以要把資料匯入到更大的磁碟中,工作量非常大,而且十分危險。
邏輯卷管理器(lvm)可以更加輕鬆的管理磁碟空間,來輕鬆的解決乙個問題。
物理卷(pv) ;用於註冊基礎物理裝置,對映到物理裝置
捲組(vg) :儲存池,由乙個或多個物理卷組成
邏輯卷(lv) :根據卷租中空閒的物理空間進行分配
建立邏輯卷步驟
檢視物理卷資訊–pvdisplay /dev/sdb1
檢視捲組資訊–vgdisplay lewis
檢視邏輯卷資訊–lvdisplay /dev/lewis/lewis-lv
擴充套件和減少邏輯卷大小-ext4檔案系統
·如果捲組還有空間,直接給邏輯卷增加大小
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
擴充套件和減少邏輯卷大小-xfs檔案系統
如果捲組還有空間,直接給邏輯卷增加大小
lvextend -l+20m /dev/lewis/lewis-lv //增加20m
xfs_growfs /dev/lewis/lewis-lv//使增加的生效
·如果捲組空間不夠,需要先增加卷租空間,在增加邏輯卷大小
1、準備物理裝置-fdisk, partprobe, mkfs.ext4
2、建立物理卷
3、給原來的捲組增加物理卷-vgextend lewis /dev/sdb2,然後vgdisplay
刪除邏輯卷步驟:
1、取消掛載, umount /mnt/lewis-lv/,同時要刪除/etc/stable檔案中的內容
2、刪除邏輯卷, lvremove/dev/lewis/abc
3、刪除捲組; vgremove lewis
4、刪除物理卷, pvremove/dev/sdb1
5-14 linux的開機過程
開機過程
1、載入bios
系統韌體載入bios基本輸入輸出系統),然後進行開機自檢(post),並開始初始化部分硬體;
bios:basic input output system,它是一套程式,寫死到主機板上的乙個記憶體晶元中,這個記憶體晶元在沒有通電的情況下也能將資料記錄下來(rom,非揮發性)
2、讀取mbr
系統韌體搜尋磁碟上的主啟動記錄(mbr)
由於我們的系統軟體太多放置在硬碟中,所以bois會指定啟動的裝置:好讓我們可以讀取磁碟中的作業系統核心檔案,這時候就需夏乙個引導裝載程式來處理核心檔案加裁(load)的問題,這不引等裝載程式就被稱為bootloader.
那這個bootloader放在**呢?
就放在我們系統上第乙個硬碟上的第乙個扇區裡面.也就是我們說的mbr:masterbootrecord.
3、啟動載入器(grub2)
系統韌體從磁碟中讀取啟動載入器(boot loader),然後將系統控制權交給啟動載入器。
在7中,我們的bootloader是通過乙個 grub程式來實現的.
現在是grub2.0,前一版本是grub0.97.
grub2的主要功能:
1、提供選單:選擇不同的啟動選項;
2、載入核心檔案:直接指向可啟動的程式區段來開始os;
3、轉交其他loader(多系統時)。
4、顯示選單
啟動載入器從我們的磁碟中載入其配置,然後向使用者顯示用於啟動的可能配置的選單,這就是我們在開機的時候會看到的讓你上下選擇什麼什麼版本啊,什麼什麼東西的那個介面。
艾爾我們可通過以下方式進行配置:
k的/etc/grub.d/
/etc/default/grub
/boot/grub2/grub.cfg(非手動)
5、載入核心
在使用者做出選擇(超時)後,啟動載入器會從磁碟中載入配置的核心及initramfs,並將其置於記憶體中;
然5initramfs是乙個歸檔檔案,裡面包含了啟動時所需要的必要硬體的核心莫塊、初始化指令碼等等。在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,開機介面
我們們熟悉的輸入賬號密碼的介面了
55-15 root密碼破解
root密碼破解-基於紅帽7
1、開機按e進入編輯模式
2、選擇linux16那一行,然後游標移到這一行末尾,新增乙個引數rd.break.
3、然後按ctrltx執行。執行之後會進入乙個shell介面
4、設定root密碼。設定密碼一共5步:
1、重新掛載根目錄為讀寫模式mount -o remount,rw /sysroot
2、切換到系統真正的根chroot /sysroot
3、修改密碼passwd root
4、 selinux給所有資料夾標籤,必須要有autorelabel檔案。touch / .autorelabel
5、退出編輯模式(兩次),系統會自動重啟exit兩次
Linxu核心設計與實現 第5章 系統呼叫
使用者程序與核心互動的介面,使應用程式受限的訪問硬體裝置,提供了建立新程序並與已有程序通訊的機制,也提供了申請作業系統其它資源的能力。應用程式發出請求,核心來滿足這些請求,或者返回乙個錯誤。1 系統呼叫在使用者空間和硬體裝置之間新增了乙個中間層 為使用者空間提供抽象的介面 保證了系統的穩定與安全 2...
5 第 5 章 迴圈
1.可以用迴圈來驗證輸入。在迴圈前的第一次讀取操作,稱為啟動讀取,如果後續還需要繼續讀取,則語句應該在迴圈中。2.在實際程式設計應用中,不建議在 cout 語句中放置遞增或遞減運算子 因為容易出錯 3.需要計數時使用計數器,需要累計彙總時使用累加器。4.標記符號是乙個特殊值,指示著值列表的結尾。一般...
第5章 方法
方法的結構 方法是一塊具有名稱的 可以使用方法的名稱從別的地方執行 也可以把資料傳入方法並接受資料輸出。方法是類的函式成員。方法有兩個主要部分,方法頭和方法體。方法頭指定方法的特徵,包括 方法是否返回資料,如果返回,返回什麼型別 方法的名稱 哪種型別的資料可以傳遞給方法或從方法返回,以及應如何處理這...