日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

linux下卸载 dev sd*下硬盘,Linux 磁盘管理(示例代码)

發(fā)布時(shí)間:2025/3/15 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下卸载 dev sd*下硬盘,Linux 磁盘管理(示例代码) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

磁盤(pán)管理

Linux思想一切皆文件:

open(),read(),write(),close()

I/O 設(shè)備地址

設(shè)備類(lèi)型:

塊設(shè)備:block,存取單位“塊”,磁盤(pán) (隨機(jī)訪問(wèn))

字符設(shè)備:char,存取單位“字符”,鍵盤(pán) (邏輯訪問(wèn))

設(shè)備文件:關(guān)聯(lián)至一個(gè)設(shè)備驅(qū)動(dòng)程序,進(jìn)而能夠跟與之對(duì)應(yīng)硬件設(shè)備進(jìn)行通訊。

設(shè)備編號(hào):

ll /dev/sda*

root disk 8.0

root disk 8.1

每一個(gè)設(shè)備都擁有一個(gè)主要號(hào)碼,代表設(shè)備的類(lèi)型,第二個(gè)是同一類(lèi)型的唯一編號(hào)。

硬盤(pán)接口類(lèi)型:

并行:

IDE:133MB/s (家用)

SCSI:640MB/s ?(服務(wù)器)

串口:

SATA:6Gbps (家用)

SAS:6Gbps ? (服務(wù)器)

USB:480MB/s

rpm:?rotations per minute

每分鐘的轉(zhuǎn)速

磁盤(pán)設(shè)備的設(shè)備文件命名:/dev/DEV_FILE

IDE: /dev/hd

SCSI, SATA, SAS, USB: /dev/sd

不同設(shè)備:a-z

/dev/sda, /dev/sdb, …

同一設(shè)備上的不同分區(qū):1,2, …

/dev/sda1, /dev/sda5

磁頭 head

2磁頭數(shù) =1盤(pán)片

磁道 track

扇區(qū) sector (512字節(jié))

head 256 磁頭

track 1024 磁道

secror 63 扇區(qū)

CHS(culinder柱面)

culinder=track*head=512*63*256=8M

(centos6版本之后就不用整個(gè)柱面分區(qū))

LBA 邏輯尋址(6版本之后就使用)

分區(qū)

兩種分區(qū)方式:?MBR ,GPT

MBR: Master Boot Record,1982年,使用32位表示扇區(qū)數(shù),分區(qū)不超過(guò)2T

如何分區(qū):按柱面

0磁道0扇區(qū):512bytes

446bytes:boot loader

64bytes:分區(qū)表

16bytes:?標(biāo)識(shí)一個(gè)分區(qū)

2bytes:?55AA (識(shí)別是否有分區(qū))

4個(gè)主分區(qū);3主分區(qū)+1擴(kuò)展(N個(gè)邏輯分區(qū))

GPT:GUID(Globals Unique Identifiers)partition table 支持128個(gè)分區(qū),使用64位,支持8Z(512Byte/block )64Z (4096Byte/block)

使用128位UUID 表示磁盤(pán)和分區(qū)GPT分區(qū)表自動(dòng)備份在頭和尾兩份,并有CRC校驗(yàn)位

UEFI (統(tǒng)一擴(kuò)展固件接口)硬件支持GPT,使操作系統(tǒng)啟動(dòng)

EFI部分又可以分為4個(gè)區(qū)域:EFI信息區(qū)(GPT頭)、分區(qū)表、GPT分區(qū)、備份區(qū)域

linux 使用的分區(qū)方式

lilo

grub (5,6版本)

grub2(7版本之后使用)

echo "- – -"> /sys/class/scsi_host/host0/scan

掃描新添加的硬盤(pán)

(查看分區(qū))

lsblk 查看硬盤(pán)信息 (讀取內(nèi)存中的信息)

fdisk -l /dev/sdd 查看硬盤(pán)信息

hexdump -C -n 512 /dev/sda 查看磁盤(pán)前512字節(jié)的信息

dd if=/dev/sda of=/testdir/mbrbak bs=1 count=512

備份mbr

