วิธีการเมานดิสก์โดย UUID หรือ LABEL ใน OS X El Capitan


17

ฉันได้รับ UUID และฉลากของดิสก์ diskutil info disk0s4

diskutil info disk0s4
   Device Identifier:        disk0s4
   Device Node:              /dev/disk0s4
   Whole:                    No
   Part of Whole:            disk0
   Device / Media Name:      Untitled

   Volume Name:              Data

   Mounted:                  No

   File System Personality:  HFS+
   Type (Bundle):            hfs
   Name (User Visible):      Mac OS Extended
   Journal:                  Unknown (not mounted)
   Owners:                   Disabled

   Partition Type:           Apple_HFS
   OS Can Be Installed:      No
   Media Type:               Generic
   Protocol:                 PCI
   SMART Status:             Verified
   Volume UUID:              F8C88B2D-5412-343B-8969-254F3AC559B8
   Disk / Partition UUID:    1738336E-68DD-46B1-997E-57469CF0472D

   Total Size:               338.0 GB (337984569344 Bytes) (exactly 660126112 512-Byte-Units)
   Volume Free Space:        0 B (0 Bytes) (exactly 0 512-Byte-Units)
   Device Block Size:        512 Bytes

   Read-Only Media:          No
   Read-Only Volume:         Not applicable (not mounted)

   Device Location:          Internal
   Removable Media:          No

   Solid State:              Yes

mount การใช้ฉลากเสียงไม่ทำงาน:

$ sudo mount -t hfs LABEL=Data /Users/user/test
GetMasterBlock: Error 2 opening LABEL=Data
GetMasterBlock: Error 2 opening LABEL=Data
mount_hfs: error on mount(): error = -1.
mount_hfs: No such file or directory

mount การใช้วอลุ่ม UUID ไม่สามารถใช้กับหรือไม่ใส่เครื่องหมายคำพูด:

$ sudo mount -t hfs uuid=F8C88B2D-5412-343B-8969-254F3AC559B8 /Users/user/test
GetMasterBlock: Error 2 opening uuid=F8C88B2D-5412-343B-8969-254F3AC559B8
GetMasterBlock: Error 2 opening uuid=F8C88B2D-5412-343B-8969-254F3AC559B8
mount_hfs: error on mount(): error = -1.
mount_hfs: No such file or directory
$ sudo mount -t hfs UUID="F8C88B2D-5412-343B-8969-254F3AC559B8" /Users/user/test
GetMasterBlock: Error 2 opening UUID=F8C88B2D-5412-343B-8969-254F3AC559B8
GetMasterBlock: Error 2 opening UUID=F8C88B2D-5412-343B-8969-254F3AC559B8
mount_hfs: error on mount(): error = -1.
mount_hfs: No such file or directory

mount ใช้งานตัวระบุปริมาณ

mymac:~ user$ sudo mount -t hfs /dev/disk0s4 /Users/user/test

ปรับปรุง:

เป้าหมายของฉันคือการวางmountสายใน/etc/fstabขณะที่ฉันต้องการที่จะเมานไดรฟ์ไปยังจุดที่กำหนดเอง


ในขณะที่คุณได้พบแล้วออกmountคำสั่งไม่สามารถใช้UUIDหรือและต้องใช้ดิสก์ตัวบ่งชี้เช่นLABEL /dev/disk0s4นอกจากนี้เป็น perhapsmaybeharry ชี้ให้เห็นว่า OS X diskutilวิธีการคือการใช้งาน ในการแก้ไขปรับปรุงของคุณ ... แต่fstabสามารถใช้UUIDหรือเพียงมองตัวอย่างในหน้าคนสำหรับLABEL fstabในประเภทเทอร์มินัลfstabแล้วคลิกขวาfstabและเลือกเปิดหน้าคนจากนั้นอ่านให้ครบถ้วน! :)
user3439894

@ user3439894 ฉันพยายามเส้นในfstabเช่นนี้และวิ่งUUID=<volume_uuid> /mount/point auto sudo mount -aข้อผิดพลาดเดียวกันเกิดขึ้น:... mount_hfs: No such file or directory
biocyberman

ฟิลด์ที่สอง (fs_file) ซึ่งเป็นจุดเมาท์ต้องมีอยู่แล้วใช่ไหม
user3439894

ใช่มันมีอยู่จริง
biocyberman

