本文介绍了在修改磁盘UUID时需要注意的事项,如先卸载磁盘并提供生成UUID(如使用`uuidgen`)、查看分区信息(`blkid`),以及针对不同文件系统(如XFS、Btrfs和NTFS)进行调整的脚本示例,包括使用Java生成NTFSUUID的示例和修改NTFS卷标签的方法。
注意事项修改磁盘 uuid 的时候,磁盘不能被挂载需要先卸载
#/dev/sdb5 硬盘设备分区名称
sudo umount /dev/sdb5
生成UUID的命令[不适合NTFS nfs等windows格式] uuidgen
查看硬盘分区设备名字以及UUID的命令 blkid
修改 exit 2 3 4 {#%E4%BF%AE%E6%94%B9-exit-2-3-4}
#!/bin/bash
MY_UUID=$(uuidgen)
sudo umount /dev/sdb5
sudo tune2fs -U ${MY_UUID} /dev/sdb5
xfs {#xfs}
#!/bin/bash
MY_UUID=$(uuidgen)
sudo umount /dev/sdb5
sudo xfs_admin -U ${MY_UUID} /dev/sdb5
btrfs {#btrfs}
#!/bin/bash
MY_UUID=$(uuidgen)
sudo umount /dev/sdb5
sudo btrfstune -U ${MY_UUID} /dev/sdb5
ntfs {#ntfs}
生成 NTFS UUID 的 JAVA 程序
ntfs-uuid.java
package com.dj;
import java.util.UUID;
/\*\*
`
`
*
@Author: ldj
*
@Date: 2021/11/18/10:59
* `
`@Description: 生成16位唯一id
*/
public class UUID16 {
`
`
public static void main(String[] args) {
System.out.println(getUUID16());
}
`
`
`public static String getUUID16(){
//1.UUID生成32位数
String uuid32 = UUID.randomUUID().toString().replace("-", "");
//2.然后截取前面或后面16位
String uuid16 = uuid32.substring(0, 16);
return uuid16;
}
}
`
生成 ntfs uuid {#%E7%94%9F%E6%88%90-ntfs-uuid}
java ./ntfs-uuid.java | tr a-z A-Z
#!/bin/bash
MY_UUID=$(java ./ntfs-uuid.java | tr a-z A-Z)
sudo umount /dev/sdb5
sudo ntfslabel --new-half-serial="${MY_UUID}" /dev/sdb5