久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

Debian數(shù)據(jù)存儲技巧

2024-01-24 123

Debian系統(tǒng)中,有效地管理和優(yōu)化數(shù)據(jù)存儲是確保系統(tǒng)性能和穩(wěn)定性的關(guān)鍵。隨著數(shù)據(jù)量的不斷增長,不妨要經(jīng)常監(jiān)控硬盤空間使用情況、配置分區(qū)、設置文件系統(tǒng)以及執(zhí)行高級優(yōu)化技術(shù)變得尤為重要。本教程將介紹一系列的數(shù)據(jù)存儲技巧,幫助系統(tǒng)管理員和用戶充分利用Debian系統(tǒng)中的存儲資源。

啟動系統(tǒng)進入救援模式,可以通過使用 live CD 或 debian-installer CD。這種模式允許輕松地重新配置已連接啟動設備上的數(shù)據(jù)存儲設置。

如果這些設備在圖形用戶界面(GUI)下被自動掛載,可能需要在命令行手動執(zhí)行 umount(8) 命令來卸載它們,以便進行進一步操作。

一、硬盤空間使用情況

硬盤空間的使用情況可以通過 mount、coreutils 和 xdu 軟件包提供的程序來評估:

  • mount(8) 顯示所有掛載的文件系統(tǒng)(= 磁盤);
  • df(1) 報告文件系統(tǒng)使用的硬盤空間;
  • du(1) 報告目錄樹使用的硬盤空間。

可以將 du(8) 的輸出傳輸給 xdu(1x),來使用它的圖形交互式演示,例如 “du -k . |xdu”、“sudo du -k -x / |xdu” 等等。

二、硬盤分區(qū)配置

對于硬盤分區(qū)配置,盡管 fdisk(8) 被認為是標準的配置,但是 parted(8) 工具還是值得注意的。

老的 PC 使用經(jīng)典的主引導記錄(Master Boot Record,MBR)方案,將硬盤分區(qū)數(shù)據(jù)保存在第一個扇區(qū),即 LBA 扇區(qū) 0(512 字節(jié))。

一些帶有統(tǒng)一可擴展固件接口(Unified Extensible Firmware Interface,UEFI)的近代 PC,包括基于 Intel 的 Mac,使用 全局唯一標識分區(qū)表(GUID Partition Table,GPT)方案,硬盤分區(qū)數(shù)據(jù)不保存在第一個扇區(qū)。盡管 fdisk(8) 一直是硬盤分區(qū)的標準工具,但現(xiàn)在 parted(8) 替代了它。

硬盤分區(qū)管理軟件包:

軟件包 流行度 大小 說明
util-linux V:881, I:999 5283 多種系統(tǒng)工具,包含 fdisk(8) 和 cfdisk(8)
parted V:411, I:565 122 GNU Parted,硬盤分區(qū)調(diào)整程序
gparted V:14, I:103 2175 基于 libparted 的 GNOME 分區(qū)編輯程序
gdisk V:330, I:506 885 用于 GPT/MBR 并存的硬盤的分區(qū)編輯程序
kpartx V:21, I:34 77 為分區(qū)建立設備映射的程序

盡管 parted(8) 聲稱也能用來創(chuàng)建和調(diào)整文件系統(tǒng),但使用維護最好的專門工具來做這些事會更為安全,例如 mkfs(8)(mkfs.msdos(8)、mkfs.ext2(8)、mkfs.ext3(8)、mkfs.ext4(8)……)和 resize2fs(8)。

為了在 GPT 和 MBR 之間切換,需要直接刪除開頭的幾個塊中的內(nèi)容并使用 “parted /dev/sdx mklabel gpt” 或 “parted /dev/sdx mklabel msdos” 來設置它。請注意,這里使用的 “msdos” 是用于 MBR。

三、使用UUID訪問分區(qū)

盡管重新配置分區(qū)或可移動存儲介質(zhì)的激活順序可能會給分區(qū)產(chǎn)生不同的名字,但可以使用同一個 UUID 來訪問它們。如果有多個硬盤并且 BIOS/UEFI 沒有給它們一致的設備名的話,使用 UUID 是不錯的選擇。

mount(8) 命令帶有 “-U” 選項可以使用UUID 來掛載一個塊設備,而不必使用他的文件名稱,例如 “/dev/sda3”;

  • “/etc/fstab”可以使用 UUID;
  • 引載加載程序也可以使用 UUID。

