新增多篇Linux技术文档,涵盖基础命令、文件操作、用户权限、网络配置、进程管理、软件安装、系统监控和磁盘管理等主题。每篇文档包含详细命令示例和使用说明,适合作为Linux系统管理参考手册。 文档内容包含: 1. Linux基础命令与快捷键 2. 文件操作与查找技巧 3. 用户管理与权限配置 4. 网络配置与防火墙管理 5. 进程与服务管理方法 6. 软件包管理与安装 7. 系统资源监控命令 8. 磁盘分区与LVM管理
6.9 KiB
6.9 KiB
title, date, author, top_img, tags, categories
| title | date | author | top_img | tags | categories | |||||
|---|---|---|---|---|---|---|---|---|---|---|
| Linux磁盘管理 | 2021-04-07 16:04:58 | 文永达 | https://gcore.jsdelivr.net/gh/volantis-x/cdn-wallpaper/abstract/00E0F0ED-9F1C-407A-9AA6-545649D919F4.jpeg |
|
|
Linux磁盘管理
磁盘空间查看
df 命令
查看磁盘整体情况。
# 统计磁盘整体情况
df -lh
du 命令
查看目录占用空间。
# 查看根目录下文件夹大小
du -sh /*
安装与分区
Linux分区顺序
- boot 分区:引导启动分区,通常 200-500M
- swap 分区:缓存分区,通常为物理内存的 2 倍
- 根分区(/):剩余空间分配给根分区
- home 分区:可选
LVM扩容
旧有卷扩容
将 /home 部分空间合并至 / 下。
1. 查看当前分区
df -h
2. 查看卷的文件系统类型
mount | grep home
3. 安装备份工具
dnf install -y xfsdump
4. 备份 /home
xfsdump -f ~/sdb_dump/ /home -M sdb_home -L sdb_home_1
5. 卸载 /home
umount /home/
df -h
6. 移除逻辑卷
⚠️ 删除前请确保重要文件已备份!
lvremove /dev/mapper/almalinux-home
7. 扩展根分区
# 扩展根分区增加8.7G
lvresize -L +8.7G /dev/mapper/almalinux-root
lsblk
8. 扩展文件系统
xfs_growfs /
df -h
9. 重新创建 home 逻辑卷
lvcreate -L 9G -n home almalinux
lsblk
10. 扩展剩余空间给 home
lvextend -l +100%FREE -n /dev/mapper/almalinux-home
lsblk
11. 格式化并挂载
# 格式化
mkfs.xfs /dev/mapper/almalinux-home
# 挂载(因lv名称和挂载点不变,无需修改/etc/fstab)
mount -a
df -Th
12. 还原数据
xfsrestore -f sdb_dump /home/
新加卷扩容
1. 查看现有分区大小
df -Th
2. 查看扩容后磁盘大小
lsblk
3. 创建分区
fdisk /dev/sda
fdisk 操作步骤:
- 输入
n创建新分区 - 选择分区类型(主分区/扩展分区)
- 设置分区大小
- 输入
w保存更改
4. 刷新分区并创建物理卷
partprobe /dev/sda
pvcreate /dev/sda4
5. 查看卷组
vgdisplay
6. 将物理卷扩展到卷组
vgextend rl /dev/sda4
7. 查看逻辑卷
lvdisplay
8. 扩展根分区逻辑卷
lvextend -l +100%FREE /dev/rl/root
9. 刷新根分区
xfs_growfs /dev/rl/root
分区格式转换
Microsoft 基本数据 → Linux 文件系统
1. 查看当前分区类型
fdisk -l
2. 转换分区类型
fdisk /dev/sdb
# 输入 t 命令(转换分区类型)
t
# 输入 20(Linux file system)
20
# 输入 w(写入更改)
w
3. 手动挂载硬盘
mkdir /sdb
mount -t ext3 /dev/sdb1 /sdb
4. 查看挂载结果
df -Th
5. 设置自动挂载
查看硬盘UUID:
blkid /dev/sdb1
编辑 /etc/fstab:
vim /etc/fstab
# 添加以下行
UUID=7d592b46-68dc-41c2-bdb3-7ee410f0bb33 /sdb ext3 defaults 0 0
重载配置:
systemctl daemon-reload
ext3 升级 ext4
1. 确认当前文件系统类型
df -Th | grep /dev/sdb1
2. 卸载目标分区
⚠️ 不能对正在使用的根分区操作
umount /dev/sdb1
3. 检查并修复文件系统
e2fsck -f /dev/sdb1
4. 将 ext3 转换为 ext4
tune2fs -O has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize /dev/sdb1
5. 查看转换是否成功
dumpe2fs -h /dev/sdb1 | grep features
确认输出中包含:extent、huge_file、flex_bg、uninit_bg、dir_nlink、extra_isize
6. 再次检查文件系统
e2fsck -f /dev/sdb1
7. 挂载并验证
mount -t ext4 /dev/sdb1 /sdb
df -Th | grep /dev/sdb1
8. 修改 /etc/fstab
/dev/sdb1 /sdb ext4 defaults 0 0
NTFS → ext4
1. 确认目标分区
lsblk -f
2. 卸载分区
sudo umount /dev/sda1
3. 格式化为 ext4
sudo mkfs.ext4 /dev/sda1
4. 验证结果
lsblk -f
挂载卷
Windows 网络共享位置
1. 创建挂载目录
mkdir -p /mnt/wdshare/
2. 安装依赖
dnf install -y cifs-utils
3. 挂载
mount -t cifs -o username=user,password=backup //192.168.0.1/备份 /mnt/wdshare/
4. 永久挂载
编辑 /etc/fstab:
//192.168.0.1/备份 /mnt/wdshare/ cifs username=user,password=backup 0 0
重载配置:
sudo systemctl daemon-reload
sudo mount -a
NTFS 分区
1. 识别NTFS分区
sudo parted -l
2. 创建挂载点
sudo mkdir /mnt/ntfs1
3. 安装依赖
sudo apt update
sudo apt install fuse -y
sudo apt install ntfs-3g -y
4. 挂载分区
sudo mount -t ntfs-3g /dev/sda1 /mnt/ntfs1/
5. 验证挂载
df -Th
6. 永久挂载
编辑 /etc/fstab:
/dev/sda1 /mnt/ntfs1 fuseblk defaults 0 0
重载配置:
sudo systemctl daemon-reload
Swap配置
创建Swap分区
1. 查看当前Swap大小
free -h
2. 创建Swap文件
# 创建4G的swap文件
dd if=/dev/zero of=/home/swap bs=1024 count=4194304
count值 = 大小(M) × 1024
3. 格式化Swap分区
mkswap /home/swap
4. 启用Swap
swapon /home/swap
5. 设置自动挂载
编辑 /etc/fstab:
/home/swap swap swap default 0 0
关闭Swap
swapoff /home/swap
修改Swap使用率
swappiness 值表示使用 swap 的倾向:
0:最大限度使用物理内存100:积极使用 swap
1. 查看当前值
cat /proc/sys/vm/swappiness
2. 临时修改
sysctl vm.swappiness=60
3. 永久修改
编辑 /etc/sysctl.conf:
vm.swappiness=60
应用更改:
sysctl -p
内核升级
CentOS 7.9 内核升级
1. 查看当前内核版本
uname -a
2. 查看系统版本
cat /etc/redhat-release
3. 导入公钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
4. 安装ELRepo
yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
5. 安装新内核
yum --enablerepo=elrepo-kernel install kernel-ml -y &&
sed -i s/saved/0/g /etc/default/grub &&
grub2-mkconfig -o /boot/grub2/grub.cfg
6. 重启系统
reboot
7. 验证内核版本
uname -a