in IT

Converting JetDrive from HFS+ to APFS

애플이 HFS/HFS+를 APFS로 전환하면서, 무난하게 잘 써오던 JetDrive의 파일 시스템도 APFS로 바꾸고 싶었다. 근데 전환이 안되길래 안되나보다 싶었는데, 오늘 Why can’t JDL be converted to APFS?를 읽고 이유를 알았다. 일단 변환해놓고 보니, 파일 시스템의 변경으로 그동안 잘 써온 JetDrive Lite, Dropbox, 그리고 sleepwatcher 조합에 문제가 있겠다 싶었다. 파일 시스템을 확인해보니 마운트하는 디바이스 파일 경로가 바뀌었다.

$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         500.1 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +500.1 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            332.7 GB   disk1s1
   2:                APFS Volume Preboot                 27.0 MB    disk1s2
   3:                APFS Volume Recovery                520.8 MB   disk1s3
   4:                APFS Volume VM                      4.3 GB     disk1s4

/dev/disk2 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *259.7 GB   disk2
   1:                  Apple_HFS Jetdrive                259.7 GB   disk2s1

이랬던 것이, 아래처럼 변했다.

mori:~ joshua$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         500.1 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +500.1 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            331.7 GB   disk1s1
   2:                APFS Volume Preboot                 27.0 MB    disk1s2
   3:                APFS Volume Recovery                520.8 MB   disk1s3
   4:                APFS Volume VM                      4.3 GB     disk1s4

/dev/disk2 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *259.7 GB   disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:                 Apple_APFS Container disk3         259.4 GB   disk2s2

/dev/disk3 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +259.4 GB   disk3
                                 Physical Store disk2s2
   1:                APFS Volume JetDrive                929.8 KB   disk3s1

그래서 .sleep 파일과 .wakeup 파일에서 파일 경로를 수정하니 잘 동작한다.

#!/bin/sh

DROPBOX=$(/usr/local/bin/pidof Dropbox)

if [ "$DROPBOX" != "" ]; then
    osascript -e 'tell application "Dropbox" to quit'
    touch /tmp/dropbox
    echo "off" > /tmp/dropbox
fi

diskutil unmountDisk /dev/disk3 > /dev/null 2>&1
#!/bin/sh

diskutil mount /dev/disk3s1 > /dev/null 2>&1
sleep 3

DROPBOX=$(cat /tmp/dropbox)
if [ "$DROPBOX" == "off" ]; then
    osascript -e 'tell application "Dropbox" to launch'
    rm /tmp/dropbox
fi

그러나… Dropbox Professional 사용자는 Smart Sync를 쓸 수 있어서 굳이 Jetdrive를 쓰는게 맞나 싶네. 스크립트를 테스트하면서 Drobox를 제어하는 행들을 주석으로 처리했더니 Dropbox 드라이브가 그냥 내 홈 디렉터리에 생겼다. 귀찮아서 Dropbox 폴더는 바꾸지 않고 그냥 쓰기로 한다. (그럼 sleepwatcher고 뭐고 JetDrive가 필요없는데?)

댓글달기