首页 > 系统相关 >Linux 常用命令汇总(六):磁盘与文件系统命令

Linux 常用命令汇总(六):磁盘与文件系统命令

时间:2024-03-20 12:31:29浏览次数:26  
标签:sudo Linux 分区 使用 交换 文件系统 dev 常用命令

一、磁盘与文件系统命令

1.1 mount

1.1.1 介绍

mount 是 Linux 和其他类 Unix 系统中的一个命令,用于挂载文件系统到指定的挂载点(目录)

1.1.2 使用方法

mount [-t type] [-o options] device_name mount_point

1.1.3 参数详解

  • device_name:要挂载的设备或文件系统的名称。
  • mount_point:挂载点,即文件系统在系统中的访问路径。
  • -t type:指定文件系统的类型(如 ext4、vfat、ntfs 等)。
  • -o options:指定挂载选项,如 ro(只读)、rw(读写)等。

1.1.4 常见使用案例

1.1.4.1 挂载 USB 设备

如果 USB 设备被识别为 /dev/sdb1,并且你想将其挂载到 /mnt/usb 目录,可以使用以下命令

sudo mount /dev/sdb1 /mnt/usb
1.1.4.2 挂载网络文件系统

假设你要挂载一个 NFS 共享,可以使用以下命令

sudo mount -t nfs server:/path/to/share /mnt/nfs

1.1.5 注意事项

  • 挂载和卸载文件系统通常需要 root 权限。
  • 在挂载之前,确保挂载点目录已经存在。
  • 不同的文件系统类型可能需要不同的选项和配置。
  • 在卸载文件系统之前,确保没有进程正在使用该文件系统。

1.2 umount

1.2.1 介绍

umount 是 Linux 和其他类 Unix 系统中的一个命令,用于卸载(卸载)已经挂载的文件系统

1.2.2 使用方法

umount [options] mount_point

1.2.3 参数详解

  • mount_point:要卸载的文件系统的挂载点路径。
  • [options]:可选的参数,如 -f(强制卸载,即使文件系统正在使用)或 -l(懒惰卸载,仅当没有进程使用时才卸载)。

1.2.4 常见使用案例

1.2.4.1 卸载挂载在 /mnt/usb 的 USB 设备
sudo umount /mnt/usb
1.2.4.2 强制卸载

如果文件系统正在被某个进程使用,你可能需要使用 -f 选项来强制卸载

sudo umount -f /mnt/usb

1.2.5 注意事项

  • 在卸载文件系统之前,确保没有进程正在使用它。你可以使用 lsof 或 fuser 命令来检查哪些进程正在使用挂载点上的文件。
  • 如果尝试卸载正在使用的文件系统,umount 命令通常会失败,并显示一个错误消息。
  • 使用 -f 选项强制卸载可能会导致数据损坏,因此应该谨慎使用。
  • 卸载文件系统通常需要 root 权限。

1.3 fsck

1.3.1 介绍

fsck(文件系统一致性检查)是一个用于检查和修复文件系统错误的命令行工具

1.3.2 使用方法

sudo fsck [文件系统类型] [设备名称]

1.3.3 参数详解

  • [文件系统类型]:指定要检查的文件系统类型(如 ext4, xfs, btrfs 等)。
  • [设备名称]:指定要检查的设备或分区名称(如 /dev/sda1)。

1.3.4 常见使用案例

1.3.4.1 要检查 /dev/sda1 分区上的 ext4 文件系统
sudo fsck.ext4 /dev/sda1

1.3.5 注意事项

  1. 文件系统挂载状态:在运行 fsck 之前,必须确保文件系统是未挂载的或者处于只读模式。如果文件系统是挂载的并且处于读写模式,fsck 可能无法正确运行或可能损坏文件系统。

  2. 备份数据:在运行 fsck 之前,强烈建议备份重要数据。虽然 fsck 旨在修复文件系统,但在某些情况下,它可能会导致数据丢失。

  3. 强制检查:你可以通过在 /etc/fstab 文件中为特定分区设置 fsck.passno 和 fsck.order 参数来强制在系统启动时检查文件系统。然而,这应该在你知道文件系统存在问题,并且愿意承担相应风险的情况下进行。

  4. 自动修复:在某些情况下,fsck 可以自动修复检测到的文件系统错误。然而,对于更复杂的错误,它可能只能提供一个报告,并需要管理员手动干预来解决问题。

  5. 系统日志fsck 的输出和任何潜在错误都会记录在系统日志中,通常可以在 /var/log/syslog 或 /var/log/messages 中找到。

