Linux 变更磁碟标签、磁碟名称 (label)

Linux 变更磁碟标签、磁碟名称 (label)

Linux变更磁碟标签时必需要注意的是档案系统,每种档案系统用到的变更工具名称是不同的,以下几个常用的档案系统:EXT2/3/4FATNTFS来介绍,不过使用前先确认档案系统为何?

已mount

df

在终端机下执行df -T | awk '{print $1,$2,$NF}' | grep "^/dev"


df -T | awk '{print $1,$2,$NF}' | grep "^/dev"` /dev/sda1 ext4 /

mount

使用mount列出已mount的磁碟并配合grep过滤内容,终端机下执行mount | grep "^/dev"


mount | grep "^/dev" /dev/sda1 on / type ext4 (rw,relatime,data=ordered) /dev/sda1 on /var/lib/docker/devicemapper type ext4 (rw,relatime,data=ordered

未mount

lsblk

在终端机下执行sudo lsblk -f


lsblk -f sda ├─sda1 ext4 d8223078-0def-4914-b5ef-21258619e690 / ├─sda2 └─sda5 swap 4eda73c4-393b-4038-8d2f-1001c84141c5 [SWAP] sdb ├─sdb1 ntfs 系统保留 0006F1BA06F1B130 └─sdb2 ntfs SYSC 2C96F5C696F59116 sdc └─sdc1 ntfs T16G-NTFS 231B14DE2178C2F2

blkid

执行sudo blkid


/dev/sdb1: LABEL="M-gM-3M-;M-gM-5M-1M-dM-?M-^]M-gM-^UM-^Y" UUID="0006F1BA06F1B130" TYPE="ntfs" PARTUUID="57910ec1-01" /dev/sdb2: LABEL="SYSC" UUID="2C96F5C696F59116" TYPE="ntfs" PARTUUID="57910ec1-02" /dev/sda1: UUID="d8223078-0def-4914-b5ef-21258619e690" TYPE="ext4" PARTUUID="5e3451d5-01" /dev/sda5: UUID="4eda73c4-393b-4038-8d2f-1001c84141c5" TYPE="swap" PARTUUID="5e3451d5-05" /dev/loop0: UUID="7bf296ce-23bc-403c-870b-5d977be1ffa9" TYPE="xfs" /dev/mapper/docker-8:1-4063885-pool: UUID="7bf296ce-23bc-403c-870b-5d977be1ffa9" TYPE="xfs" /dev/sdc1: LABEL="T16G-NTFS" UUID="231B14DE2178C2F2" TYPE="ntfs" PTTYPE="dos" PARTUUID="c3072e18-01"

file

使用file -sL /dev/sd*,配上万用字元可以查看所有/dev/sd开头的磁碟


file -sL /dev/sd* sudo file -sL /dev/sd* /dev/sda: DOS/MBR boot sector /dev/sda1: Linux rev 1.0 ext4 filesystem data, UUID=d8223078-0def-4914-b5ef-21258619e690 (needs journal recovery) (extents) (large files) (huge files) /dev/sda2: DOS/MBR boot sector; partition 1 : ID=0x82, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsector 63, 19604340 sectors, extended partition table (last) /dev/sda5: Linux/i386 swap file (new style), version 1 (4K pages), size 2450541 pages, no label, UUID=4eda73c4-393b-4038-8d2f-1001c84141c5 /dev/sdb: DOS/MBR boot sector MS-MBR Windows 7 english at offset 0x163 "Invalid partition table" at offset 0x17b "Error loading operating system" at offset 0x19a "Missing operating system", disk signature 0x57910ec1; partition 1 : ID=0x7, active, start-CHS (0x0,32,33), end-CHS (0x3f,221,30), startsector 2048, 1024000 sectors; partition 2 : ID=0x7, start-CHS (0x3f,221,31), end-CHS (0x3ff,254,63), startsector 1026048, 249038848 sectors /dev/sdb1: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 63, heads 255, hidden sectors 2048, dos < 4.0 BootSector (0x80), FAT (1Y bit by descriptor); NTFS, sectors/track 63, sectors 1023999, $MFT start cluster 42666, $MFTMirror start cluster 2, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number 06f1ba06f1b130 /dev/sdb2: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 63, heads 255, hidden sectors 1026048, dos < 4.0 BootSector (0x80), FAT (1Y bit by descriptor); NTFS, sectors/track 63, sectors 249038847, $MFT start cluster 786432, $MFTMirror start cluster 2, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number 02c96f5c696f59116 /dev/sdc: DOS/MBR boot sector MS-MBR XP english at offset 0x12c "Invalid partition table" at offset 0x144 "Error loading operating system" at offset 0x163 "Missing operating system", disk signature 0xc3072e18; partition 1 : ID=0x7, start-CHS (0x0,32,33), end-CHS (0x3ff,254,63), startsector 2048, 30849024 sectors /dev/sdc1: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 32, heads 64, hidden sectors 2048, dos < 4.0 BootSector (0x80), FAT (1Y bit by descriptor); NTFS, sectors/track 32, sectors 30849023, $MFT start cluster 4, $MFTMirror start cluster 1928063, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number 0231b14de2178c2f2

再依照你的档案系统选择对应的工具程式来修改标签名称。

EXT2/3/4

指令

e2label指令只能变更EXT档案系统的磁碟(EXT2/EXT3/EXT4),其他档案系统是无法变更的。

查询磁碟名称


sudo e2label 磁碟代号(/dev/sdx)

变更磁碟名称


sudo e2label 磁碟代号(/dev/sdx) 磁碟名称

名称长度限制

Label长度限制为16个字元(英文字母),如果你变更的Label长度超过16字元时e2label会印出警告讯息保留前16字元的内容。

root@Unix-242:~# sudo e2label /dev/sdd1 DUS2N-12345678901239
Warning: label too long, truncating.
root@Unix-242:~# sudo e2label /dev/sdd1
DUS2N-1234567890
root@Unix-242:~#

范例

root@Unix-242:~# sudo e2label /dev/sdd1
DUS2N
root@Unix-242:~#

DUS2N变更DUS2N-1后:

root@Unix-242:~# sudo e2label /dev/sdd1 DUS2N-1
root@Unix-242:~# sudo e2label /dev/sdd1
DUS2N-1
root@Unix-242:~#

FAT

FAT档案系统变更磁碟标签名称需要使用到mlabel指令,它是属于mtools的一部分,使用前必需要先安装mtools工具。

安装mtools

sudo pacman -S mtools

Ubuntu/Debian/mnt


sudo apt install mtools

mlabel必需使用root权限,使用前加上sudo或是使用root权限执行,而且要在root权限加入一个大写英文字母环境变数MTOOLS_SKIP_CHECK值为1:


export MTOOLS_SKIP_CHECK=1

或是加小写字母变数值mtools_skip_check=1在档案/root/.mtoolsrc之中:


echo "mtools_skip_check=1" > ~/.mtoolsrc

让mtools不检查磁轨数量,直接执行命令。

更方便一点则是在sudo输入执行时的参数值:

sudo MTOOLS_SKIP_CHECK=1 mlabel

之后范例介绍会使用此方式。

查询磁碟名称


sudo MTOOLS_SKIP_CHECK=1 mlabel -i 磁碟代号(/dev/sdx) -s

变更磁碟名称


sudo MTOOLS_SKIP_CHECK=1 mlabel -i 磁碟代号(/dev/sdx) ::磁碟标签名称

名称长度限制

Label长度限制为11个字元(英文字母),如果你变更的Label长度超过11字元时会警告。


root@Unix-242:~# sudo MTOOLS_SKIP_CHECK=1 mlabel -i /dev/sdd1 ::DUS2N-12345678901239 New label too long root@Unix-242:~#

范例

root@Unix-242:~# sudo MTOOLS_SKIP_CHECK=1 mlabel -i /dev/sdd1 -s
DUS2N
root@Unix-242:~#


DUS2N变更DUS2N-1后:

root@Unix-242:~# sudo MTOOLS_SKIP_CHECK=1 mlabel -i /dev/sdd1 ::DUS2N-1
root@Unix-242:~# sudo MTOOLS_SKIP_CHECK=1 mlabel -i /dev/sdd1 -s
DUS2N-1
root@Unix-242:~#

NTFS

NTFS档案系统变更磁碟标签名称需要使用到ntfslabel指令,它是属于ntfs-3g的一部分,使用前必需要先安装ntfs-3g工具。

安装ntfs-3g

sudo pacman -S extra/ntfs-3g

Ubuntu/Debian/mnt


sudo apt install ntfs-3g

查询磁碟名称


sudo ntfslabel 磁碟代号(/dev/sdx)

变更磁碟名称


sudo ntfslabel 磁碟代号(/dev/sdx) 磁碟标签名称

名称长度限制

Label长度限制为128个Unicode字元,如果你变更的Label长度超过时会印出警告讯息并保留前128个Unicode字元的内容

范例

root@Unix-242:~# sudo ntfslabel /dev/sdd1
DUS2N
root@Unix-242:~#


DUS2N变更DUS2N-1后:

root@Unix-242:~# sudo ntfslabel /dev/sdd1 DUS2N-1
root@Unix-242:~# sudo ntfslabel /dev/sdd1
DUS2N-1
root@Unix-242:~#

资料参考

更新日志

日期 内容
2017/05/31 重新编排内容增加FAT、NTFS
2015/03/11 标题:变更Linux EXT2/EXT3/EXT4 磁碟的Label 名称

关键字

  • 变更Linux EXT2/EXT3/EXT4 磁碟的Label 名称
  • 磁碟标签
  • change filesystem label
  • e2label mlabel ntfslabel