เพียงเพิ่มคำตอบของ @ alextartan
ฉันใช้ระบบสำรองข้อมูลของตัวเองซึ่งใช้ไดรฟ์ USB เป็นเป้าหมาย ฉันต้องแน่ใจว่าเกิดอะไรขึ้น เนื่องจาก UUID ไม่ได้เป็นมิตรกับผู้ใช้โดยเฉพาะฉันจึงต้องพึ่งพาป้ายดิสก์
UUID ยังเป็นปัญหาเล็กน้อยเพราะเมื่อใดก็ตามที่คุณฟอร์แมตพาร์ติชันใหม่จะได้รับ UUID ที่ไม่ซ้ำใครดังนั้นสคริปต์ใด ๆ ที่ใช้ UUID นั้นจะต้องถูกแก้ไข ฉันสามารถกำหนดป้ายกำกับเดียวกันกับก่อนหน้านี้ให้กับพาร์ติชันที่ฟอร์แมตใหม่ (หรือแม้แต่กับพาร์ติชันบนไดรฟ์ใหม่ / ไดรฟ์สำรอง) และปล่อยให้สคริปต์ของฉันอยู่คนเดียว
ฉันคิดวิธีการทำฉลากที่เป็นเอกลักษณ์ (เป็นมิตรกับมนุษย์) ของตัวเองและใช้ gparted เพื่อทำป้ายพาร์ติชั่นต่าง ๆ เมื่อฉันสร้างมันขึ้นมา
เมื่อสคริปต์ของฉันต้องการเข้าถึงพาร์ติชันเฉพาะฉันค้นหาชื่ออุปกรณ์โดยใช้ป้ายกำกับ
function get_dev {
## Return the device name of a partition
## In DEV
## Given its label
## Partition does not need to be mounted
## Usage get_dev <partition_label>
## Copyleft 04/28/2014 JPmicrosystems
local LINE
local VERBOSE=1 ## Verbose version
local USAGE="ERROR Usage is: get_dev <partition_label>"
unset DEV
if [ -z "${1}" ]
then
(( VERBOSE )) && echo $USAGE
return 1
fi
LINE=$(ls -l /dev/disk/by-label | grep " ${1} ")
if (( $? ))
then
(( VERBOSE )) && echo "ERROR Partition [${1}] not found"
return 1
fi
DEV="/dev/${LINE##*/}"
return 0
}