ฉันไม่มีปัญหาในการใช้fstabแต่ฉันมักจะใช้อย่างน้อยสี่ฟิลด์แรก ฉันเห็นเขตข้อมูลที่สามของคุณหายไป (fs_vfstype) ในความคิดเห็นของคุณ คุณไม่สนใจมันfstabหรือไม่? คุณควรแก้ไขคำถามของคุณและแสดงสิ่งที่คุณได้ลองfstabและตัวแก้ไขที่คุณใช้ ที่กล่าวว่าไม่มีจุดเชื่อมต่อใด ๆ ของฉันแล้วนอกจากนี้ค่าเริ่มต้น / Volumesที่noneตั้งไว้ ฉันจะทดสอบเมื่อฉันเห็นการแก้ไขและจุดเมานท์ที่คุณพยายาม
user3439894

คำตอบ:


17

เมื่อใช้ OS X จะแนะนำให้ใช้diskutilกับกิจกรรมที่เกี่ยวข้องกับดิสก์มากกว่า

TL; DR:

ในการเมานต์โวลุ่ม / ดิสก์ด้วยตัวระบุ:

diskutil mount /dev/diskXsY          # mounts just that volume
diskutil mountDisk /dev/diskX        # mounts the whole disk

วิธีเมานต์โวลุ่มโดย UUID:

diskutil mount [Volume/Partition UUID]

ในการเมานต์โวลุ่มโดยใช้ป้ายกำกับ:

diskutil mount [label]

คำอธิบาย

ด้วยdiskutil, ตัวระบุโหนด ( /dev/diskXsY) สามารถใช้แทนกันได้กับ UUIDs: ในdiskutilการดำเนินการใด ๆ(เช่นeject), UUID สามารถระบุได้แทนการระบุโหนด จากหน้าคน:

อุปกรณ์

พารามิเตอร์อุปกรณ์ของคำสั่งใด ๆ ข้างต้น (ยกเว้นที่จำเป็นอย่างชัดเจน) อาจเป็นอย่างใดอย่างหนึ่งต่อไปนี้:

o ตัวระบุดิสก์ (ดูด้านล่าง) รายการใด ๆ ในรูปแบบของดิสก์ * เช่น disk1s9

o รายการอุปกรณ์โหนดที่มีตัวระบุดิสก์ รายการใด ๆ ในรูปแบบของ / dev / disk * เช่น / dev / disk2

o จุดเมานต์ระดับเสียง รายการใด ๆ ของรูปแบบ / เล่ม / * เช่น / เล่ม / ไม่มีชื่อ ในกรณีส่วนใหญ่จุดรับ "กำหนดเอง" เช่น / your / custom / mountpoint / ที่นี่ก็เป็นที่ยอมรับเช่นกัน

o รูปแบบ URL ของรูปแบบจุดเมานต์ปริมาณใด ๆ เช่นไฟล์: /// เล่ม / ไม่มีชื่อหรือไฟล์: ///

o UUID รายการใด ๆ ของรูปแบบของเช่น 11111111-2222-3333-4444-555555555555 UUID สามารถเป็น UUID "สื่อ" ซึ่ง IOKit วางอยู่ในโหนด IOMedia ซึ่งได้มาจากพาร์ติชั่น UUID ของแผนที่ GPT หรือเป็นชุด AppleRAID (หรือ CoreStorage) (LV) หรือ UUID สมาชิก (PV)

จากman diskutilส่วน 'อุปกรณ์'


การรับตัวระบุ / UUIDs / label เหล่านี้นั้นเป็นเรื่องง่ายโดยใช้คำสั่งใดคำสั่งหนึ่งต่อไปนี้:

diskutil list                               # lists all connected volumes and their identifiers
diskutil info /dev/diskXsY | grep UUID      # gets the UUID of a connected volume

ค่าที่ส่งคืนจากคำสั่งเหล่านี้ควรมีลักษณะดังนี้:

$ 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_HFS Macintosh SSD           499.4 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

$ diskutil info /dev/diskXsY | grep UUID
Volume UUID:              1F340CD7-G071-4218-98DG-2D08G89CC57C
Disk / Partition UUID:    76E7G531-G6C3-5E37-C11B-BCEEC67D12G4