dd if=/testdir/mbrbak of=/dev/sdd

將磁盤(pán)中備份的磁盤(pán)信息放到sdd

dd if=/dev/zero of=/dev/sdd bs=1 count=446 將前446字節(jié)用0替代

dd if=/dev/zero of/=dev/sdd bs=1 count=2 skip=510 seek=510

用0代替最后兩個(gè)字節(jié)的分區(qū)標(biāo)識(shí)55AA。

最后兩位字節(jié)存儲(chǔ)標(biāo)識(shí)的55 AA變成00 00

dd if=/testdir/mbrbak of=/dev/sdd bs=1 count=2 skip=510 seek=510

恢復(fù)分區(qū)標(biāo)識(shí)

管理分區(qū)

列出塊設(shè)備

lsblk

創(chuàng)建分區(qū)使用:

fdisk創(chuàng)建MBR分區(qū),也支持GPT,對(duì)于一塊硬盤(pán),最多只能管理15分區(qū)

fdisk /dev/sdc

w:存盤(pán)退出

n:添加一個(gè)新的分區(qū)、柱面為單位,

p:顯示

d:刪除

q:不保存退出

t:更改分區(qū)類(lèi)型

gdisk創(chuàng)建GPT分區(qū)

查看內(nèi)核是否已經(jīng)識(shí)別新的分區(qū):

cat /proc/partations

partx -a /dev/sda (6使用這個(gè)指令)

partprobe

同步

GNU parted高級(jí)分區(qū)操作(創(chuàng)建、復(fù)制、調(diào)整大小等等)

parted /dev/sdc mklabel msdos

創(chuàng)建新的磁盤(pán)格式為MBR

parted /dev/sdc mklabel gpt

創(chuàng)建新的磁盤(pán)格式為GPT

fdisk -l /dev/sdc

查看分區(qū)的起始到結(jié)束點(diǎn),塊的數(shù)量,ID

parted /dev/sdc/mkpart primary 1 1024起始點(diǎn) 終止點(diǎn) ? ? ?創(chuàng)建一個(gè)分區(qū)

parted /dev/sdc/ rm 1

刪除/dev/sdc 第一個(gè)分區(qū)

partprobe-重新設(shè)置內(nèi)存中的內(nèi)核分區(qū)表版本

文件系統(tǒng)

文件系統(tǒng)是操作系統(tǒng)用于明確存儲(chǔ)設(shè)備或分區(qū)上的文件的方法和數(shù)據(jù)結(jié)構(gòu);

即在存儲(chǔ)設(shè)備上組織文件的方法。操作系統(tǒng)中負(fù)責(zé)管理和存儲(chǔ)文件信息的軟件結(jié)構(gòu)稱(chēng)為文件管理系統(tǒng),簡(jiǎn)稱(chēng)文件系統(tǒng)。

從系統(tǒng)角度來(lái)看,文件系統(tǒng)是對(duì)文件存儲(chǔ)設(shè)備的空間進(jìn)行組織和分配,負(fù)責(zé)文件存儲(chǔ)并對(duì)存入的文件進(jìn)行保護(hù)和檢索的系統(tǒng)。具體地說(shuō),它負(fù)責(zé)為用戶(hù)建立文件,存入、讀出、修改、轉(zhuǎn)儲(chǔ)文件,控制文件的存取,安全控制,日志,壓縮,加密等。

ext3(centos5)

ext4(centos6)

xfs(centos7)

光盤(pán):iso9660

網(wǎng)絡(luò)文件系統(tǒng):NFS,CIFS (Linux包 samba)

集群文件系統(tǒng):GFS2,OCFS2(oracle)

分布式文件系統(tǒng):ceph,moosefs,mogilefs,glusterfs,Lustre

RAW:未經(jīng)處理或者未格式化產(chǎn)生的文件系統(tǒng)

文件系統(tǒng)分類(lèi)

根據(jù)其是否支持"journal"功能:

日志型文件系統(tǒng):ext3, ext4, xfs, …

非日志型文件系統(tǒng):?ext2, vfat

文件系統(tǒng)的組成部分:

內(nèi)核中的模塊:ext4, xfs, vfat