可以使用 blkid(8) 來查看一個特定塊設備的 UUID。

也可以使用 “lsblk -f”來檢測 UUID 并查看其它信息。

四、LVM2

LVM2 是一個用于 Linux 內(nèi)核的邏輯卷管理器。使用 LVM2 的話,硬盤分區(qū)可以創(chuàng)建在邏輯卷上來替代物理硬盤。

LVM 有下列需求:

  • Linux 內(nèi)核中的設備映射支持(Debian 內(nèi)核默認支持);
  • 用戶自定義設備映射支持庫(libdevmapper* 軟件包);
  • 用戶自定義 LVM2 工具(lvm2 軟件包)。

請從下面的 man 手冊開始了解 LVM2:

  • lvm(8):LVM2 機制的基礎知識(列出了所有 LVM2 命令);
  • lvm.conf(5):LVM2 的配置文件;
  • lvs(8):報告邏輯卷的相關(guān)信息;
  • vgs(8):報告卷組的相關(guān)信息;
  • pvs(8):報告物理卷的相關(guān)信息。

五、文件系統(tǒng)配置

對于 ext4 文件系統(tǒng), e2fsprogs 包提供下面的工具:

  • mkfs.ext4(8) 創(chuàng)建新的 ext4 文件系統(tǒng);
  • fsck.ext4(8) 檢查和修復現(xiàn)有 ext4 文件系統(tǒng);
  • tune2fs(8) 配置 ext4 文件系統(tǒng)的超級塊。

debugfs(8) 交互式的調(diào)試 ext4 文件系統(tǒng). (它有 undel 命令來恢復已經(jīng)刪除的文件.)

mkfs(8) 和 fsck(8) 命令是由 e2fsprogs 包提供的,是各種文件系統(tǒng)相關(guān)程序的前端。(mkfs.fstype 和 fsck.fstype). 對于 ext4 文件系統(tǒng),它們是 mkfs.ext4(8) 和 fsck.ext4(8) (它們被符號鏈接到 mke2fs(8) 和 e2fsck(8)).

Linux 支持的每一個文件系統(tǒng),有相似的命令。

文件系統(tǒng)管理包列表:

軟件包 流行度 大小 說明
e2fsprogs V:767, I:999 1501 ext2/ext3/ext4 文件系統(tǒng)工具
btrfs-progs V:44, I:72 5078 Btrfs 文件系統(tǒng)工具
reiserfsprogs V:12, I:25 473 Reiserfs 文件系統(tǒng)工具
zfsutils-linux V:29, I:30 1755 OpenZFS 文件系統(tǒng)工具
dosfstools V:190, I:536 315 FAT 文件系統(tǒng)工具. (Microsoft: MS-DOS, Windows)
exfatprogs V:28, I:355 301 exFAT 文件系統(tǒng)工具,由三星維護。
exfat-fuse V:5, I:129 73 FUSE 讀寫 exFAT 文件系統(tǒng)(微軟)驅(qū)動。
exfat-utils V:4, I:116 231 exFAT 文件系統(tǒng)工具,由 exfat-fuse 的作者維護。
xfsprogs V:22, I:96 3493 XFS 文件系統(tǒng)工具. (SGI: IRIX)
ntfs-3g V:197, I:509 1470 FUSE 讀寫 NTFS 文件系統(tǒng)(微軟:Windows NT……)驅(qū)動。
jfsutils V:0, I:8 1577 JFS 文件系統(tǒng)工具. (IBM: AIX, OS/2)
reiser4progs V:0, I:2 1367 Reiser4 文件系統(tǒng)工具
hfsprogs V:0, I:5 394 HFS 和 HFS Plus 文件系統(tǒng)工具. (Apple: Mac OS)
zerofree V:5, I:130 25 把 ext2/3/4 文件系統(tǒng)上空閑塊設置為零的程序

Ext4 文件系統(tǒng)是 Linux 系統(tǒng)上默認的文件系統(tǒng),強烈推薦使用這個文件系統(tǒng),除非有特殊的理由不使用。

Btrfs 狀態(tài)能夠在 Debian wiki on btrfs 和 kernel.org wiki on btrfs 發(fā)現(xiàn)。它被期望作為 ext4 文件系統(tǒng)之后的下一個默認文件系統(tǒng)。

六、掛載選項文件系統(tǒng)創(chuàng)建