1.4 dd

1.4.1 介绍

dd 是一个在 Unix 和类 Unix 系统中非常强大的命令行工具,用于以块为单位复制和转换文件

1.4.2 使用方法

dd if=输入文件 of=输出文件 [选项]

1.4.3 参数详解

  • bs=块大小:设置数据块的大小,例如 bs=1M 表示 1 兆字节。
  • count=块数:仅复制指定数量的数据块。
  • skip=块数:跳过输入文件中的指定数量数据块。
  • seek=块数:在输出文件中跳过指定数量数据块后再开始写入。
  • conv=转换:应用一个或多个转换操作,例如 notrunc(不截断输出文件)、noerror(出错时不停止)等。

1.4.4 常见使用案例

1.4.4.1 复制文件

将 file1.txt 复制到 file2.txt

dd if=file1.txt of=file2.txt
1.4.4.2 创建磁盘镜像

将整个磁盘 /dev/sda 的内容复制到文件 disk_image.img

dd if=/dev/sda of=disk_image.img
1.4.4.3 恢复丢失的数据

从备份镜像 disk_image.img 中恢复第一个分区的内容到 /dev/sda1

dd if=disk_image.img of=/dev/sda1 bs=4M
1.4.4.4 生成随机数据

生成 1MB 的随机数据并保存到 random_data.bin

dd if=/dev/urandom of=random_data.bin bs=1M count=1

1.4.5 注意事项

  • 使用 dd 命令时要格外小心,因为它可以直接访问磁盘和设备,并且可能会导致数据丢失或损坏。
  • 在使用 dd 命令复制或操作磁盘时,确保指定了正确的输入和输出文件或设备。
  • dd 命令可能会非常慢,特别是在处理大文件或磁盘镜像时。
  • 在执行可能覆盖现有数据的操作之前,务必备份重要数据。

1.5 dumpe2fs

1.5.1 介绍

dumpe2fs 是一个用于查看和打印 Linux 中 ext2、ext3、ext4 文件系统超级块的工具

1.5.2 使用方法

dumpe2fs [选项] 设备文件名

1.5.3 参数详解

  • -h:显示超级块的内容。
  • -b:指定超级块的块号。
  • -i:显示文件系统状态信息。
  • -I:显示文件系统的 inode 信息。
  • -n:以“易读”的方式显示信息,这通常会提供更简洁的输出。
  • -s:显示文件系统的摘要信息。
  • -x:显示扩展属性。

1.5.4 常见使用案例

1.5.4.1 显示文件系统摘要信息
dumpe2fs -s /dev/sda1
1.5.4.2 以易读方式显示文件系统信息
dumpe2fs -n /dev/sda1
1.5.4.3 显示超级块内容
dumpe2fs -h /dev/sda1

1.5.5 注意事项

  • dumpe2fs 需要对指定的设备具有读取权限,因此通常需要以 root 用户身份运行。
  • 在使用 dumpe2fs 时,应确保指定的设备或分区不是挂载的或至少是以只读方式挂载的,以避免对文件系统造成潜在损害。
  • dumpe2fs 输出的信息对于理解文件系统的结构和状态非常有用,但它本身并不提供修复文件系统的功能。如果需要修复,可以使用 fsck 命令。

1.6 dump

1.6.1 介绍

dump 命令在 Linux 系统中用于备份文件系统

1.6.2 使用方法

dump [选项] [级别] 设备文件名 [目录]

1.6.3 参数详解

  • -0 至 -9:指定备份级别。0 表示完全备份,1 表示第一次增量备份,以此类推。
  • -u:更新备份的日期和时间。
  • -f:指定备份文件的名称(而不是使用设备文件名)。
  • -l:列出备份文件的内容。
  • -L:指定备份的标签。
  • -v:详细输出。
  • -j:使用 bzip2 进行压缩。
  • -z:使用 gzip 进行压缩。

