学习主题:Linux 文件系统基本管理 + 硬盘分区管理
Linux速成记 - 文件系统与硬盘分区学习主题Linux 文件系统基本管理 硬盘分区管理一、复习和预习昨天课堂内容回顾源码安装应用自建仓库计划任务进程调度今天课前练习课前测试回顾上节课学习的源码安装、YUM仓库配置等内容。二、Linux 文件系统基本管理2.1 识别文件系统和设备Linux 中的设备在 Linux 中对存储设备的访问由特殊类型文件——**块设备block**提供。挂载块设备前必须先使用文件系统对其进行格式化。块设备文件存储在/dev目录中由操作系统自动创建。常见块设备类型接口类型设备名称示例SATA/SAS/USB/SCSI/dev/sda、/dev/sdbvirtio-blk虚拟磁盘/dev/vda、/dev/vdbNVMe SSD/dev/nvme0n1、/dev/nvme1n1SD/MMC/eMMC/dev/mmcblk0、/dev/mmcblk1设备分区命名规则通常不会将整个存储设备格式化为一个文件系统而是将硬盘划分为多个逻辑单元分区。[ggcentos7 ~ 16:08:47]$ ls /dev/sda* /dev/sda /dev/sda1 /dev/sda2 [ggcentos7 ~ 16:09:12]$ ls /dev/vda* /dev/vda /dev/vda1 /dev/vda2 [ggcentos7 ~ 16:10:35]$ ls /dev/nvme0n1* /dev/nvme0n1 /dev/nvme0n1p1 /dev/nvme0n1p2分区命名规律/dev/sda第一个分区为/dev/sda1第二个为/dev/sda2/dev/vda→/dev/vda1、/dev/vda2/dev/nvme0n1→/dev/nvme0n1p1、/dev/nvme0n1p2Linux 文件系统文件系统是操作系统用于明确存储设备或分区上的文件的方法和数据结构即在存储设备上组织文件的方法。[ggcentos7 ~ 16:12:08]$ df -T Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/sda1 xfs 104857600 30720000 74137600 29% / /dev/sda2 xfs 52428800 1024000 51404800 2% /data /dev/sdb1 ext4 20971520 32 19820000 1% /mnt/backup管理文件系统需要关注确定存储设备的空间使用情况存储设备发生故障时知道哪些文件系统存在风险将文件系统挂载到空目录挂载点2.2 查看设备和文件系统lsblk 命令 - 查看块设备作用查看块设备使用情况[ggcentos7 ~ 16:13:45]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 200G 0 disk ├─sda1 8:1 0 100G 0 part / ├─sda2 8:2 0 50G 0 part /data └─sda3 8:3 0 50G 0 part [SWAP] sdb 8:16 0 500G 0 disk └─sdb1 8:17 0 500G 0 part sr0 11:0 1 1024M 0 rom字段说明字段说明NAME块设备名MAJ:MIN主/次设备号RM是否为可移动设备1是SIZE设备容量RO是否为只读0否TYPE磁盘/分区/ROMMOUNTPOINT挂载点df 命令 - 查看文件系统使用情况作用查看文件系统使用情况[ggcentos7 ~ 16:15:22]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 100G 30G 71G 29% / /dev/sda2 50G 2.0G 49G 4% /data tmpfs 3.9G 0 3.9G 0% /dev/shmdu 命令 - 查看目录占用空间作用查看目录和文件占用磁盘空间大小[ggcentos7 ~ 16:17:08]$ du -sh /var/log/* 12M /var/log/audit 8.0K /var/log/boot.log 4.0M /var/log/lastlog 0 /var/log/maillog 4.0K /var/log/messages案例查找哪个文件占用大量空间[ggcentos7 ~ 16:18:35]$ du -h --max-depth1 / | sort -rh | head -20 48G / 18G /var 12G /usr 8.5G /home 5.2G /opt 2.1G /data ...Linux 思想尽可能使用各种小工具完成复杂任务每个小工具专注于特定功能KISS 原则。2.3 挂载和卸载文件系统环境准备[ggcentos7 ~ 16:20:12]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 200G 0 disk ├─sda1 8:1 0 100G 0 part / └─sda2 8:2 0 50G 0 part /data sdb 8:16 0 500G 0 disk └─sdb1 8:17 0 500G 0 part挂载文件系统 - mount 命令当需要使用文件系统时通过mount命令挂载。语法mount [选项] 设备 挂载点常用选项-t vfstype指明文件系统类型-o options指明挂载选项device设备路径可通过 UUID、LABEL 等方式指定[ggcentos7 ~ 16:22:45]$ mkdir -p /mnt/data [ggcentos7 ~ 16:23:18]$ mount -t xfs /dev/sdb1 /mnt/data [ggcentos7 ~ 16:23:52]$ df -h | grep sdb1 /dev/sdb1 500G 32M 500G 1% /mnt/data查看系统当前所有挂载[ggcentos7 ~ 16:25:30]$ mount | grep /dev/sdb1 /dev/sdb1 on /mnt/data type xfs (rw,relatime,seclabel)卸载文件系统 - umount 命令当文件系统不再使用时通过umount命令卸载。语法umount 设备或挂载点[ggcentos7 ~ 16:27:05]$ umount /mnt/data [ggcentos7 ~ 16:27:38]$ df -h | grep sdb1 # 无输出说明已卸载卸载失败处理lsof 命令 - 查看打开的文件作用查看系统打开的文件[ggcentos7 ~ 16:29:12]$ lsof /mnt/data COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 12345 gg cwd DIR 8,17 4096 64 /mnt/data vim 12346 gg cwd DIR 8,17 4096 64 /mnt/data/test.txt常用选项-i查看打开的 Internet 文件如-i :80-p pid根据进程 PID 查找-u uid根据用户 UID 查找fuser 命令 - 识别进程打开的文件作用识别哪些进程正在使用文件[ggcentos7 ~ 16:31:48]$ fuser -v /mnt/data USER PID ACCESS COMMAND /mnt/data: root 12345 ..c.. bash gg 12346 ..c.. vim常用选项-k杀死访问文件的进程-i交互模式杀进程-m列出文件系统被哪些程序使用终止进程后再次卸载[ggcentos7 ~ 16:33:25]$ fuser -km /mnt/data /mnt/data: 12345c 12346c [ggcentos7 ~ 16:34:02]$ umount /mnt/data [ggcentos7 ~ 16:34:15]$ df -h | grep sdb1 # 卸载成功2.4 挂载特殊文件系统案例1Linux 挂载 NTFS 格式 U 盘思路默认情况下 Linux 不识别 NTFS 格式需要安装相应模块。[ggcentos7 ~ 16:35:48]$ yum install -y ntfs-3g Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com ... Complete![ggcentos7 ~ 16:37:15]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 200G 0 disk sdb 8:16 1 16G 0 disk # U盘 └─sdb1 8:17 1 16G 0 part [ggcentos7 ~ 16:38:42]$ mkdir -p /mnt/usb [ggcentos7 ~ 16:39:18]$ mount -t ntfs-3g /dev/sdb1 /mnt/usb [ggcentos7 ~ 16:39:55]$ ls /mnt/usb 学习资料 工作文档 图片.zip案例2Linux 挂载 exfat 格式 U 盘[ggcentos7 ~ 16:41:30]$ yum install -y exfat-utils fuse-exfat ... Complete! [ggcentos7 ~ 16:43:08]$ mount -t exfat /dev/sdb1 /mnt/usb [ggcentos7 ~ 16:43:45]$ ls /mnt/usb 视频 音频 文档案例3构建基于 ISO 文件的 YUM 仓库需求client 想安装图形化但仓库来源于 Internet希望使用本地仓库以提高速度。操作思路server 上部署并配置 Nginx 服务server 上挂载 ISO 文件到 Nginx 服务网站目录client 创建指向 server 上 web 站点的仓库测试[ggcentos7 ~ 16:45:20]$ # 客户端测试 [ggcentos7 ~ 16:45:55]$ cat /etc/yum.repos.d/local.repo [local] nameLocal Repo baseurlhttp://server.example.com/repo gpgcheck0 enabled1 [ggcentos7 ~ 16:46:32]$ yum repolist repo id repo name status local Local Repo enabled: 5,1452.5 查找系统中文件locate 命令作用根据文件名在 mlocate 数据库中查找文件[ggcentos7 ~ 16:48:10]$ # 先更新数据库 [ggcentos7 ~ 16:48:25]$ updatedb [ggcentos7 ~ 16:49:02]$ locate nginx.conf /etc/nginx/nginx.conf /etc/nginx/conf.d/default.conf /usr/lib/nginx/nginx.conf常用选项-b, --basename只匹配文件名部分-i, --ignore-case忽略大小写-c, --count只显示匹配数量-r, --regexp使用正则表达式find 命令作用在本地文件系统中实时查找文件语法find [路径] [条件] [动作]根据文件名查找[ggcentos7 ~ 16:50:38]$ find /etc -name *.conf -type f /etc/nginx/nginx.conf /etc/yum.conf /etc/ssh/sshd_config ...根据文件类型查找[ggcentos7 ~ 16:52:15]$ find /var/log -type f -name *.log /var/log/messages /var/log/secure /var/log/audit/audit.log ...文件类型f普通文件d目录l符号链接b块设备c字符设备根据文件所有者查找[ggcentos7 ~ 16:53:52]$ find /home -user gg -type f /home/gg/.bashrc /home/gg/.bash_history /home/gg/notes.txt [ggcentos7 ~ 16:55:28]$ find /home -nouser -type f # 查找不属于任何用户的文件根据文件权限查找[ggcentos7 ~ 16:57:05]$ find /usr/bin -perm /ow -type f # 查找其他用户可写的文件 [ggcentos7 ~ 16:58:42]$ find / -perm -4000 -type f /usr/bin/sudo /usr/bin/passwd /usr/bin/newgrp /usr/bin/chage /usr/bin/gpasswd根据文件大小查找[ggcentos7 ~ 17:00:18]$ find /var -size 100M -type f /var/log/audit/audit.log /var/lib/mysql/ibdata1单位c字节、kKiB、MMiB、GGiB根据修改时间查找[ggcentos7 ~ 17:01:55]$ find /etc -mtime -7 -type f # 查找7天内修改过的文件 [ggcentos7 ~ 17:02:30]$ find /tmp -mmin -60 -type f # 查找60分钟内修改过的文件根据硬链接数查找[ggcentos7 ~ 17:03:08]$ find / -links 2 -type f # 查找硬链接数超过2的文件多条件组合[ggcentos7 ~ 17:04:45]$ find /home -name *.txt -user gg -size 10k # 查找gg用户的大于10KB的txt文件逻辑运算符-a或空格逻辑与-o逻辑或!逻辑非对找到的文件执行动作[ggcentos7 ~ 17:06:22]$ find /tmp -name *.log -delete # 删除tmp目录下所有log文件 [ggcentos7 ~ 17:07:00]$ find /home -name *.bak -ls # 显示找到的备份文件详情 [ggcentos7 ~ 17:07:38]$ find /var/log -name *.log -exec gzip {} \; # 压缩所有log文件三、Linux 硬盘分区管理3.1 硬盘为什么要分区将操作系统文件与用户文件分隔开避免应用数据太多撑满系统盘限制应用或用户的可用空间一个分区出现逻辑损坏不影响其他分区用于创建交换分区限制磁盘空间使用提高诊断和备份性能便于定制文件系统如小文件用 xfs大文件用 ext43.2 MBR 分区方案自 1982 年以来主启动记录MBR-Master Boot Record分区方案指定了在运行 BIOS 固件的系统上如何对磁盘进行分区。MBR 特点支持最多4 个主分区使用扩展分区和逻辑分区可创建最多15 个分区逻辑分区可以格式化扩展分区不能格式化单分区最大2 TiB主引导扇区结构┌─────────────────────────────────────┐ │ 主引导扇区 (512字节) │ ├─────────────────────────────────────┤ │ 引导程序 (446字节) │ ← 硬盘启动时将控制权转给操作系统 ├─────────────────────────────────────┤ │ 磁盘分区表 (DPT, 64字节) │ ← 4个分区表项每个16字节 ├─────────────────────────────────────┤ │ 结束标志 (2字节): AA55 │ ← 标识有效引导记录 └─────────────────────────────────────┘3.3 fdisk 工具作用管理采用 MBR 分区方案的磁盘查看分区表[ggcentos7 ~ 17:09:15]$ fdisk -l /dev/sdb Disk /dev/sdb: 500 GiB, 536870912000 bytes, 1048576000 sectors Units: sectors of 1 * 512 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x8a4b2c1d Device Boot Start End Sectors Size Id Type /dev/sdb1 * 2048 526335 524288 256M 83 Linux /dev/sdb2 526336 4194307038 4193780703 2T 83 Linux创建分区交互式[ggcentos7 ~ 17:11:42]$ fdisk /dev/sdb Welcome to fdisk (util-linux 2.30.2). Changes will remain in memory only, until you decide to write them. Command (m for help): m Help: DOS (MBR) a toggle a bootable flag b edit nested BSD disklabel c toggle dos compatibility flag Generic d delete a partition F list free unpartitioned space l list known partition types n add a new partition p print the partition table t change a partition type v verify the partition table Misc m print this menu u change display/entry units x extra functionality (experts only) Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-1048575999, default 2048): 2048 Last sector, sectors or size{K,M,G,T,P} (2048-1048575999, default 1048575999): 100G Created partition 1 of type Linux and of size 100 GiB. Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.通知内核重新读取分区表[ggcentos7 ~ 17:13:08]$ partprobe /dev/sdb [ggcentos7 ~ 17:13:42]$ lsblk /dev/sdb NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sdb 8:16 0 500G 0 disk └─sdb1 8:17 0 100G 0 part创建扩展分区和逻辑分区[ggcentos7 ~ 17:15:20]$ fdisk /dev/sdb ... Command (m for help): n Partition type: p primary (3 primary, 0 extended, 1 free) e extended (for extended partitions) Select (default e): e Selected partition 4 First sector (2097154050-1048575999, default 2097154050): Last sector, sectors or size{K,M,G,T,P}: 200G Command (m for help): n All logical partitions are used? ... Command (m for help): n First sector (2097154050-629145600, default 2097154050): Last sector, sectors or size{K,M,G,T,P}: 50G Command (m for help): w非交互方式管理[ggcentos7 ~ 17:17:58]$ echo -e n\np\n\n\n50G\nw | fdisk /dev/sdb # 创建一个50G的主分区 [ggcentos7 ~ 17:19:35]$ echo -e d\n2\nw | fdisk /dev/sdb # 删除第2个分区3.4 GPT 分区方案GPTGUID Partition Table是运行统一可扩展固件接口UEFI固件系统上硬盘分区表的标准。GPT 特点支持最大18 ZiB约 18 亿太字节的分区支持最多128 个分区提供分区表信息的冗余备份GPT 分区表结构LBA0: 保护性MBR ├── 第一部分启动引导程序446字节 └── 第二部分特殊标识符 0xEE LBA1: GPT表头记录 ├── 记录分区表位置和大小 ├── 备份GPT分区位置最后34个LBA └── CRC32校验码 LBA2-33: 分区记录区 ├── 每个LBA提供4组分区记录 ├── 默认4×32128组分区记录 └── 每组128字节含64位扇区总数3.5 gdisk 工具作用管理采用 GPT 分区方案的磁盘用于管理超过 2T 的磁盘转换分区表方案[ggcentos7 ~ 17:21:12]$ gdisk /dev/sdb GPT fdisk (gdisk) version 0.8.10 Partition table scan: MBR: MBR only BSD: not present APM: not present GPT: not present Found valid MBR and corrupt GPT. Which do you want to use? (Your choice): 1. GPT 2. MBR 3. Create new GPT partition table Command (? for help): n创建分区Command (? for help): n Partition number (1-128, default 1): 1 First sector (2048-1048575999, default 2048): Last sector, sectors or size{K,M,G,T,P} (2048-1048575999, default 1048575999): 100G查看分区详细信息Command (? for help): i Partition number (1-128): 1 Item Value Partition number: 1 Unique GUID: 550e8400-e29b-41d4-a716-446655440000 Label: Linux Size: 100.0 GiB (209715200 sectors) Type: Linux filesystem Type GUID: 0FC6DA94-5DDA-4D38-95E7-2A5A3C2C5A2E First sector: 2048 Last sector: 209717247 ...3.6 wipefs 工具作用查看和清除磁盘管理信息[ggcentos7 ~ 17:22:50]$ wipefs -a /dev/sdb /dev/sdb: 2 bytes were erased at offset 0x000001fe (dos): 0000: 55 aa [ggcentos7 ~ 17:23:25]$ wipefs -n /dev/sdb # 查看将要擦除的内容不实际执行⚠️注意数据无价操作需谨慎最好提前备份3.7 parted 工具作用同时支持 MBR 和 GPT 分区方案支持交互式和非交互式操作交互式操作[ggcentos7 ~ 17:24:02]$ parted /dev/sdb GNU Parted 3.1 Using /dev/sdb Welcome to GNU Parted! Type help to view a list of commands. (parted) p Model: ATA VIRTUAL DISK (scsi) Disk /dev/sdb: 500GiB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 525MB 524MB ext4 2 525MB 1050MB 524MB ext4 (parted) unit MiB (parted) mklabel gpt Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost! Do you want to continue? Fix/Ignore/Cancel? Fix (parted) mkpart primary xfs 1MiB 100% (parted) set 1 name data (parted) quit管理 MBR 磁盘[ggcentos7 ~ 17:26:40]$ parted -s /dev/sdb mklabel msdos [ggcentos7 ~ 17:27:18]$ parted -s /dev/sdb mkpart primary xfs 1MiB 100%非交互式操作[ggcentos7 ~ 17:28:55]$ parted -s /dev/sdb mkpart primary xfs 1MiB 100% [ggcentos7 ~ 17:29:32]$ parted -s /dev/sdb unit GiB print3.8 文件系统持久化挂载环境准备[ggcentos7 ~ 17:30:10]$ parted /dev/sdb mklabel gpt [ggcentos7 ~ 17:30:45]$ parted -s /dev/sdb mkpart primary xfs 1MiB 100% [ggcentos7 ~ 17:31:22]$ mkfs.xfs /dev/sdb1 ... meta-data/dev/sdb1 isize256 agcount4, agsize3276800 blks ...持久化挂载 - /etc/fstab当服务器重启时系统不会自动挂载文件系统。为了确保系统启动时自动挂载需要在/etc/fstab文件中添加条目。[ggcentos7 ~ 17:32:58]$ cat /etc/fstab # /etc/fstab # Created by anaconda on Tue Jul 25 14:32:18 2023 # # Accessible filesystems, by reference, are maintained under /dev/disk # See man pages fstab(5), findfs(8), mount(8) for additional info # UUID8e8e8e8e-8e8e-8e8e-8e8e-8e8e8e8e8e8e / xfs defaults 0 0 UUID6e6e6e6e-6e6e-6e6e-6e6e-6e6e6e6e6e6e /boot xfs defaults 0 0 UUID4e4e4e4e-4e4e-4e4e-4e4e-4e4e4e4e4e4e swap swap defaults 0 0 # 新增挂载点 UUIDabc12345-def67890-abc12345-def67890-abc12345-def67890 /data xfs defaults 0 0/etc/fstab 六个字段字段说明第1字段设备UUID 或设备路径第2字段挂载点目录第3字段文件系统类型xfs、ext4 等第4字段挂载选项defaults 为常用选项第5字段dump 备份标志0不备份第6字段fsck 检查顺序0不检查1根文件系统2其他添加持久化挂载[ggcentos7 ~ 17:34:35]$ blkid /dev/sdb1 /dev/sdb1: UUIDabc12345-def67890-abc12345-def67890-abc12345-def67890 TYPExfs [ggcentos7 ~ 17:35:12]$ mkdir -p /data [ggcentos7 ~ 17:35:48]$ echo UUIDabc12345-def67890-abc12345-def67890-abc12345-def67890 /data xfs defaults 0 0 /etc/fstab [ggcentos7 ~ 17:36:25]$ mount -a [ggcentos7 ~ 17:37:02]$ df -h | grep data /dev/sdb1 500G 32M 500G 1% /data取消持久化挂载[ggcentos7 ~ 17:38:38]$ # 删除 /etc/fstab 中对应条目 [ggcentos7 ~ 17:39:15]$ vim /etc/fstab [ggcentos7 ~ 17:39:52]$ umount /data四、综合案例文件系统空间不足情况1大量大文件占用空间原因大文件占用大量空间解决方法找到文件后删除[ggcentos7 ~ 17:41:28]$ du -h --max-depth1 /var/log | sort -rh | head -5 48G /var/log 25G /var/log/audit 15G /var/log/messages 5G /var/log/secure 3G /var/log/nginx [ggcentos7 ~ 17:43:05]$ find /var/log -name *.log -size 1G /var/log/audit/audit.log /var/log/messages [ggcentos7 ~ 17:44:42]$ /var/log/audit/audit.log [ggcentos7 ~ 17:45:20]$ /var/log/messages [ggcentos7 ~ 17:45:55]$ rm -f /var/log/audit/audit.log /var/log/messages情况2删除文件后空间未释放原因被删除的文件仍然有程序在使用解决方法找到占用程序并终止[ggcentos7 ~ 17:47:30]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 100G 95G 5G 95% / [ggcentos7 ~ 17:48:08]$ lsof | grep deleted rsyslogd 12345 root 12w REG 8,1 26843545600 123 /var/log/messages (deleted) [ggcentos7 ~ 17:49:45]$ kill 12345 [ggcentos7 ~ 17:50:22]$ df -h /dev/sda1 100G 70G 30G 70% /建议清理大文件时先使用重定向清空文件内容再删除文件[ggcentos7 ~ 17:51:00]$ /path/to/bigfile.log [ggcentos7 ~ 17:51:35]$ rm -f /path/to/bigfile.log情况3大量小文件占用空间原因文件系统 inode 使用完了解决方法删除大量小文件或将它们备份到其他地方[ggcentos7 ~ 17:53:10]$ df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda1 2621440 2621440 0 100% / [ggcentos7 ~ 17:54:48]$ find /tmp -type f -mtime 30 | xargs rm -f [ggcentos7 ~ 17:55:25]$ find /var/spool -type f | wc -l 15000 [ggcentos7 ~ 17:56:02]$ tar czf /backup/tmp_files.tar.gz /tmp [ggcentos7 ~ 17:56:40]$ find /tmp -type f -mtime 7 -delete五、思考如何彻底擦除硬盘数据逻辑破坏用 0 填充所有数据[ggcentos7 ~ 17:58:18]$ dd if/dev/zero of/dev/sdb bs1M count1024物理破坏消磁、物理粉碎等方式六、课后作业完成课堂笔记中所有实验梳理今天的课堂笔记写到博客中预习Linux 文件权限管理下一章内容知识总结常用命令速查命令用途lsblk查看块设备使用情况df -h查看文件系统使用情况du -sh查看目录占用空间mount挂载文件系统umount卸载文件系统lsof查看打开的文件fuser识别进程打开的文件locate根据文件名快速查找find实时查找文件fdiskMBR 分区管理gdiskGPT 分区管理parted通用分区管理wipefs清除磁盘信息partprobe通知内核重新读取分区表文件系统管理流程1. 识别设备 → lsblk、fdisk -l ↓ 2. 创建分区 → fdisk/gdisk/parted ↓ 3. 格式化文件系统 → mkfs.xfs / mkfs.ext4 ↓ 4. 创建挂载点 → mkdir /mnt/data ↓ 5. 挂载文件系统 → mount /dev/sdb1 /mnt/data ↓ 6. 持久化配置 → /etc/fstab ↓ 7. 验证挂载 → df -h排错技巧问题原因解决方法umount 失败有进程在使用lsof/fuser 找到并终止空间不足大文件占用找到大文件删除inode 用完小文件太多删除或归档小文件分区表不更新内核未重新读取partprobe 或重启新分区不显示分区表未生成partprobe /dev/sdb

相关新闻

Ghidra逆向工程入门:从零搭建分析环境到实战拆解程序逻辑

Ghidra逆向工程入门:从零搭建分析环境到实战拆解程序逻辑

1. 项目概述:为什么选择Ghidra作为你的第一把“手术刀”?如果你对软件的内部运作机制充满好奇,想看看一个程序在二进制层面究竟是如何“思考”和“行动”的,那么逆向工程就是你进入这个神秘世界的钥匙。而Ghidra,作为美…

2026/7/31 6:02:55 阅读更多 →
电子工程中的接地艺术:从AGND、DGND到PCB布局的噪声隔离实战

电子工程中的接地艺术:从AGND、DGND到PCB布局的噪声隔离实战

1. 项目概述:从“各种地”说起,一个被忽视的工程基石“地”,在电子工程和电路设计里,我们通常用GND(Ground)这个符号来指代它。乍一看,这可能是电路图上最简单、最不起眼的一个网络,…

2026/7/31 6:01:55 阅读更多 →
从STL容器到自研哈希表:C++哈希表核心原理与实现详解

从STL容器到自研哈希表:C++哈希表核心原理与实现详解

1. 项目概述:从STL容器到自研哈希表在C的日常开发中,std::unordered_map和std::unordered_set是我们处理快速查找、去重问题的左膀右臂。它们基于哈希表实现,提供了平均O(1)时间复杂度的插入、删除和查找操作,性能远超基于红黑树的…

2026/7/31 6:01:55 阅读更多 →

最新新闻

AI外呼技术解析:从语音识别到合规系统的构建与实践

AI外呼技术解析:从语音识别到合规系统的构建与实践

AI 外呼技术正在以惊人的速度改变电话营销行业的生态格局。据总台中国之声报道,部分企业已实现日拨千通电话的自动化外呼能力,这种新型营销手段在提升效率的同时,也引发了关于隐私保护和行业规范的深度思考。作为技术人员,我们更需…

2026/7/31 6:30:04 阅读更多 →
戴尔G15散热控制终极指南:开源tcc-g15完全替代AWCC方案

戴尔G15散热控制终极指南:开源tcc-g15完全替代AWCC方案

戴尔G15散热控制终极指南:开源tcc-g15完全替代AWCC方案 【免费下载链接】tcc-g15 Thermal Control Center for Dell G15 - open source alternative to AWCC 项目地址: https://gitcode.com/gh_mirrors/tc/tcc-g15 你是否正在为戴尔G15笔记本的散热问题而烦恼…

2026/7/31 6:30:04 阅读更多 →
H3C防火墙Web配置实战:从安全策略到NAT转换的完整指南

H3C防火墙Web配置实战:从安全策略到NAT转换的完整指南

1. 项目概述:从手册下载到实战配置的跨越最近在整理公司网络设备文档时,又翻出了那台经典的H3C SecPath F100-C-AI防火墙。这台设备在很多中小企业和分支机构中出镜率很高,性能稳定,功能也足够应对日常的边界防护需求。我发现&…

2026/7/31 6:30:04 阅读更多 →
实测分析 2026 温州财税代理记账优选机构|面向制造与跨境企业 AI 合规预警品牌甄选

实测分析 2026 温州财税代理记账优选机构|面向制造与跨境企业 AI 合规预警品牌甄选

前言金税四期全面落地、数电票常态化推行,“以数治税” 监管持续收紧,财税合规已经成为温州工贸工厂、跨境电商企业持续经营的核心底线。温州作为国内民营经济重镇,聚集大量电气泵阀、鞋服五金、汽摩配制造主体,同时亚马逊、独立站…

2026/7/31 6:30:04 阅读更多 →
S7-1200 PLC第三方通信实战:Snap7协议解析与Python调试指南

S7-1200 PLC第三方通信实战:Snap7协议解析与Python调试指南

1. 项目概述:为什么我们需要第三方调试助手? 在工业自动化领域,西门子S7-1200 PLC因其出色的稳定性、丰富的功能和相对友好的编程环境,成为了中小型项目的主流选择。无论是产线控制、设备监控还是数据采集,S7-1200都扮…

2026/7/31 6:30:04 阅读更多 →
红外接收头外围电路设计:从电源滤波到电平转换的完整信号调理方案

红外接收头外围电路设计:从电源滤波到电平转换的完整信号调理方案

1. 项目概述:从“收到信号”到“读懂信号”的旅程当你拿到一个红外接收头,比如常见的HS0038B或者VS1838B,把它焊接到电路板上,接上电源和地,然后把输出脚接到单片机的IO口上——很多人以为这就完事了。但实际一上电&am…

2026/7/31 6:29:04 阅读更多 →

日新闻

物理复制比逻辑复制好在哪?数据库复制原理详解

物理复制比逻辑复制好在哪?数据库复制原理详解

数据库复制是把主库数据同步到备库的机制,分为逻辑复制和物理复制两种。逻辑复制传输的是 SQL 语句或行变更事件,物理复制传输的是存储引擎底层的物理日志。阿里云 PolarDB(云原生数据库)采用物理复制,在同步延迟、数据…

2026/7/31 0:00:34 阅读更多 →
BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi/Bilib…

2026/7/31 0:00:34 阅读更多 →
有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

当前,游戏行业的“DataAI融合”已从概念验证进入价值落地阶段。根据IDC 2025年数据,中国AI游戏云市场规模已达18.6亿元;同时,游戏研发环节AI渗透率高达86%,生成式AI内容普及率超过50%。面对庞大的市场,游戏…

2026/7/31 0:00:34 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/31 1:03:03 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/31 4:19:39 阅读更多 →

月新闻