ดังที่แสดงด้านบนตัวระบุสามารถพบได้จากIDENTIFIERคอลัมน์ป้ายกำกับจากNAMEคอลัมน์และ UUID จากUUIDฟิลด์ใดฟิลด์หนึ่ง (UUID ใดจะติดวอลลุ่ม)

ตามป้ายกำกับ:

$ diskutil mount Recovery\ HD
Volume Recovery HD on Recovery HD mounted

โดย UUID:

$ diskutil mount 67EG87EB-CB01-4ED9-082D-303F63CF6394
Volume Recovery HD on 67EG87EB-CB01-4ED9-082D-303F63CF6394 mounted

โดยตัวระบุดิสก์:

$ diskutil mount /dev/disk0s3
Volume Recovery HD on /dev/disk0s3 mounted

นอกจากนี้สำหรับการแก้ไขคำถามของ OP: การติดตั้งเส้นทางที่กำหนดเอง

คุณสามารถทำได้ด้วยdiskutil mountและ-mountPointตัวเลือก จากหน้าคน:

เมานต์ [readOnly] อุปกรณ์ [-mountPoint path]

เมานต์โวลุ่มเดียว หากระบุ readOnly ไว้ระบบไฟล์จะถูกเมาท์เป็นแบบอ่านอย่างเดียวแม้ว่าระบบไฟล์และ / หรืออุปกรณ์และ / หรือสื่อที่รองรับจะรองรับการเขียน แม้แต่ผู้ใช้ขั้นสูงก็ไม่สามารถเขียนได้ นี่เป็นเช่นเดียวกับตัวเลือก rdonly ที่จะเมานต์ (8) หากระบุ -mountPoint จะมีการใช้พา ธ นั้นแทนพา ธ มาตรฐานของ / Volumes / VolumeName ซึ่งจะใช้เป็นมุมมองในไฟล์วอลุ่ม ไดเรกทอรีที่เส้นทางนั้นจะต้องมีอยู่แล้ว

จากman diskutilส่วน 'คำกริยา'

ไวยากรณ์ที่จะเมานต์ไปยังจุดเมานต์ที่กำหนดเองมีดังนี้:

diskutil mount -mountPoint /path/to/custom/mountpoint [volume (identifier/UUID/label)]

โปรดจำไว้ว่า/path/to/custom/mountpoint ต้องเป็นไดเรกทอรีเช่นเดียวกับmountและตัวระบุ / UUID / ฉลากของคุณนั้นมีความเฉพาะเจาะจงกับไดรฟ์ข้อมูล (เช่น/dev/diskXsYไม่ใช่/dev/diskX) ไม่สามารถทำการเมานท์ที่กำหนดเองได้diskutil mountDiskและใช้ได้กับโวลุ่มเดี่ยวในแต่ละครั้งเท่านั้น


ขอบคุณสำหรับคำตอบคุณสามารถตรวจสอบส่วนการปรับปรุงในคำถามของฉันและที่อยู่ได้หรือไม่
biocyberman

@biocyberman อัปเดตคำตอบของฉัน หากไม่ได้กล่าวถึงการเพิ่มของคุณอย่างเหมาะสมโปรดแจ้งให้เราทราบ
2559

2

นี่คือสิ่งที่ฉันใช้ในการติดตั้ง SSD ภายนอกลงในโฟลเดอร์เพลงของฉันที่มีไฟล์สื่อ iTunes ของฉันโดยอัตโนมัติเมื่อใดก็ตามที่ฉันลงชื่อเข้าใช้คุณไม่ได้พูดอย่างชัดเจนว่าจุดประสงค์ของการติดตั้งภายนอกคืออะไร เป็นสิ่งที่คุณต้องการ แต่หลังจากนั้นอีกครั้งมันอาจเป็นสิ่งที่คุณพยายามทำ

