從零開始:Linux系統(tǒng)安裝與分區(qū)最佳實踐
運維老司機的肺腑之言:系統(tǒng)分區(qū)就像房屋裝修的水電布局,一旦做錯,后期改動成本巨大!本文將分享我10年運維經(jīng)驗中總結的分區(qū)策略和安裝技巧。
開篇:為什么分區(qū)策略如此重要?
還記得第一次裝Linux系統(tǒng)時的忐忑嗎?面對fdisk命令行界面,不知道該如何下手。經(jīng)歷過無數(shù)次系統(tǒng)重裝、數(shù)據(jù)丟失的痛苦后,我總結出了這套"零事故"的分區(qū)方案。
真實案例:某公司數(shù)據(jù)庫服務器因為分區(qū)不當,日志文件撐爆了根分區(qū),導致系統(tǒng)無法啟動,最終損失200萬。這樣的悲劇,完全可以通過合理分區(qū)避免!
分區(qū)策略全景圖
生產(chǎn)環(huán)境推薦分區(qū)方案
# 標準服務器分區(qū)布局(以500GB硬盤為例) /boot - 1GB (啟動分區(qū),獨立確保系統(tǒng)可啟動) / - 50GB (根分區(qū),系統(tǒng)核心文件) /home - 100GB (用戶數(shù)據(jù),方便遷移和備份) /var - 150GB (日志和緩存,避免撐爆系統(tǒng)) /tmp - 20GB (臨時文件,定期清理) /opt - 100GB (第三方軟件安裝目錄) swap - 16GB (虛擬內存,建議為物理內存1-2倍) /data - 剩余 (業(yè)務數(shù)據(jù)專用分區(qū))
不同場景的分區(qū)策略
桌面用戶方案
/ - 100GB (系統(tǒng)+軟件) /home - 剩余 (個人文件) swap - 8GB (內存<16GB時設置)
開發(fā)環(huán)境方案
/ - 80GB (系統(tǒng)核心) /home - 200GB (開發(fā)項目) /var - 50GB (構建緩存) /opt - 100GB (開發(fā)工具) swap - 16GB /workspace - 剩余 (項目代碼專用)
云服務器方案
/ - 40GB (精簡系統(tǒng)) /var - 60GB (日志監(jiān)控) /data - 剩余 (應用數(shù)據(jù)) swap - 文件形式(靈活調整)
安裝前的硬件檢查清單
BIOS/UEFI 配置要點
# 檢查啟動模式 [ -d /sys/firmware/efi ] &&echo"UEFI模式"||echo"Legacy模式" # 關鍵BIOS設置: Secure Boot: 建議關閉(避免驅動問題) SATA Mode: AHCI模式(性能最佳) Virtualization: 開啟(支持容器和虛擬化) UEFI Boot: 推薦開啟(支持大硬盤)
硬盤健康檢查
# 安裝前必做的硬盤檢測 smartctl -a /dev/sda # 查看硬盤健康狀態(tài) badblocks -v /dev/sda # 壞道檢測 hdparm -tT /dev/sda # 性能測試 # 關鍵指標解讀: # Reallocated_Sector_Ct: >0 需警惕 # Current_Pending_Sector: >0 立即更換 # UDMA_CRC_Error_Count: >1000 檢查數(shù)據(jù)線
分區(qū)實戰(zhàn)演練
方案一:命令行專業(yè)分區(qū)(推薦)
# 1. 查看磁盤信息 lsblk fdisk -l # 2. 進入分區(qū)工具 fdisk /dev/sda # 3. 創(chuàng)建GPT分區(qū)表(支持大硬盤) g # 創(chuàng)建GPT分區(qū)表 # 4. 創(chuàng)建EFI分區(qū)(UEFI必需) n # 新建分區(qū) 1 # 分區(qū)號 # 起始扇區(qū)(默認) +512M# 大小 t # 更改分區(qū)類型 1 # EFI System # 5. 創(chuàng)建boot分區(qū) n 2 +1G t 2 20 # Linux filesystem # 6. 創(chuàng)建LVM分區(qū)(靈活管理) n 3 # 使用剩余空間 t 3 30 # Linux LVM w # 寫入分區(qū)表
方案二:LVM動態(tài)分區(qū)(企業(yè)首選)
# 1. 創(chuàng)建物理卷 pvcreate /dev/sda3 # 2. 創(chuàng)建卷組 vgcreate vg_system /dev/sda3 # 3. 創(chuàng)建邏輯卷 lvcreate -L 50G -n lv_root vg_system # 根分區(qū) lvcreate -L 150G -n lv_var vg_system # var分區(qū) lvcreate -L 100G -n lv_home vg_system # home分區(qū) lvcreate -L 20G -n lv_tmp vg_system # tmp分區(qū) lvcreate -L 16G -n lv_swap vg_system # swap分區(qū) # 4. LVM的最大優(yōu)勢:后期可調整! lvextend -L +50G /dev/vg_system/lv_var # 擴容var分區(qū) resize2fs /dev/vg_system/lv_var # 擴展文件系統(tǒng)
文件系統(tǒng)選擇策略
主流文件系統(tǒng)對比
| 文件系統(tǒng) | 適用場景 | 優(yōu)勢 | 劣勢 |
| ext4 | 通用場景 | 穩(wěn)定、兼容性好 | 性能一般 |
| xfs | 大文件、高IO | 高性能、支持大文件 | 不支持縮容 |
| btrfs | 現(xiàn)代化需求 | 快照、壓縮、校驗 | 相對較新 |
| zfs | 企業(yè)存儲 | 數(shù)據(jù)完整性、壓縮 | 內存消耗大 |
實戰(zhàn)文件系統(tǒng)創(chuàng)建
# ext4 - 通用推薦 mkfs.ext4 -L"root"/dev/vg_system/lv_root mkfs.ext4 -L"home"/dev/vg_system/lv_home # xfs - 高性能場景 mkfs.xfs -L"var"/dev/vg_system/lv_var mkfs.xfs -L"data"/dev/vg_system/lv_data # 設置swap mkswap /dev/vg_system/lv_swap # 優(yōu)化掛載參數(shù) mount -o defaults,noatime,discard /dev/vg_system/lv_root /mnt
系統(tǒng)安裝核心技巧
網(wǎng)絡安裝配置(推薦)
# 1. 配置網(wǎng)絡源(提升安裝速度) # CentOS/RHEL 清華源 sed -i's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsinghua.edu.cn|g'/etc/yum.repos.d/CentOS-Base.repo # Ubuntu 阿里源 cat> /etc/apt/sources.list <'EOF' deb https://mirrors.aliyun.com/ubuntu/ focal main restricted deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted deb https://mirrors.aliyun.com/ubuntu/ focal universe deb https://mirrors.aliyun.com/ubuntu/ focal-updates universe EOF # 2. 最小化安裝 + 后期定制 # 只安裝Base System,避免無用軟件包
自動化安裝腳本
#!/bin/bash
# auto_install.sh - 自動化分區(qū)腳本
DISK="/dev/sda"
VG_NAME="vg_system"
# 分區(qū)自動化
parted -s$DISKmklabel gpt
parted -s$DISKmkpart ESP fat32 1MiB 513MiB
parted -s$DISKset1 esp on
parted -s$DISKmkpart primary 513MiB 1537MiB
parted -s$DISKmkpart primary 1537MiB 100%
parted -s$DISKset3 lvm on
# LVM自動化
pvcreate${DISK}3
vgcreate$VG_NAME${DISK}3
lvcreate -L 50G -n lv_root$VG_NAME
lvcreate -L 16G -n lv_swap$VG_NAME
lvcreate -l 100%FREE -n lv_home$VG_NAME
# 文件系統(tǒng)創(chuàng)建
mkfs.fat -F32${DISK}1
mkfs.ext4${DISK}2
mkfs.ext4 /dev/$VG_NAME/lv_root
mkfs.ext4 /dev/$VG_NAME/lv_home
mkswap /dev/$VG_NAME/lv_swap
echo"分區(qū)完成!準備安裝系統(tǒng)..."
性能優(yōu)化黃金配置
fstab優(yōu)化配置
# /etc/fstab 優(yōu)化示例 UUID=xxx / ext4 defaults,noatime,discard 0 1 UUID=xxx /boot ext4 defaults,noatime 0 2 UUID=xxx /home ext4 defaults,noatime,discard 0 2 UUID=xxx /var xfs defaults,noatime,discard 0 2 UUID=xxx /tmp ext4 defaults,noatime,discard,nodev,nosuid,noexec 0 2 UUID=xxx none swap defaults 0 0 # 關鍵參數(shù)解釋: # noatime: 不更新訪問時間,提升性能 # discard: 支持SSD TRIM,延長壽命 # nodev,nosuid,noexec: /tmp安全加固
內核參數(shù)調優(yōu)
# /etc/sysctl.conf 生產(chǎn)環(huán)境優(yōu)化 vm.swappiness = 10 # 降低換頁頻率 vm.dirty_ratio = 15 # 臟頁刷新比例 vm.dirty_background_ratio = 5 # 后臺刷新比例 fs.file-max = 2097152 # 最大文件句柄數(shù) net.core.rmem_max = 16777216 # 網(wǎng)絡緩沖區(qū)優(yōu)化 net.core.wmem_max = 16777216
安全加固策略
分區(qū)安全設置
# 1. /tmp 安全掛載 mount -o remount,nodev,nosuid,noexec /tmp # 2. /var/tmp 鏈接到 /tmp rm-rf /var/tmp ln-s /tmp /var/tmp # 3. 禁用不必要的文件系統(tǒng) echo"install cramfs /bin/true">> /etc/modprobe.d/blacklist.conf echo"install freevxfs /bin/true">> /etc/modprobe.d/blacklist.conf echo"install jffs2 /bin/true">> /etc/modprobe.d/blacklist.conf
磁盤加密方案
# LUKS全盤加密(高安全需求) cryptsetup luksFormat /dev/sda3 cryptsetup luksOpen /dev/sda3 encrypted_lvm pvcreate /dev/mapper/encrypted_lvm # 后續(xù)LVM操作與常規(guī)相同 # 生產(chǎn)環(huán)境建議:敏感數(shù)據(jù)分區(qū)加密,系統(tǒng)分區(qū)不加密
常見問題解決方案
安裝過程問題排查
# 1. 啟動失敗排查 # 檢查grub配置 grub2-mkconfig -o /boot/grub2/grub.cfg # 重新安裝grub grub2-install /dev/sda # 2. 分區(qū)識別問題 # 更新分區(qū)表 partprobe /dev/sda # 檢查UUID blkid /dev/sda1 # 3. LVM激活問題 vgchange -ay # 激活所有卷組 vgscan # 掃描卷組 pvscan # 掃描物理卷
救援模式操作
# 系統(tǒng)無法啟動時的救援步驟 # 1. 啟動救援模式 # 2. 激活LVM vgchange -ay # 3. 掛載根分區(qū) mount /dev/vg_system/lv_root /mnt/sysimage # 4. 進入chroot環(huán)境 chroot/mnt/sysimage # 5. 修復問題后重啟
監(jiān)控與維護
分區(qū)使用率監(jiān)控
#!/bin/bash
# disk_monitor.sh - 磁盤監(jiān)控腳本
THRESHOLD=80
df-h | awk'NR>1 {
usage = $5
gsub(/%/, "", usage)
if (usage > THRESHOLD) {
print "警告: " $6 " 分區(qū)使用率達到 " $5
print "可用空間: " $4
}
}'| mail -s"磁盤空間警告"admin@company.com
LVM擴容操作
# 在線擴容步驟(生產(chǎn)環(huán)境驗證) # 1. 添加新硬盤 pvcreate /dev/sdb vgextend vg_system /dev/sdb # 2. 擴展邏輯卷 lvextend -L +100G /dev/vg_system/lv_var # 3. 擴展文件系統(tǒng) # ext4 resize2fs /dev/vg_system/lv_var # xfs xfs_growfs /var
高級技巧分享
自動化部署集成
# kickstart 配置示例(CentOS/RHEL) cat> /var/www/html/ks.cfg <'EOF' #version=RHEL8 ignoredisk --only-use=sda autopart --type=lvm clearpart --all --initlabel --drives=sda # 分區(qū)自定義 part /boot --fstype="xfs"?--ondisk=sda --size=1024 part pv.01 --fstype="lvmpv"?--ondisk=sda --grow volgroup vg_system --pesize=4096 pv.01 logvol / --fstype="xfs"?--size=51200 --name=lv_root --vgname=vg_system logvol /var --fstype="xfs"?--size=153600 --name=lv_var --vgname=vg_system logvol swap --fstype="swap"?--size=16384 --name=lv_swap --vgname=vg_system EOF
容器化環(huán)境分區(qū)
# Docker/Kubernetes 節(jié)點分區(qū)建議 / - 50GB (系統(tǒng)核心) /var/lib/docker - 200GB (容器存儲) /var/lib/kubelet - 100GB (Pod存儲) /data - 剩余 (持久化存儲) # 使用專用文件系統(tǒng) mkfs.xfs -n ftype=1 /dev/vg_system/lv_docker # Docker需要
安裝后檢查清單
系統(tǒng)健康檢查
# 完整的系統(tǒng)檢查腳本 #!/bin/bash echo"=== 系統(tǒng)安裝驗證報告 ===" echo"安裝時間:$(date)" echo"" echo"1. 分區(qū)信息:" df-h echo"" echo"2. LVM狀態(tài):" vgs lvs echo"" echo"3. 掛載點檢查:" mount | column -t echo"" echo"4. 系統(tǒng)負載:" uptime free -h echo"" echo"5. 磁盤IO性能:" ddif=/dev/zero of=/tmp/testfile bs=1G count=1 oflag=direct rm-f /tmp/testfile echo"" echo"6. 網(wǎng)絡連通性:" ping -c 3 8.8.8.8 echo"" echo"=== 驗證完成 ==="
總結與最佳實踐
黃金法則
1.規(guī)劃先行:永遠不要急著分區(qū),先畫出分區(qū)圖
2.預留空間:LVM至少保留20%空間用于擴容
3.分離關鍵目錄:/var、/tmp、/home獨立分區(qū)
4.備份重要數(shù)據(jù):分區(qū)前務必備份重要文件
5.測試驗證:生產(chǎn)環(huán)境方案先在測試機驗證
運維老司機的忠告
? 選擇合適的方案:沒有最好的分區(qū)方案,只有最適合的
? 自動化是趨勢:手工分區(qū)效率低,擁抱自動化工具
? 監(jiān)控不能少:分區(qū)不是一勞永逸,需要持續(xù)監(jiān)控
? 保持學習:技術在發(fā)展,分區(qū)策略也要與時俱進
進階學習路徑
1.容器化存儲:學習Docker、Kubernetes的存儲方案
2.軟件定義存儲:Ceph、GlusterFS等分布式存儲
3.云原生存儲:CSI、StorageClass等Kubernetes存儲概念
4.存儲性能優(yōu)化:NVMe、存儲分層等前沿技術
-
Linux
+關注
關注
88文章
11758瀏覽量
219004 -
服務器
+關注
關注
14文章
10251瀏覽量
91478 -
數(shù)據(jù)庫
+關注
關注
7文章
4019瀏覽量
68331
原文標題:從零開始:Linux系統(tǒng)安裝與分區(qū)最佳實踐
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
如何在Ubuntu Linux上釋放/boot分區(qū)中的空間
Linux安裝的幾點經(jīng)驗
linux安裝中出現(xiàn)的分區(qū)問題?
Linux系統(tǒng)安裝時分區(qū)的選擇(推薦)
使用VMware給虛擬機安裝linux系統(tǒng)
怎么讓linux系統(tǒng)支持ntfs分區(qū)
Linux系統(tǒng)的性能優(yōu)化策略
安裝Linux操作系統(tǒng)課件
如何分區(qū)LINUX安裝系統(tǒng)
Linux快速入門之Linux安裝
Linux系統(tǒng)安裝技巧與分區(qū)策略
評論