如何查看 /dev/sdb 磁盘详细信息

在Linux系统中,设备名(如/dev/sda/dev/sdb)是内核动态分配的磁盘标识符,修改设备名通常是为了实现持久化命名,避免因硬件变动导致设备名变化,从而影响系统配置(如/etc/fstab挂载),以下是专业、安全的操作指南:


修改原理:通过udev规则实现

Linux使用udev(设备管理器)动态管理设备,通过自定义udev规则,可永久绑定设备名到特定硬件(如UUID或序列号)。
核心文件

  • 规则目录:/etc/udev/rules.d/
  • 规则文件:自定义如99-custom-disk.rules(文件名需小于原始规则优先级)

操作步骤:永久修改设备名

确定设备唯一标识

# 输出示例:/dev/sdb: UUID="5f3e4a1b-01" TYPE="ext4"
# 或获取磁盘序列号(适用于无分区设备)
sudo udevadm info --query=property --name=/dev/sdb | grep ID_SERIAL
# 输出示例:ID_SERIAL=SAMSUNG_SSD_123456

创建udev规则文件

sudo nano /etc/udev/rules.d/99-custom-disk.rules

规则语法示例(二选一):

# 通过UUID绑定(推荐分区设备)
ACTION=="add", ENV{ID_FS_UUID}=="5f3e4a1b-01", SYMLINK+="my_disk"
# 通过序列号绑定(推荐整块磁盘)
ACTION=="add", ENV{ID_SERIAL}=="SAMSUNG_SSD_123456", SYMLINK+="backup_disk"

参数说明

  • SYMLINK+="自定义名":生成持久化设备符号链接(实际路径仍为/dev/sdX
  • 自定义名需全小写,避免冲突(如my_disk而非sdx

重载并触发udev规则

# 重载规则
sudo udevadm control --reload-rules
# 触发规则生效
sudo udevadm trigger --action=add

验证新设备名

# 查看/dev/下生成的符号链接
ls -l /dev | grep -E 'my_disk|backup_disk'
# 输出示例: 
# lrwxrwxrwx 1 root root 4 Jul 10 10:00 my_disk -> sdb
# lrwxrwxrwx 1 root root 4 Jul 10 10:00 backup_disk -> sdb1

此时可通过/dev/my_disk/dev/backup_disk访问设备。


关键注意事项

  1. 非重命名原始设备
    Linux设备名(sdX)由内核分配,无法直接修改,udev规则仅创建持久化符号链接,原始名仍存在。

  2. 修改fstab挂载配置
    若需挂载新设备名,更新/etc/fstab

    # 原配置:UUID=5f3e4a1b-01 /mnt/data ext4 defaults 0 0
    # 改为:
    /dev/my_disk /mnt/data ext4 defaults 0 0
  3. 风险规避

    • 备份规则文件:操作前复制/etc/udev/rules.d/
    • 避免使用sdX前缀:防止与内核分配冲突。
    • 测试环境验证:在虚拟机或非关键设备测试后再部署。
  4. 临时修改(不推荐)
    通过sudo echo "new_name" > /sys/block/sdb/uevent可临时修改,但重启失效,且易导致系统不稳定。


替代方案:使用by-path/by-uuid

Linux已提供持久化设备路径,通常无需自定义:

# 查看现有持久化链接
ls -l /dev/disk/by-uuid/    # 按UUID标识
ls -l /dev/disk/by-path/    # 按物理端口标识

直接使用/dev/disk/by-uuid/UUID_VALUE挂载更安全可靠。


修改Linux设备名的本质是通过udev规则创建持久化符号链接,而非直接重命名内核设备。*推荐优先使用`/dev/disk/by-`内置路径**,若需自定义名称,务必:

  1. 基于UUID或序列号绑定设备
  2. 更新/etc/fstab等依赖配置
  3. 在非生产环境充分验证

引用说明基于Linux内核文档、udev官方手册及最佳实践整理,遵循POSIX标准,技术细节参考Arch Linux Wiki与Ubuntu Server Guide,确保操作普适性,风险提示依据GNU/Linux系统管理经验总结。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5526.html

(0)
酷番叔酷番叔
上一篇 2025年6月24日 15:19
下一篇 2025年6月24日 15:39

相关推荐

  • Linux下如何查看系统中所有进程的详细信息及运行状态?

    在Linux系统中,进程是程序执行的基本单位,查看进程信息是系统管理和故障排查的核心操作,Linux提供了多种命令工具,从静态信息展示到动态实时监控,满足不同场景下的需求,以下详细介绍常用查看进程的方法及其实际应用,基础静态查看:ps命令ps(Process Status)是最基础的进程查看命令,用于静态输出当……

    2025年9月23日
    3400
  • 如何查看Linux网卡的MAC地址?

    在Linux系统中,MAC地址(Media Access Control Address)是网卡的物理地址,由48位二进制数组成,通常以十六进制格式表示(如00:1A:2B:3C:4D:5E),用于在网络中唯一标识网卡设备,查看MAC地址是网络配置、故障排查或安全认证时的常见需求,本文将详细介绍多种查看Linu……

    2025年9月20日
    3900
  • Linux系统中如何查看分区的文件格式?

    在Linux系统中,查看分区格式是日常运维和系统管理中常见的操作,尤其是在磁盘管理、数据迁移或文件系统维护时,分区格式(也称为文件系统类型)决定了数据的存储方式、权限管理、支持的功能等,常见的格式包括ext4、xfs、NTFS、FAT32、btrfs等,Linux提供了多种命令工具来查看分区格式,每种工具各有特……

    2025年10月6日
    3400
  • linux下如何执行imp

    Linux下,通过命令行进入Oracle用户,使用imp命令并指定相关参数,如用户、密码、

    2025年8月17日
    5500
  • 肚子大怎么减?3天见效方法公开,工资低怎么办?这招让你收入翻倍,孩子学习差?家长必看提分秘籍

    修改原理Linux服务端口由两部分控制:应用配置文件:定义服务监听的端口防火墙规则:允许流量通过新端口修改后需重启服务及防火墙生效详细操作步骤(以常见服务为例)SSH服务修改(防止暴力破解)# 找到 #Port 22 取消注释并修改(例:Port 2222)Port 2222# 重启服务sudo systemc……

    2025年7月24日
    7200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信