用戶(hù)空間的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat

Linux的虛擬文件系統(tǒng):VFS

查前支持的文件系統(tǒng):cat /proc/filesystems

lsmod 可以查看設(shè)備的驅(qū)動(dòng)是否安裝成功

創(chuàng)建文件系統(tǒng)

mkfs.

mkfs -t ext4

mke2fs

mke2fs /dev/sdc1 建立ext文件系統(tǒng)

一個(gè)塊=4k

tune2fs -l /dev/sd*

超級(jí)塊是存儲(chǔ)關(guān)于塊的數(shù)據(jù),塊的大小,塊的元數(shù)據(jù)。

組超級(jí)塊,存儲(chǔ)塊的大小,和每個(gè)組有多少塊,塊的元數(shù)據(jù)。

超級(jí)塊會(huì)自動(dòng)備份。

blkid 查看盤(pán)的文件系統(tǒng)

tun2fs -o ^has_journal /dev/sd*

移除 日志功能,ext3變ext2

創(chuàng)建ext文件系統(tǒng)

mke2fs:ext系列文件系統(tǒng)專(zhuān)用管理工具

-t {ext2|ext3|ext4}

-b {1024|2048|4096}

-L ‘LABEL‘ 卷標(biāo)(卷標(biāo)名最好使用掛載點(diǎn)名字)

-j: 相當(dāng)于-t ext3

mkfs.ext3 = mkfs-t ext3 = mke2fs -j = mke2fs -t ext3

tune2fs -m 0 /dev/sda5

-i#: 為數(shù)據(jù)空間中每多少個(gè)字節(jié)創(chuàng)建一個(gè)inode;此大小不應(yīng)該小于block的大小

-N#:為數(shù)據(jù)空間創(chuàng)建個(gè)多少個(gè)inode

-I 一個(gè)inode記錄大小128—4096

-m #: 默認(rèn)5%,為管理人員預(yù)留空間占總空間的百分比

-O FEATURE[,…]:啟用指定特性

-O ^FEATURE:關(guān)閉指定特性

文件系統(tǒng)標(biāo)簽

blkid:塊設(shè)備屬性信息查看

-U UUID: 根據(jù)指定的UUID來(lái)查找對(duì)應(yīng)的設(shè)備

-L LABEL:根據(jù)指定的LABEL來(lái)查找對(duì)應(yīng)的設(shè)備

e2label /dev/sdc2 /mnt/sdc2

加卷標(biāo)

tune2fs

tune2fs:重新設(shè)定ext系列文件系統(tǒng)可調(diào)整參數(shù)的值

-l:查看指定文件系統(tǒng)超級(jí)塊信息;super block

-L ‘LABEL‘:修改卷標(biāo)

-m #:修預(yù)留給管理員的空間百分比

-j: 將ext2升級(jí)為ext3

-O: 文件系統(tǒng)屬性啟用或禁用,–O ^has_journal

-o: 調(diào)整文件系統(tǒng)的默認(rèn)掛載選項(xiàng),–o ^acl

-U UUID: 修改UUID號(hào)

ecntos6 手動(dòng)分區(qū)格式化ext 沒(méi)有acl功能

tune2fs -o acl /dev/sd*

ACL:

具有能再添加局限權(quán)限的能力,實(shí)現(xiàn)靈活的權(quán)限管理

Centos 7 默認(rèn)創(chuàng)建xfs 和ext4 文件系統(tǒng)有ACL功能。

Centos 7 版本之前,默認(rèn)手工創(chuàng)建的ext4文件系統(tǒng)無(wú)ACL功能。

手動(dòng)添加:

tune2fs -o acl /dve/sdb1

mount -o acl /dve/sbd1 /mnt

ACL 生效順序:所有者,自定義用戶(hù),自定義組,其他人。

tune2fs -l /dev/sd*

文件系統(tǒng)檢測(cè)和修復(fù)

常發(fā)生于死機(jī)或者非正常關(guān)機(jī)之后

掛載為文件系統(tǒng)標(biāo)記為“dirty”

fsck: File System Check

fsck.FS_TYPE

fsck-t FS_TYPE

