Ghi vào ổ đĩa định dạng NTFS trên Yosemite

Đã trả lời

Thỉnh thoảng mình cần gắn các USB được định dạng NTFS và ghi vào chúng. Trên Marvericks mình hoàn thành việc này bằng cách sử dụng công thức Homebrew ntfs-3g, cái phụ thuộc vào osxfuse.

Sau khi nâng cấp lên Yosemite, osxfuse bị hỏng. Tin nhắn từ Homebrew như sau:

==> Upgrading osxfuse
osxfuse: OS X Mavericks or older is required for this package.
OS X Yosemite introduced a strict unsigned kext ban which breaks this package.
You should remove this package from your system and attempt to find upstream
binaries to use instead.
Error: An unsatisfied requirement failed this build.

Mình cho rằng tin nhắn này có nghĩa là phần mở rộng nhân hệ thống (kernel extension-kext) được sử dụng bởi osxfuse  hoàn toàn không được cho phép trong Yosemite bởi vì nó không được cho phép bởi Apple, trong khi đó nó lại được cho phép ở Mavericks.

Vì vậy, có cách nào để gắn và ghi lên các USB được định dạng NTFS trong Yosemite mà sử dụng phần mềm nguồn mở hoặc phần mềm miễn phí (không phải là phần mềm gián điệp/phần mềm độc hại hay gắn kèm với những thanh công cụ vô dụng…) từ App Store?

Bình luận
Chấp nhận

Mở Terminal

Nếu bạn đã cài đặt  brewed osxfuse, bạn phải gỡ bỏ nó, bởi vì hiện tại các kext chưa được đánh dấu ( unsigned kext) đã bị cấm.

Gõ:

brew cask uninstall osxfuse

 

Mặt khác, nếu bạn vẫn chưa có Homebrew, hãy tải nó về:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

 

Khuyến cáo bạn nên cập nhật Homebrew:

brew update

 

Nếu bạn vẫn chưa cài Homebrew Cask, nhập dòng sau:

brew install caskroom/cask/brew-cask

 

Cài đặt một gói binary osxfuse từ Homebrew Cask:

brew cask install osxfuse

 

Cài đặt ntfs-3g :

brew install homebrew/fuse/ntfs-3g

 

Bạn cần tạo 1 liên kết tượng trưng (symlink) cho mount_ntfs , để các ổ đĩa gắn tự động:

sudo mv /sbin/mount_ntfs /sbin/mount_ntfs.original 
sudo ln -s /usr/local/sbin/mount_ntfs /sbin/mount_ntfs

Nếu bạn đang dùng v và lệnh phía trên thất bại, thử lệnh sau:

sudo nvram boot-args="rootless=0"

 

Tuy nhiên, cách làm này không hiệu quả với mình trong bản El Capitan cuối cùng (từ Mac App Store). Mình phải vô hiệu hóa SIP qua sự khôi phục. Ai xác nhận hộ mình xem bước này có thực sự cần thiết hay không?

… và nhớ khởi động lại máy. Sau đó thử lại symlinking mount_ntfs.

Đã trả lời vào July 28, 2016
Bình luận

Thường thì mình sử dụng Paragon NTFS, nhưng chỉ thử phương pháp này với 10.10.1 và có vẻ nó có hiệu quả sau khi kiểm tra sơ bộ (tạo 1 folder và sao chép một vài file nhỏ)

Sau khi vô hiệu hóa  Paragon, một ổ đĩa flash được định dạng NTFS không thể ghi được:

NTFS USB drive not writeable

Mình đã thêm drive đó và các cờ cần thiết đến file fstab của mình:

NTFS options in fstab

Sau đó rút ra và cắm lại ổ đĩa flash. Đảm bảo rằng nó không còn xuất hiện ở thanh nội dung dưới các thiết bị. Bạn phải  qua thư mục Volumes để tìm nó. Tuy vậy, hiện tại nó lại có thể ghi được rồi

 

NTFS USB drive not writeable

Không cần sử dụng phần mềm của bên thứ ba nào cả, nhưng bạn phải lặp lại thao tác này cho mọi mục tiêu NTFS volume.

Thêm vào đó, có một nguyên bản có thể thiết lập mọi thứ tự động:

http://sourceforge.net/projects/native-ntfs-osx/files/?source=navbar (chỉ hiệu quả trên OSX 10.5.5 Yosemite).

Đã trả lời vào July 28, 2016
Bình luận

Gắn nhanh một đĩa NTFS đọc/viết trên tất cả các OS X gần đây (bao gồm cả Yosemite và El Capitan):

  1. Mở Application -> Utilities -> Terminal
  2. Nhập mount và tìm dòng có đĩa của bạn. Nó sẽ hiển thị kiểu như: /dev/disk3s1 on /Volumes/MyDisk (ntfs, local, noowners, nobrowse)
  3. Nhập dòng sau trong Terminal, thay thế /dev/diskXsX bằng đĩa của bạn như đã hiển thị trong lệnh mount:
    sudo mkdir /Volumes/Mount  
    

    *Đảm bảo rằng thiết bị chưa được gắn, nếu có, đầu tiên hãy tháo nó ra. Nếu không, nó sẽ gây ra lỗi: mount_ntfs: /dev/diskNsN on /Volumes/Mount: Resource busy

    sudo umount /Volumes/<device_name>
    sudo mount -o rw,auto,nobrowse -t ntfs /dev/diskXsX /Volumes/Mount/
    open /Volumes/Mount/


Để thay đổi vĩnh viễn , hãy làm theo các bước sau đây (đúng cho El Capitan):

  1. Chạy dòng lệnh sau, thay đổi đến đĩa của bạn:
    export DEVICE=/dev/diskXsX   
    echo UUID=`diskutil info $DEVICE | grep UUID | awk '{print $3}'` none ntfs rw,auto,nobrowse 
    echo LABEL=NTFS none ntfs rw,auto,nobrowse
  2. Chạy sudo vifs và dán ở đầu ra từ 2 dòng trước. Để làm điều này, nhấn down để đến phía dưới cùng của thư mục, A để bắt đầu thêm nội dung văn bản, dán ở 2 dòng sau đó nhấn  escape và :wq để ghi thư mục. (vifs là cách duy nhất an toàn để sửa fstab trên OS X).
  3. Chạy lệnh dưới đây để gắn ổ đĩa:
    sudo umount /Volumes/$DEVICE 
    sudo diskutil mountDisk $DEVICE
    sudo open `mount | grep $DEVICE | awk '{print $3}'`

 

 

Lưu ý: Thiết bị sẽ không còn tự động mở một cửa sổ khi bạn gắn nó. Để truy cập nó, mở một cửa sổ Finder và chọn Go -> Go to Folder to /Volumes

Đã trả lời vào July 28, 2016
Bình luận

Đáp án của bạn

Với việc gửi đáp án, bạn đã đồng ý với Chính sách dữ liệuCác điều khoản của chúng tôi.