1.6.4 常见使用案例

1.6.4.1 完全备份 /home 目录到 /dev/st0 磁带设备
dump 0 /dev/st0 /home
1.6.4.2 增量备份 /home 目录到 /dev/st0 磁带设备
dump 1 /dev/st0 /home

1.6.5 注意事项 

  • dump 命令通常与磁带设备一起使用,但也可以将备份写入普通文件或分区。
  • 备份级别决定了备份的类型和范围。完全备份(级别 0)包括文件系统中的所有文件,而增量备份(级别 1 及以上)只包括自上次相同级别或更低级别备份以来更改的文件。
  • 备份文件通常包含时间戳和文件系统信息,以便 restore 命令可以正确地恢复数据。
  • 使用 dump 和 restore 时,应确保理解备份和恢复过程,以避免数据丢失或损坏。

1.7 fdisk

1.7.1 介绍

fdisk 是一个用于磁盘分区表操作的命令行工具

1.7.2 使用方法

fdisk [设备名称]

1.7.3 参数详解

  • p:打印分区表。
  • n:创建一个新的分区。
  • d:删除一个分区。
  • t:更改分区的类型。
  • w:将更改写入磁盘并退出。
  • q:不保存更改并退出。
  • m:显示帮助菜单。

1.7.4 常见使用案例

1.7.4.1 查看分区表
sudo fdisk -l /dev/sda
1.7.4.2 进入交互模式并创建一个新分区
sudo fdisk /dev/sda  
  
Command (m for help): n  
Select (default p): p  
Partition number (1-4, default 1):  
First sector (2048-20971519, default 2048):  
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):  
  
Command (m for help): w  
The partition table has been altered!  
  
Calling ioctl() to re-read partition table.  
Syncing disks.

 1.7.5 注意事项 

  • 使用 fdisk 时必须非常小心,因为错误的操作可能会导致数据丢失。
  • 在对磁盘进行分区操作之前,务必备份重要数据。
  • 在进行分区更改后,使用 w 命令将更改写入磁盘之前,可以使用 q 命令退出而不保存更改。
  • 在处理系统引导分区或包含关键数据的分区时,务必格外小心。

1.8 parted

1.8.1 介绍

parted 是一个功能强大的磁盘分区和分区表操纵工具,它支持多种文件系统类型,并提供了丰富的命令行界面来管理磁盘分区

1.8.2 使用方法

parted [设备名称] [命令]

1.8.3 参数详解

  • print:显示分区表信息。
  • mkpart:创建新分区。
  • rm:删除分区。
  • resizepart:调整分区大小。
  • move:移动分区。
  • copy:复制分区。
  • set:设置分区的属性,如文件系统类型。
  • quit:退出 parted

1.8.4 常见使用案例

1.8.4.1 查看磁盘分区信息
sudo parted /dev/sda print
1.8.4.2 创建一个新的分区
sudo parted /dev/sda mkpart primary ext4 1GB 2GB
1.8.4.3 删除一个分区
sudo parted /dev/sda rm 1
1.8.4.4 调整分区大小
sudo parted /dev/sda resizepart 1 END

1.8.5 注意事项

  • parted 是一个强大的工具,使用时需要小心谨慎,以避免数据丢失。
  • 在执行任何分区操作之前,务必备份重要数据。
  • parted 支持多种分区表类型,包括 MBR 和 GPT,因此可以根据需要选择合适的分区表类型。
  • 在进行分区更改后,可能需要更新文件系统以匹配新的分区大小,这可以使用 resize2fs(对于 ext2/ext3/ext4 文件系统)等工具完成。

1.9 mkfs

1.9.1 介绍

mkfs(make filesystem)是一个用于在磁盘分区上创建文件系统的命令

1.9.2 使用方法

mkfs [选项] 文件系统类型 设备名称

1.9.3 参数详解

不同的文件系统类型可能支持不同的选项。以下是一些常见文件系统类型的常用选项:

  • 对于 ext4 文件系统:
    • -m:设置保留的块百分比。
    • -O:启用或禁用特定的特性。
    • -L:设置文件系统的标签。
  • 对于 vfat 文件系统:
    • -F:指定 FAT 类型(12、16 或 32)。
    • -n:设置卷标。