ตามที่กล่าวถึงในคำถามของคุณและในคำตอบของ @ บางทีอาจเบย์ฮาร์รีคำmountสั่งไม่สนับสนุน UUID ดังนั้นจึงdiskutilเป็นยูทิลิตี้ที่แนะนำ อย่างไรก็ตามfstabไฟล์นี้รองรับ UUID ดังนั้นคุณสามารถเก็บพารามิเตอร์การเมาท์fstabจากนั้นdiskutilจะอ่านพารามิเตอร์จากfstabเพื่อเมานต์ไดรฟ์ของคุณ

  • ใน~/Music/iTunes/สร้างโฟลเดอร์ที่จะใช้สำหรับเมานต์ SSD_Musicผมใช้
  • ใช้sudo vifsเพื่อแก้ไขfstabไฟล์เพิ่มบรรทัดต่อไปนี้เป็นบรรทัดเดียว (แก้ไข UUID และ USERNAME ตามความเหมาะสม) จากนั้นบันทึก / ออก UUID=F8C88B2D-5412-343B-8969-254F3AC559B8 /Users/USERNAME/Music/iTunes/SSD_Music hfs rw,noauto,noowners,nobrowse 0 0

    • noauto = ไม่ต้องต่อไดร์ฟระหว่างบู๊ต ฉันพบเวลาที่ไดรฟ์ถูกเมาท์เป็นรูทแทนที่จะเป็นฉันดังนั้นจึงเป็นการดีกว่าที่จะรอจนกว่าคุณจะเข้าสู่ระบบ
    • noowners = เพิกเฉยการเป็นเจ้าของเสียง สิทธิ์จะถูกสืบทอดจากจุดเมานท์ หากฉันไม่ได้ใช้สิ่งนี้โวลุ่มที่เมาท์จะเป็นเจ้าของโดยรูท แต่ฉันเป็นเจ้าของไดเรกทอรีย่อย
    • nobrowse = ไม่ต้องแสดงดิสก์ใน Finder Sidebar หรือ Desktop
  • ดำเนินการเมาท์ด้วยdiskutil mount F8C88B2D-5412-343B-8969-254F3AC559B8( หมายเหตุ:ห้ามรวมส่วนUUID=นำหน้าในคำสั่งนี้
  • หวังว่ามันจะติดตั้งโดยไม่มีข้อผิดพลาด ตรวจสอบด้วยmountซึ่งควรแสดงสิ่งที่ชอบ/dev/disk2s2 on /Users/USERNAME/Music/iTunes/SSD_Music (hfs, local, nodev, nosuid, journaled, noowners, nobrowse)
  • หากคุณทำสิ่งนี้กับ iTunes คุณจะต้องสร้างนามแฝงสำหรับiTunes Mediaโฟลเดอร์เพื่อให้ชี้ไปที่โฟลเดอร์บนดิสก์ที่เมานต์
    • ออกจาก iTunes หากทำงานอยู่
    • cd ~/Music/iTunes/
    • mv 'iTunes Media' 'iTunes Media-bak'
    • ln -s 'SSD_Music/iTunes Media' 'iTunes Media'
    • ditto 'iTunes Media-bak' 'iTunes Media'เพื่อคัดลอกสื่อของคุณไปยังไดรฟ์ใหม่ ข้ามสิ่งนี้หากคุณคัดลอกมาแล้ว
  • ถอนติดตั้งดิสก์ด้วย diskutil unmount ~/Music/iTunes/SSD_Music

ตอนนี้คุณสามารถติดตั้งไดรฟ์ด้วย UUID ได้โดยอัตโนมัติเมื่อคุณลงชื่อเข้าใช้

  • ใน~/Library/LaunchAgents/สร้างไฟล์ใหม่ที่เรียกว่าlocal.mount_SSD_Music.plist
  • คัดลอก / วาง XML ต่อไปนี้ลงในไฟล์ใหม่จากนั้นบันทึก / ออก

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>Disabled</key>
        <false/>
        <key>KeepAlive</key>
        <false/>
        <key>Label</key>
        <string>local.mount_SSD_Music</string>
        <key>ProcessType</key>
        <string>Background</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/sbin/diskutil</string>
            <string>mount</string>
            <string>F8C88B2D-5412-343B-8969-254F3AC559B8</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
    </dict>
    </plist>
    
  • ตรวจสอบให้แน่ใจว่าไดรฟ์นั้นไม่ได้ต่อเชื่อม

  • ทดสอบการติดตั้งโดยใช้ plist LaunchAgent launchctl load ~/Library/LaunchAgents/local.mount_SSD_Music.plistใหม่ที่มี หวังว่ามันจะติดตั้งโดยไม่มีข้อผิดพลาดอีกครั้ง

ดังนั้นตอนนี้ถ้าคุณรีบูทไดรฟ์ภายนอกจะถูกเชื่อมต่อโดยอัตโนมัติเมื่อคุณเข้าสู่ระบบ

หวังว่านี่จะช่วยได้!


0

ฉันรวมความคิดเห็นของฉันไว้ในคำตอบเนื่องจากฉันเชื่อว่ามันเป็นfstabปัญหา

ในขณะที่คุณได้พบแล้วออกmountคำสั่งไม่สามารถใช้UUIDหรือและต้องใช้ดิสก์ตัวบ่งชี้เช่นLABEL /dev/disk0s4นอกจากนี้เป็น perhapsmaybeharry ชี้ให้เห็นว่า OS X diskutilวิธีการคือการใช้งาน ในการแก้ไขปรับปรุงของคุณ ... แต่fstabสามารถใช้UUIDหรือเพียงมองตัวอย่างในหน้าคนสำหรับLABEL fstabในประเภทเทอร์มินัลfstabจากนั้นคลิกขวาfstabและเลือกเปิดหน้าคน อ่านอย่างครบถ้วน! :)

