1. 程式人生 > >+++++++btrfs、壓縮/解壓縮和編程之if和for總結

+++++++btrfs、壓縮/解壓縮和編程之if和for總結

linux


btrfs

filesystem device balance subvolume

創建、掛載、子卷的掛載、創建、向btrfs中添加或移除設備、重新均衡數據


<btrfs系統不支持,網上摘錄,以後再修改....>

1、父卷可直接格式化、掛載及同LVM邏輯卷一樣可以動態的擴展和縮減

2、原生RAID(數據和元數據支持RAID),文件系統級別支持LVM

3、子卷的快照同LVM一樣。LVM的邏輯卷的快照同原卷在同一個卷組中,btrfs的子卷的快照同原卷在同一個父卷中

4、btrfs系統中支持對文件快照子卷快照

5、支持ext系列系統和btrfs系統相互轉換

6、多底層物理卷的支持,不知道是否支持分區呢?LVM,RAID<disk>都支持<partition/raid>

7、子卷支持動態擴展嗎?


創建

mkfs.btrfs [OPTIONS....] <raid/partition/disk> ...

-L LABEL ## 指定LABEL

-d: raid0,raid1,raid5 raid6 raid10 single ## 數據的存儲格式(原生raid支持)

-m: raid0,raid1,raid5 raid6 raid10 single ## 元數據的存儲格式(原生raid支持)

-O FEATURE 設定特性

-O list-all 列出所有feature


獲取btrfs子命令: man btrfs


文件系統屬性查看

filesystem SUB_COMMAND MOUNT_POINT

show [--all-devices|--mounted]

# blkid <raid/partition/disk>

** UUID相同,UUID_SUB子卷UUID不同


掛載

mount -t btrfs [OPTIONS...] <raid/partition/disk> MOUNT_POINT

-o compress={lzo|zlib} ## 透明壓縮掛載

# mount -t btrfs -o compress=lzo <raid/partition/disk> MOUNT_POINT


擴展文件系統:

filesystem SUB_COMMAND MOUNT_POINT

resize [+|-]#[KMGTE]

resize max


添加磁盤

磁盤管理

device SUB_COMMAND <raid/partition/disk> MOUNT_POINT

add ## 添加後需要數據均衡

delete ## 直接拆除設備

ready ## 轉為備用狀態

scan

stats ## IO統計

usage


均衡磁盤

balance命令

balance SUB_COMMAND [SUB_SUB_CMD] MOUNT_POINT

start ## 開始均衡

-dconvert=raid_level ## 修改數據存儲的格式

-mconvert=raid_level ## 修改數據存儲的格式

-sconvert=raid_level ## 修改系統存儲的格式

raid_level: raid0 raid1 raid5 raid6 single

## 創建時數據為raid0,現在不添加硬盤的情況下將其修改為raid5可能嗎?

status

pause ## 暫停均衡

cancel

resume ## 繼續均衡



查看磁盤空間

filesystem SUB_COMMAND MOUNT_POINT

df [OPTIONS...]

# df [OPTIONS...]

-lhP


子卷管理

1、父卷掛載在DIR=/mydata

2、子卷名: SUBDIR=/mydata/subvolumNAME


獲取幫助: man btrfs-subvolume


btrfs-subvolume

create SUBDIR ## 創建子卷(在父卷下創建一個目錄)

list DIR ## 查看子卷 (SUB_ID)

show DIR ## 查看子卷詳細信息

delete SUBDIR ## 刪除子卷


掛載子卷

1、卸載父卷掛載子卷

2、掛載父卷

mount -t subvol=SUBDIR_basename <raid/partition/disk> DIR


快照

btrfs-subvolume SUB_COMMAND SUBDIR SUBDIR_snapshot

snap-shot ## 創建快照


btrfs文件系統支持文件快照:

cp --reflink original_file snapshot_file


文件系統的轉換

1、卸載ext文件系統

2、檢測

3、轉換

4、回滾

5、查看文件系統屬性


將ext轉換btrfs命令: # btrfs-convert <partition/raid>

回滾命令: # btrfs-convert -r <partition/raid>


壓縮/解壓縮

gzip/gunzip/zcat bzip2/bunzip2/bzcat xz/unxz/xzcat

zip/unzip

tar


技術分享

1、保留原文件: gzip -c > , bzip2 -k , xz -c > 或 xz -k

2、壓縮目錄: gzip -r DIR , zip -r file.zip DIR

3、靜默模式: xz -q , zip -q

6、其他壓縮格式: xz -F {xz|lzma|raw}


gzip/gunzip/zcat

-d,-c,-r,#

bzip2/bunzip2/bzcat

-d,-k,-#

xz/unxz/xzcat

-d,-c,-k , -r ,-q ,-F{xz,lzma,raw}

zip/unzip

-d,-r,-q


tar -c -x -C -t -f -c -v -j -J -z

COMMAND:-cvf,-xvf,-txf(不展開查看內容)

-jCOMMAND 歸檔後調用bzip2壓縮歸檔文件

-JCOMMAND 歸檔後調用xz壓縮歸檔文件

-zCOMMAND 歸檔後調用gzip壓縮歸檔文件


編程:if,for

if condition; then

if-ture

fi


if condition; then

if-ture

else

if-false

fi


if condition; then

if-ture

elif condition; then

if-ture

elif condition; then

if-ture

...

else

all-false

fi


for i in 列表; do

循環體

done


列表:

1、直接給

2、{1..10}

3、$(ls /var)

4、$(expr 1 1 10)

5、/var/log/*

6、$@,$*


declare -i var 變量類型為整型

declare -x var 環境變量

declare -r var 只讀變量


^-^USB2.0和3.0的區別

1、外觀

技術分享

2、速率

理論值:USB 3.0的傳輸速度是4.8Gbps,是USB 2.0的10倍。即4.8Gbps * 1024=600MB/S

本文出自 “Reading” 博客,請務必保留此出處http://sonlich.blog.51cto.com/12825953/1956055

+++++++btrfs、壓縮/解壓縮和編程之if和for總結