1.9.4 常见使用案例

1.9.4.1 在 /dev/sda1 分区上创建一个 ext4 文件系统
sudo mkfs.ext4 /dev/sda1
1.9.4.2 在 /dev/sdb1 分区上创建一个 FAT32 文件系统
sudo mkfs.vfat /dev/sdb1

1.9.5 注意事项

  • 在使用 mkfs 命令之前,请确保分区上的所有数据都已备份,因为此命令会删除分区上的所有数据并创建一个新的文件系统。
  • 使用正确的设备名称和分区编号非常重要,以避免错误地格式化错误的分区或设备。
  • 不同的文件系统类型支持不同的选项,因此请查阅相关手册页(使用 man mkfs.文件系统类型)以获取特定文件系统的可用选项。

1.10 partprobe

1.10.1 介绍

partprobe 是一个用于通知内核重新读取分区表的工具

1.10.2 使用方法

sudo partprobe [设备名称]

1.10.3 常见使用案例

1.10.3.1 假设你使用 fdisk 在 /dev/sda 上创建了一个新的分区,并希望让内核立即识别这个新分区,你可以执行
sudo partprobe /dev/sda

1.10.4 注意事项

  • 在使用 partprobe 之前,确保你已经使用 fdiskparted 或其他工具完成了分区表的更改。
  • partprobe 通常不需要重启系统就可以让内核识别新的分区或分区更改。
  • 在某些情况下,可能需要多次运行 partprobe 才能确保内核完全识别所有更改。
  • partprobe 通常与 kpartx 工具一起使用,后者可以映射分区到设备文件,使得它们可以像块设备一样被访问。

1.10.5 与其他工具关系

  • kpartx:这个工具用于创建和管理内核分区映射,它可以将分区映射为设备文件,这样用户空间程序就可以像访问常规块设备一样访问它们。
  • udev:在现代 Linux 系统中,udev 负责管理设备节点和设备事件。当 udev 检测到分区表更改时,它会自动重新加载分区信息,因此在许多情况下,你可能不需要手动运行 partprobe。然而,在某些情况下,特别是在手动更改分区表或在没有 udev 规则的情况下,手动运行 partprobe 可能是必要的。

1.11 e2fsck

1.11.1 介绍

e2fsck 是用于检查 ext2/ext3/ext4 文件系统一致性的工具

1.11.2 使用方法

e2fsck [选项] 设备名称

1.11.3 参数详解

  • -f:强制检查,即使文件系统被认为是干净的。
  • -y:自动回答所有提示为“是”(yes),这意味着 e2fsck 将尝试修复所有发现的问题而不需要用户干预。
  • -n:只读取文件系统而不进行任何更改,用于获取文件系统状态信息。
  • -v:详细模式,显示更多的检查信息。
  • -p:自动修复文件系统(只有在 -y 选项被指定时有效)。

1.11.4 常见使用案例

1.11.4.1 检查 /dev/sda1 分区上的 ext4 文件系统
sudo e2fsck -f /dev/sda1
1.11.4.2 以只读模式检查文件系统
sudo e2fsck -n /dev/sda1

1.11.5 注意事项

  • 在文件系统挂载为读写状态时运行 e2fsck 可能会导致数据损坏,因此通常建议在文件系统未挂载或处于只读模式下运行它。
  • 在系统启动时,如果文件系统被标记为需要检查(通常是因为检测到不一致),e2fsck 会自动运行。在这种情况下,你应该允许它完成检查,而不是跳过。
  • 在运行 e2fsck 之前,始终确保已经备份了重要数据,以防止数据丢失。
  • 如果 e2fsck 报告了无法修复的错误,你可能需要考虑从备份中恢复数据或寻求专业的数据恢复服务。

1.11.6 与其他工具关系

  • fsck:这是一个通用的文件系统检查工具,它可以根据文件系统的类型调用相应的检查工具,例如 e2fsck。如果你不确定要使用哪个检查工具,可以尝试运行 fsck
  • mke2fs:这是一个用于创建 ext2/ext3/ext4 文件系统的工具。当你需要创建新的文件系统时,可以使用这个工具。
  • tune2fs:这个工具用于调整 ext2/ext3/ext4 文件系统的参数,例如修改挂载选项、调整保留块百分比等。

