首先需確認系統中交換分區(如/dev/sda2
)或交換文件(如/swapfile
)的位置。常用命令:
sudo swapon --show # 顯示當前啟用的交換空間及大小
sudo fdisk -l # 查看磁盤分區詳情(確認交換分區設備名)
若使用交換分區,使用dd
命令完整復制分區內容到備份文件:
sudo dd if=/dev/sda2 of=/path/to/backup/swap_backup.img bs=4M status=progress
if
為輸入文件(交換分區設備),of
為輸出文件(備份路徑),bs
為塊大?。ㄌ嵘俣龋?,status=progress
顯示進度。gzip
壓縮以節省空間:sudo gzip /path/to/backup/swap_backup.img
若使用交換文件(如/swapfile
),可直接用dd
或rsync
復制:
sudo dd if=/swapfile of=/path/to/backup/swapfile_backup.img bs=4M
# 或使用rsync(保留文件屬性)
sudo rsync -a /swapfile /path/to/backup/
sudo swapoff -a
swapoff -a
關閉)。fdisk
/gparted
)并調整大?。ㄅc原分區一致或更大)。sudo gunzip /path/to/backup/swap_backup.img.gz
使用dd
命令將備份文件內容寫入目標分區:
sudo dd if=/path/to/backup/swap_backup.img of=/dev/sda2 bs=4M
if
為備份文件路徑,of
為目標分區設備(如/dev/sda2
)。將備份文件復制到原位置,并設置正確權限:
sudo cp /path/to/backup/swapfile_backup.img /swapfile
sudo chown root:root /swapfile # 設置所有者為root
sudo chmod 600 /swapfile # 設置權限(僅root可讀寫)
mkswap
重新格式化(若為分區):sudo mkswap /dev/sda2 # 僅分區需要此步驟
sudo swapon /dev/sda2 # 分區
sudo swapon /swapfile # 文件
sudo swapon --show # 查看啟用的交換空間
free -h # 查看虛擬內存使用情況
/etc/fstab
(持久化配置)若恢復到原位置,需確保/etc/fstab
中包含正確條目(避免重啟后失效):
echo "/dev/sda2 none swap sw 0 0" | sudo tee -a /etc/fstab
echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
tune2fs -U <原UUID> /dev/sdXn
修改,通過blkid
查看原UUID)。通過以上步驟,可安全完成Debian系統中交換分區或交換文件的備份與恢復,保障系統虛擬內存的可靠性。