ฉันไม่มีปัญหาในการใช้fstabแต่ฉันมักจะใช้อย่างน้อยสี่ฟิลด์แรก ฉันเห็นว่าคุณพลาดฟิลด์ที่สาม (fs_vfstype) ในความคิดเห็นของคุณ คุณไม่สนใจมันfstabหรือไม่? คุณควรแก้ไขคำถามของคุณและแสดงสิ่งที่คุณได้ลองfstabและตัวแก้ไขที่คุณใช้

ลอง: UUID=1738336E-68DD-46B1-997E-57469CF0472D /mount/point hfs rw,autoที่ไหน/mount/pointเป็นไดเรกทอรีมาก่อน

ฉันได้ทดสอบสิ่งนี้ในระบบของฉันโดยใช้ฉันUUIDมันเป็นของคุณUUIDที่ฉันแนะนำให้คุณลอง

หมายเหตุ:มันจะเมานต์ไปยังจุดเมานท์ที่กำหนดถ้าฉันรวมฟิลด์ที่สาม (fs_vfstype) มิฉะนั้นจะเมานต์ใน/Volumesแม้ว่าจะมีฟิลด์ที่สอง (fs_file) อยู่ก็ตาม


ฉันได้ทำการทดสอบก่อนหน้านี้และฉันมีสองเล่มที่เหมือนกันซึ่งติดตั้งด้วยUUID=... /mount/point hfs rw,autoใน El Capitan: 1. / mount / point และ 2. / เล่ม
klanomath

@ kanomath ไม่แน่ใจว่าสิ่งที่คุณกำลังพยายามที่จะพูดอื่น ๆ แล้วมันอาจจะทำงานตามที่ฉันพูดในคำตอบของฉันได้อย่างไร หรือคุณกำลังบอกว่ามันติดตั้งสองครั้งไม่ว่าอะไรจะเกิดขึ้น BTW ฉันใช้ OS X 10.8.5
user3439894

@ kanomath ฉันได้แก้ไขแล้วหวังว่ามันจะชัดเจนขึ้น ตอนนี้กลับไปแสดงความคิดเห็นครั้งแรกของคุณที่คุณบอกว่าภายใต้ OS X 10.11 มันจะติดที่กำหนดเองเป็นจุดติด แต่ก็ยังเมาท์จุดที่สองติดที่เริ่มต้น/Volumesเกินไปมีเพียงหนึ่งบรรทัดเพิ่มไปยังfstab?
user3439894

ใช่นั่นคือประสบการณ์ของฉัน ฉันเขียนคำตอบที่คล้ายกัน แต่แล้วฉันก็ตระหนักว่าไดรฟ์ข้อมูลที่แสดงสองครั้ง: บนเดสก์ท็อป (ซึ่งเป็น / ปริมาณ) และที่จุดเชื่อมต่อที่กำหนดไว้ใน fstab (ซึ่ง / ผู้ใช้ / ผู้ใช้ / ทดสอบ)
klanomath

@ kanomath ฉันไม่เคยเห็นคำตอบของคุณฉันคิดว่าคุณลบมันก่อนที่ฉันจะเห็นคำถามนี้ เนื่องจากฉันใช้ OS X 10.8.5 และไม่มีเครื่องทดสอบ OS X 10.11.x จึงมีไม่มากที่ฉันสามารถทำได้เพื่อลบคำตอบของฉัน
user3439894
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.