1.12 mkswap

1.12.1 介绍

mkswap 是一个用于设置交换分区的命令

1.12.2 使用方法

sudo mkswap /dev/设备名称

1.12.3 常见使用案例

1.12.3.1 设置 /dev/sdb1 分区为交换分区并启用它
sudo mkswap /dev/sdb1  
sudo swapon /dev/sdb1
1.12.3.2 你可以通过编辑 /etc/fstab 文件来在系统启动时自动启用交换分区。在文件中添加一行类似以下内容
/dev/sdb1   none   swap   sw   0   0

1.12.4 注意事项 

  • 在设置交换分区之前,请确保该分区没有被格式化为其他类型的文件系统。
  • 交换分区的性能通常比物理内存差,因此不建议将大量空间用作交换分区。通常,交换分区的大小设置为物理内存的两倍是一个好的起点。
  • 如果你的系统已经有一个交换分区或交换文件,并且你想要添加更多的交换空间,你可以创建多个交换分区或交换文件,并在 /etc/fstab 文件中配置它们。
  • 在使用 mkswap 和 swapon 时,确保你有足够的权限(通常需要使用 sudo)。

1.12.5 与其他工具关系

  • swapon:用于启用或禁用交换分区。
  • swapoff:用于禁用交换分区。
  • free:用于查看系统的内存和交换空间使用情况。
  • vmstat:用于报告关于进程、内存、分页、块IO、陷阱和CPU活动的信息。

1.13 swapon

1.13.1 介绍

swapon 是一个用于启用交换分区的命令

1.13.2 使用方法

sudo swapon /dev/设备名称

或者,如果你已经使用 mkswap 命令创建了一个交换文件,你可以这样启用它

sudo swapon /路径/到/交换文件

1.13.3 常见使用案例

1.13.3.1 启用 /dev/sdb1 分区作为交换分区
sudo swapon /dev/sdb1
1.13.3.2 如果之前使用 dd 命令创建了一个 2G 的交换文件 /swapfile,可以这样启用它
sudo swapon /swapfile
1.13.3.3 持久化配置

如果你想在系统启动时自动启用交换分区,你需要在 /etc/fstab 文件中添加相应的条目。对于分区,条目可能类似于

/dev/sdb1   none   swap   sw   0   0

对于交换文件,你需要先确保文件已经被正确格式化为交换空间(使用 mkswap),然后在 /etc/fstab 中添加类似下面的条目

/path/to/swapfile   none   swap   sw   0   0

1.13.4 注意事项

  • 在启用交换分区之前,确保该分区或文件已经被正确地设置和格式化为交换空间。
  • 交换分区的性能通常比物理内存差,因此应该谨慎使用,并且只在必要时启用。
  • 交换空间的大小应该根据系统需求和可用磁盘空间来合理配置。
  • 使用 swapon 和 swapoff 时需要具有相应的权限,通常需要使用 sudo

1.13.5 与其他工具关系

  • mkswap:用于创建交换分区或交换文件。
  • swapoff:用于停用交换分区或交换文件。
  • free:显示系统内存和交换空间的使用情况。
  • vmstat:报告关于进程、内存、分页、块IO、陷阱和CPU活动的信息。

1.14 swapoff

1.14.1 介绍

swapoff 是一个用于停用交换分区的命令

1.14.2 使用方法

sudo swapoff /dev/设备名称

或者,如果你停用的是一个交换文件,则使用

sudo swapoff /路径/到/交换文件

1.14.3 常见使用案例

1.14.3.1 停用 /dev/sdb1 分区作为交换分区
sudo swapoff /dev/sdb1
1.14.3.2 停用之前启用的交换文件 /swapfile
sudo swapoff /swapfile
1.14.3.3 查看交换空间状态

在停用交换分区之后,你可以使用 free 命令或 swapon --show 命令来确认交换空间是否已经被停用

free -h

或者

swapon --show

swapon --show 命令将列出所有当前启用的交换分区和文件。如果停用的分区或文件不再列出,那么它们已经被成功停用 