-a: 自動(dòng)修復(fù)錯(cuò)誤

-r: 交互式修復(fù)錯(cuò)誤

fsck -y /dev/sd* 默認(rèn)在yes的選項(xiàng)下修復(fù)

不要在掛載的情況下修復(fù),不然修復(fù)會(huì)破壞元數(shù)據(jù)。

注意: FS_TYPE一定要與分區(qū)上已經(jīng)文件類(lèi)型相同;

fsck -a /dev/sd*

文件修復(fù)

e2fsck:ext系列文件專(zhuān)用的檢測(cè)修復(fù)工具

-y:自動(dòng)回答為yes

-f:強(qiáng)制修復(fù)

最大掛載次數(shù)和時(shí)間間隔會(huì)觸發(fā)fsck檢查命令。

fuser -v /mnt/sdb1 查看誰(shuí)在掛載使用用

fuser -km /mnt/sdb1 強(qiáng)行T出掛載

掛載點(diǎn)目錄一般為空

mount 查看掛載

cat /etc/mounts(特殊項(xiàng)都能看到)

掛載:將額外文件系統(tǒng)與根文件系統(tǒng)某現(xiàn)存的目錄建立起關(guān)聯(lián)關(guān)系,進(jìn)而使得此目錄做為其它文件訪問(wèn)入口的行為

卸載:為解除此關(guān)聯(lián)關(guān)系的過(guò)程

把設(shè)備關(guān)聯(lián)掛載點(diǎn):mount Point

mount

卸載時(shí):可使用設(shè)備,也可以使用掛載點(diǎn)

umount

掛載點(diǎn)下原有文件在掛載完成后會(huì)被臨時(shí)隱藏

掛載點(diǎn)目錄一般為空

mount常用命令選項(xiàng)

-t vsftype:指定要掛載的設(shè)備上的文件系統(tǒng)類(lèi)型

-r: readonly,只讀掛載

-w: read and write, 讀寫(xiě)掛載

-n: 不更新/etc/mtab,相當(dāng)于#mount

-a:自動(dòng)掛載所有支持自動(dòng)掛載的設(shè)備(定義在了/etc/fstab文件中,且掛載選項(xiàng)中有auto功能)

-L ‘LABEL‘: 以卷標(biāo)指定掛載設(shè)備

-U ‘UUID‘: 以UUID指定要掛載的設(shè)備

-B, –bind: 綁定目錄到另一個(gè)目錄上

查看內(nèi)核追蹤到的已掛載的所有設(shè)備:

cat /proc/mounts

mount -o remount,noatime /mnt/

取消掛載再重新掛載,不使用atime

mount -o noexec,noatime /mnt/

取消掛載再重新掛載,不使用執(zhí)行文件

不要輕易將掛載權(quán)限比普通用戶(hù)

創(chuàng)建了一個(gè)新的文件夾/mnt/sdd

將硬盤(pán)/dev/sdd 掛載在/mnt/sdd中

-o options:(掛載文件系統(tǒng)的選項(xiàng)),多個(gè)選項(xiàng)使用逗號(hào)分隔

async:異步模式

sync:同步模式,內(nèi)存更改時(shí),同時(shí)寫(xiě)磁盤(pán)

atime/noatime:包含目錄和文件

diratime/nodiratime:目錄的訪問(wèn)時(shí)間戳

auto/noauto:是否支持自動(dòng)掛載,是否支持-a選項(xiàng)

exec/noexec:是否支持將文件系統(tǒng)上運(yùn)行應(yīng)用程序

dev/nodev:是否支持在此文件系統(tǒng)上使用設(shè)備文件

suid/nosuid:不否支持suid和sgid權(quán)限

remount:重新掛載

ro:只讀

rw:讀寫(xiě)

user/nouser:是否允許普通用戶(hù)掛載此設(shè)備,默認(rèn)管理員才能掛載

acl:啟用此文件系統(tǒng)上的acl功能

Defaults:相當(dāng)于rw, suid, dev, exec, auto, nouser, async

總結(jié)

以上是生活随笔為你收集整理的linux下卸载 dev sd*下硬盘,Linux 磁盘管理(示例代码)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。