mkfs(8) 在 Linux 系統(tǒng)上創(chuàng)建文件系統(tǒng)。fsck(8) 命令在 Linux系統(tǒng)上提供文件系統(tǒng)完整性檢查和修復功能。

  • 在文件系統(tǒng)創(chuàng)建后,Debian 現(xiàn)在默認不周期性的運行 fsck;
  • 在已經(jīng)掛載的文件系統(tǒng)上運行 fsck ,一般是不安全的。

在 “/etc/mke2fs.conf” 里設置 “enable_periodic_fsck” 并使用 “tune2fs -c0 /dev/partition_name” 設置最大掛載數(shù)為 0,便可以在重啟時,讓 root 文件系統(tǒng)包括在內(nèi)的所有文件系統(tǒng)上,安全的運行fsck(8) 命令.

從啟動腳本里面運行的 fsck(8) 命令結(jié)果,可以在 “/var/log/fsck/” 目錄下查看。

七、優(yōu)化文件系統(tǒng)

“/etc/fstab” 中包含了基礎的靜態(tài)文件系統(tǒng)配置。例如,

?file system? ?mount point? ?type? ?options? ?dump? ?pass?
proc /proc proc defaults 0 0
UUID=709cbe4c-80c1-56db-8ab1-dbce3146d2f7 / ext4 errors=remount-ro 0 1
UUID=817bae6b-45d2-5aca-4d2a-1267ab46ac23 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0

UUID可以替代一般的塊設備名稱(例如 “/dev/sda1”、“/dev/sda2”……)來識別一個塊設備。從 Linux 2.6.30 起,內(nèi)核的默認行為是提供”relatime”選項。

八、超級塊優(yōu)化文件系統(tǒng)

一個文件系統(tǒng)的特性可以使用 tune2fs(8) 命令通過超級塊來優(yōu)化。

  • 執(zhí)行 “sudo tune2fs -l /dev/hda1” 可以顯示 “/dev/hda1” 上的文件系統(tǒng)超級塊內(nèi)容;
  • 執(zhí)行”sudo tune2fs -c 50 /dev/hda1″ 改變 “/dev/hda1” 文件系統(tǒng)的檢查(在啟動時執(zhí)行 fsck)頻率為每 50 次啟動;
  • 執(zhí)行 “sudo tune2fs -j /dev/hda1” 會給文件系統(tǒng)添加日志功能,即 “/dev/hda1” 的文件系統(tǒng)從 ext2 轉(zhuǎn)換為 ext3;
  • 執(zhí)行 “sudo tune2fs -O extents,uninit_bg,dir_index /dev/hda1 && fsck -pf /dev/hda1” 在 “/dev/hda1” 上將它從 ext3 轉(zhuǎn)換為 ext4。

盡管 tune2fs(8) 的名字是這樣的,但它不僅能用于 ext2 文件系統(tǒng),也能用于 ext3 和 ext4 文件系統(tǒng)。

九、硬盤優(yōu)化

在折騰硬盤配置之前,請檢查硬件并閱讀 hdparm(8) 的 man 手冊頁,因為這可能會對數(shù)據(jù)完整性造成相當大的危害。