1.14.4 注意事项

  • 在停用交换分区之前,确保系统具有足够的物理内存来支持当前运行的进程。停用交换分区可能会导致内存不足,如果系统没有足够的物理内存,可能会导致性能下降或程序崩溃。
  • 在系统启动时,交换分区通常会自动启用,除非你在 /etc/fstab 文件中进行了相应的配置。如果你停用了交换分区,并且不想在系统启动时再次启用它,确保从 /etc/fstab 文件中删除或注释掉相应的条目。
  • 使用 swapoff 命令需要具有相应的权限,通常需要使用 sudo

1.14.5 与其他工具关系

  • swapon:用于启用交换分区或交换文件。
  • mkswap:用于创建交换分区或交换文件。
  • free:用于显示系统内存和交换空间的使用情况。
  • vmstat:报告关于进程、内存、分页、块IO、陷阱和CPU活动的信息。

1.15 sync

1.15.1 介绍

sync 是一个在 Linux 和其他类 Unix 系统中用于确保所有挂起的写操作都被传输到磁盘上的命令

1.15.2 使用方法

sync

1.15.3 常见使用案例

1.15.3.1 同步所有挂起的写操作到磁盘
sync

1.15.4 注意事项

  • sync 命令只会同步那些被标记为需要写入的文件,而不是所有文件。这意味着它只会确保到目前为止所有已知的更改都被写入到磁盘上。
  • 在大多数情况下,你不需要手动执行 sync 命令,因为现代操作系统和文件系统通常会在适当的时候自动执行同步操作,例如在系统关闭或重启时。
  • 频繁地执行 sync 命令可能会对系统性能产生负面影响,因为它会强制内核立即执行磁盘写操作,而不是让它们按照内核认为的最优方式异步执行。

1.15.5 与其他工具关系

  • fsync:这是一个系统调用,与 sync 命令类似,但它是针对单个文件或文件描述符的。当你想确保对特定文件的更改被写入磁盘时,可以使用 fsync
  • fdatasync:另一个系统调用,类似于 fsync,但它只同步文件的数据部分,而不包括文件的元数据(如修改时间和访问权限)。
  • umount:当你卸载一个文件系统时,umount 命令会确保所有挂起的写操作都被同步到磁盘上,然后再卸载文件系统。

1.16 resize2fs

1.16.1 介绍

resize2fs 是一个用于调整 ext2、ext3 或 ext4 文件系统大小的工具

1.16.2 使用方法

resize2fs /dev/设备名称

1.16.3 常见使用案例

1.16.3.1 扩大文件系统以使用整个分区空间

如果你刚刚使用 fdiskparted 或 gparted 等工具扩大了分区,你可以使用 resize2fs 来扩展文件系统以使用整个分区空间

sudo resize2fs /dev/sda1
1.16.3.2 缩小文件系统

缩小文件系统通常不是一个推荐的操作,因为它可能会导致数据丢失。如果你确实需要缩小文件系统,你应该首先确保分区中有足够的未使用空间,然后使用 resize2fs

sudo resize2fs /dev/sda1 10G

这将把 /dev/sda1 文件系统的大小调整为 10GB

1.16.4 注意事项

  • 在调整文件系统大小之前,确保备份所有重要数据,以防万一发生数据丢失。
  • 缩小文件系统时特别小心,因为这可能会导致数据丢失。通常建议只扩大文件系统。
  • 如果你的分区使用了 LVM(逻辑卷管理),则可以通过调整逻辑卷的大小来间接调整文件系统大小,而不需要直接使用 resize2fs
  • 对于其他类型的文件系统(如 XFS、Btrfs 等),需要使用不同的工具来调整大小,例如 xfs_growfs 对于 XFS 文件系统。

1.16.5 与其他工具关系

  • fdiskpartedgparted:这些工具用于调整分区的大小。在调整分区大小之后,你需要使用 resize2fs 或其他相应的工具来调整文件系统的大小。
  • e2fsck:在调整文件系统大小之前,可能需要使用 e2fsck 来检查文件系统的完整性。
  • xfs_growfsbtrfs 文件系统工具等:对于非 ext 类型的文件系统,需要使用不同的工具来调整大小。 

