Mount bằng PARTUUID hay LABEL?

Xem xét đoạn script dùng backup như sau

#!/bin/bash
# LNT <lnt@lyle.info>

# Tạo thư mục tạm
F=$(mktemp -d -q -t bk.XXXXXXXXXX)
mkdir -p "$F"

# Mount thiết bị vào thư mục tạm
grep -qs "$F" /proc/mounts || mount -t ext4 <device> "$F"

# Sao chép file để lưu trữ
rsync -av --copy-links /mnt/ $F &
rsync -av /cctv $F &

# Chờ tất cả lệnh trên đều xong
wait

# umount và xóa thư mục tạm
grep -qs "$F" /proc/mounts && umount "$F" && rmdir "$F"

Mô tả thiết bị <device> như thế nào?

  • Cách đơn giản nhất là dùng tên như /dev/sdb1. Tuy nhiên nếu thiết bị gắn vào RPi trước hay sau thiết bị khác hay khác cổng USB thì tên thay đổi, script không chạy đúng.
  • Cách khác là dùng PARTUUID=xxxx... PARTUUID là duy nhất với mỗi thiết bị, nên tiện dùng khi thiết bị gắn cố định hay dùng không thay thế.
  • Cách khác nữa là dùng LABEL=… LABEL có thể đặt tùy ý cho partition hay ổ đĩa. Nếu dùng nhiều thiết bị có cùng label thì đều lần lượt dùng được với script trên.
grep -qs "$F" /proc/mounts || mount -t ext4 LABEL=MYBACKUP "$F"

Dùng lệnh e2label để đặt label

e2label /dev/sdb1 MYLABEL

Comments Off on Mount bằng PARTUUID hay LABEL?

Filed under Software

Comments are closed.