可以通過 “hdparm -tT /dev/hda” 來測試 “/dev/hda” 硬盤的訪問速度。對于一些使用 (E)IDE 連接的硬盤,可以使用 “hdparm -q -c3 -d1 -u1 -m16 /dev/hda” 來啟用 “(E)IDE 32 位支持”、啟用 “using_dma flag”、設置 “interrupt-unmask flag” 并設置 “multiple 16 sector I/O”(危險?。?,從而加速硬盤訪問速度。

可以通過 “hdparm -W /dev/sda” 來測試 “/dev/sda” 硬盤的寫入緩存功能??梢允褂?“hdparm -W 0 /dev/sda” 關(guān)閉寫入緩存功能。

現(xiàn)代高速 CD-ROM 光驅(qū),可以使用 “setcd -x 2” 降低速度,來讀取不當壓縮的 CDROM 光盤。

十、固態(tài)硬盤優(yōu)化

固態(tài)硬盤(Solid state drive,SSD) 目前可以被自動檢測。在 /etc/fstab 里面,將易失性數(shù)據(jù)路徑掛載為 “tmpfs”,可以減少不必要的磁盤訪問來阻止磁盤損耗。

十一、SMART預測硬盤故障

可以使用兼容 SMART 的 smartd(8) 后臺守護進程(daemon)來監(jiān)控和記錄硬盤。

1、在 BIOS 中啟用 SMART 功能。

2、安裝 smartmontools 軟件包。

3、通過 df(1) 列出硬盤驅(qū)動并識別它們。假設要監(jiān)控的硬盤為 “/dev/hda”。

4、檢查 “smartctl -a /dev/hda” 的輸出,看 SMART 功能是否已啟用。如果沒有,通過 “smartctl -s on -a /dev/hda” 啟用它。

5、通過下列方式運行 smartd(8) 后臺守護進程(daemon)。

  • 消除 /etc/default/smartmontools” 文件中 “start_smartd=yes” 的注釋;
  • 通過 “sudo systemctl restart smartmontools” 重新啟動 smartd(8) 后臺守護進程(daemon)。

smartd(8) 后臺守護進程(daemon)可以使用 /etc/smartd.conf 文件進行自定義,文件中包含了相關(guān)的警告。

十二、$TMPDIR指定存儲目錄

應用程序一般在臨時存儲目錄 “/tmp” 下建立臨時文件。如果 “/tmp” 沒有足夠的空間,可以通過 $TMPDIR 變量來為程序指定臨時存儲目錄。

十三、LVM擴展存儲空間

在安裝時創(chuàng)建在 Logical Volume Manager 邏輯卷管理(LVM) (Linux 特性) 上的分區(qū),它們可以容易的通過合并擴展或刪除擴展的方式改變大小,而不需要在多個存儲設備上進行大量的重新配置。

十四、擴展可用存儲空間

1、通過掛載另一個分區(qū)來擴展可用存儲空間

如果有一個空的分區(qū)(例如 “/dev/sdx”),可以使用 mkfs.ext4(1) 將它格式化,并使用 mount(8) 將它掛載到需要更多空間的目錄。(需要復制原始數(shù)據(jù)內(nèi)容。)

$ sudo mv work-dir old-dir
$ sudo mkfs.ext4 /dev/sdx
$ sudo mount -t ext4 /dev/sdx work-dir
$ sudo cp -a old-dir/* work-dir
$ sudo rm -rf old-dir

也可以選擇掛載一個空硬盤映像文件作為一個循環(huán)設備。實際的硬盤使用量會隨著實際存儲數(shù)據(jù)的增加而增加。

2、通過 “mount –bind” 掛載另一個目錄來擴展可用存儲空間

如果在另一個分區(qū)里有一個帶有可用空間的空目錄(例如 “/path/to/emp-dir”),可以通過帶有 “–bind” 選項的 mount(8),將它掛載到一個需要更多空間的目錄(例如 “work-dir”)。

$ sudo mount --bind /path/to/emp-dir work-dir

3、通過 overlay 掛載(overlay-mounting)另一個目錄來擴展可用存儲空間

如果在另一個分區(qū)表中有可用的空間(例如,“/path/to/empty” 和 “/path/to/work”),可以在其中建立一個目錄并堆棧到需要空間的那個舊的目錄(例如,“/path/to/old”),要這樣做,需要用于 Linux 3.18 版內(nèi)核或更新版本(對應 Debian Stetch 9.0 或更新版本)的 OverlayFS。

$ sudo mount -t overlay overlay \
-olowerdir=/path/to/old-dir,upperdir=/path/to/empty,workdir=/path/to/work

“/path/to/empty” 和 “/path/to/work” 應該位于可讀寫的分區(qū),從而能夠?qū)懭?“/path/to/old”。

4、使用符號鏈接擴展可用存儲空間

這是一個已棄用的做法。某些軟件在遇到“軟鏈接目錄”時可能不會正常工作。請優(yōu)先使用上文所述的“掛載”的途徑。

如果在另一個分區(qū)里有一個帶有可用空間的空目錄(例如 “/path/to/emp-dir”),可以使用 ln(8) 建立目錄的一個符號鏈接。

$ sudo mv work-dir old-dir
$ sudo mkdir -p /path/to/emp-dir
$ sudo ln -sf /path/to/emp-dir work-dir
$ sudo cp -a old-dir/* work-dir
$ sudo rm -rf old-dir

別對由系統(tǒng)管理的目錄(例如 “/opt”)使用“鏈接到目錄”,這樣的鏈接在系統(tǒng)升級時可能會被覆蓋。

  • 廣告合作

  • QQ群號:4114653

溫馨提示:
1、本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享網(wǎng)絡內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。郵箱:2942802716#qq.com(#改為@)。 2、本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)裁,轉(zhuǎn)載請注明出處“站長百科”和原文地址。