标签:sudo,Linux,分区,使用,交换,文件系统,dev,常用命令
From: https://blog.csdn.net/2302_82189125/article/details/136508003

相关文章

  • 在Linux中,如何挂载远程NFS共享或iSCSI目标?
    1.挂载远程NFS共享在Linux中挂载远程NFS(NetworkFileSystem)共享通常涉及以下步骤:服务器端配置:配置NFS服务器,编辑/etc/exports文件来定义要共享的目录以及访问权限。例如:#/etc/exports示例/path/to/shared/dirclient-hostname(rw,sync,no_subtree_check)更新NF......
  • 在Linux中,在分布式环境中如何实现文件系统冗余和同步?(例如DRBD、GlusterFS)
    在Linux中,实现分布式环境下的文件系统冗余和同步可以通过使用专门的分布式文件系统技术和块级复制技术来完成。这里重点介绍两种方案:DRBD(DistributedReplicatedBlockDevice)和GlusterFS。1.DRBD(DistributedReplicatedBlockDevice)DRBD是一种块设备级别的存储复制......
  • 在Linux中,如何配置负载均衡器以分配网络流量?
    在Linux中配置负载均衡器以分配网络流量是一个复杂但重要的任务,它涉及到多个组件和步骤。下面将详细介绍配置负载均衡器的一般过程:一、选择负载均衡软件首先,你需要选择一个负载均衡软件。在Linux中,常用的负载均衡软件有HAProxy、Nginx和LVS(LinuxVirtualServer)等。这些软件都可......
  • 在Linux中,MySQL数据库日常运维中涉及哪些关键任务?
    在Linux环境下,MySQL数据库的日常运维涉及到一系列关键任务,旨在保证数据库的稳定性、性能和数据完整性。以下是一些核心运维任务:性能监控与调优使用MySQL自身的SHOWSTATUS、SHOWVARIABLES、EXPLAIN等命令,或结合第三方工具(如PerconaToolkit、MySQLEnterpriseMonitor、Prom......
  • linux常见操作指令
    free-查看内存使用使用概况-m以MB的形式-h以GB的形式df-查看磁盘空间-h以可读性良好的方式显示大小pwd-打印当前路径cp-复制指令mv-移动指令mkdir-创建目录/文件夹rmdir-删除文件夹(只能是空文件夹)rm-删除文档-rf删除文件夹to......
  • 关于linux类系统的操作
    命令杂项主要记录我不知道的指令~:波浪号主要是对应登陆账号的路径,比如用root登陆~特指/root目录>>:双箭头表示从什么文件添加到什么文件的末尾,比如a.txt>>b.txt就是把a的内容追加到b的末尾>:单箭头是覆写,比如a.txt>b.txt,就是把a的内容复制到b的内容,b的内容会全......
  • 常用命令--复制-备份--cp--mv--scp--rsync
    常用命令--复制-备份--cp--mv--scp--rsynccpcp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在......
  • Linux用户态/内核态通信方式汇总
    Linux用户态/内核态通信方式汇总目录Linux用户态/内核态通信方式汇总系统调用(SystemCall)中断(Interrupts)信号(Signal)共享内存(ShareMemory)IOCTLNetlinkprocfs/sysfs用户态和内核态之间的通信方式主要有以下几种:系统调用(SystemCall):这是最常见的方式,用户态程序通过系统调用接口(如......
  • Linux——网络通信
    一.引入Linux进程间通信包括多种机制,如管道、消息队列、信号、共享内存和信号量。这些机制都依赖于Linux内核提供的支持,用于实现不同进程之间的数据交换和同步。然而,这些通信方式在本地进程间通信中非常有用,但无法直接用于跨机器间的通信。二.网络通信在网络通信中,通信的......
  • Linux进程通信——信号
    一.信号的名字和编号1.每个信号都有一个编号和名称,这些名字都以“SIG”开头。  (kill-l命令可显示出当前系统支持的信号的编号和名称)二.信号的处理1.信号的处理有三种方法:  忽略,捕捉,默认动作忽略:有俩种信号不可被忽略(SIGKILL和SIGSTOP),其向 内核 和 超......