U盤的使用和硬碟的使用很相似 移動介質: 掛載意味著外來的文件系統看起來就是主目錄樹的一部分。所以移動介質也需要掛載,通常掛載到/media或/mnt下麵。 訪問前,介質必須被掛載 摘除時,介質必須被卸載 創建ISO文件: 方法一:cp /dev/cdrom /root/centos.iso 方法二 ...
U盤的使用和硬碟的使用很相似
移動介質:
掛載意味著外來的文件系統看起來就是主目錄樹的一部分。所以移動介質也需要掛載,通常掛載到/media或/mnt下麵。
訪問前,介質必須被掛載
摘除時,介質必須被卸載
創建ISO文件:
方法一:cp /dev/cdrom /root/centos.iso
方法二:mkisofs -r -o /root/etc.iso /etc #來自於genisoimage包
刻錄光碟:
wodim -v -eject centos.iso
將ISO製作為U盤工具Rufus:
官網: http://rufus.ie/
作用:製作U盤系統啟動盤和格式化 USB。可以快速把 ISO 格式的系統鏡像文件快速製作成可引導的USB啟動安裝盤,支持 Windows或Linux啟動
USB介質
查看USB設備是否識別
lsusb #來自於usbuntils包
## usb設備會被內核探測為SCSI設備,例如/dev/sdaX、/dev/sdbX或類似的設備文件 使用lsblk可以看到
## 在圖形環境中自動掛載在/run/media//
範例:插入U盤後可以看到日誌信息
tail /var/log/messages -f #插上u盤以後就會看到日誌信息
範例:格式化U盤為 FAT32 文件系統
#使用dosfstools這個工具
mkfs.vfat /dev/sdd1(u盤)
#vfat就是windows的fat32 vfat這種文件系統不支持許可權,也不對大小寫敏感(對大小寫是否敏感看文件系統是否支持)。
範例:查看USB設備
#usbutils這個工具包
lsusb命令
磁碟管理常見的工具
df: disk free。查看文件系統的情況(掛載狀態的,沒掛載它看不見)
df看到的文件系統中真實占用的空間大小,而非錶面上的空間大小。
文件系統本身就有元數據,所以即使是剛創建的乾凈文件系統,也會占用一定的空間
選項:
-h:自動使用合適的單位進行數據的顯示
-T:顯示文件系統的類型
也可以使用lsblk -f 查看塊設備的文件系統類型。
du:disk usage。查看文件夾的情況
會把目錄文件下麵的每一個子文件大小都列出來。預設以k為單位。
選項:
-h:自動使用合適的單位進行顯示
-s:求和,查看目錄的總大小
df 和 du 區別
du看到的是這個目錄下文件的大小。
df看到的是文件系統空間的使用情況(處於掛載狀態下的)
#什麼時候df >du 什麼時候df < du
預設df >du,當某個目錄文件掛載到其他設備了的時候(多個設備空間的組合),df < du
刪除文件,不是釋放空間的時候(有進程再使用這個文件,刪除了這個文件不會馬上釋放空間)df>du
dd 命令:convert and copy a file
格式:
dd if=/PATH/FROM/SRC of=/PATH/TO/DEST bs=# count=#
選項:
- if=file #從所命名文件讀取而不是從標準輸入
- of=file #寫到所命名的文件而不是到標準輸出
- bs=size block size, #指定塊大小(既是是ibs也是obs)
- skip=blocks #從開頭忽略blocks個ibs大小的塊(跳過的是源文件 if=xx,單位由bs的單位決定)
- seek=blocks #從開頭忽略blocks個obs大小的塊(跳過的是目標文件of=xx,單位由bs的單位決定)
- count=n # 複製n個bs
- conv=conversion[,conversion...] 用指定的參數轉換文件
notrunc 表示不截短輸出文件
範例:
[root@centos8 ~]#cat f1.txt;
abcdef
[root@centos8 ~]#cat f2.txt
123456789
[root@centos8 ~]#dd if=f1.txt of=f2.txt bs=1 count=2 skip=3 seek=4
[root@centos8 ~]#cat f2.txt
1234de #後面的被截斷了
#不截斷
[root@centos8 ~]#dd if=f1.txt of=f2.txt bs=1 count=2 skip=3 seek=4 conv=notrunc
[root@centos8 ~]#cat f2.txt
1234de789
dd命令使用範例:
#備份MBR
dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1 #破壞MBR中的bootloader
dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446 #bs預設是byte,所以seek跳過446位元組
#有一個大與2K的二進位文件fileA。現在想從第64個位元組位置開始讀取,需要讀取的大小是128Byts。又有
fileB, 想把上面讀取到的128Bytes寫到第32個位元組開始的位置,替換128Bytes,實現如下
dd if=fileA of=fileB bs=1 count=128 skip=63 seek=31 conv=notrunc
#將本地的/dev/sdx整盤備份到/dev/sdy
dd if=/dev/sdx of=/dev/sdy
#將/dev/sdx全盤數據備份到指定路徑的image文件
dd if=/dev/sdx of=/path/to/image
#備份/dev/sdx全盤數據,並利用gzip壓縮,保存到指定路徑
dd if=/dev/sdx | gzip >/path/to/image.gz
#將備份文件恢復到指定盤
dd if=/path/to/image of=/dev/sdx
#將壓縮的備份文件恢復到指定盤
gzip -dc /path/to/image.gz | dd of=/dev/sdx
#將記憶體里的數據拷貝到root目錄下的mem.bin文件
dd if=/dev/mem of=/root/mem.bin bs=1024
#拷貝光碟數據到root文件夾下,並保存為cdrom.iso文件
dd if=/dev/cdrom of=/root/cdrom.iso
#銷毀磁碟數據
dd if=/dev/urandom of=/dev/sda1
#通過比較dd指令輸出中命令的執行時間,即可確定系統最佳的block size大小
dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000
dd if=/dev/zero of=/root/1Gb.file bs=2048 count=500000
dd if=/dev/zero of=/root/1Gb.file bs=4096 count=250000
#測試硬碟寫速度
dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000
#測試硬碟讀速度
dd if=/root/1Gb.file bs=64k | dd of=/dev/null