Як змонтувати розділ HFS в Ubuntu як Read / Write?


169

Я підключив свій зовнішній жорсткий диск (який був відформатований на моєму Mac у HFS + запчастини) на робочий стіл Ubuntu 9.04 64bit. Я не в змозі змусити накопичувач монтуватися з можливістю запису, як це зробити? Зараз все, що я отримую, це доступ для читання, я намагався

sudo mount -t hfsplus /dev/sdf2 /media/"Portable HD"

але це все одно дало мені доступ лише для читання ... ідеї ??


Я відчуваю, що відповіді на це питання набагато кращі, легші та безпечніші, ніж відповіді, надані тут.
Майк Вільямсон

Відповіді:


75

Вам потрібно вимкнути журнал, якщо ви хочете писати на нього з Ubuntu. Ubuntu має підтримку лише для запису в HFS + томи, що не використовуються в журналах.

На вашому Mac:

  • Відкрийте утиліту диска у розділі Програми -> Утиліти
  • Виберіть гучність, щоб вимкнути журнал.
  • Виберіть " Відключити журнал" у меню "Файл". (У пізніших версіях Mac OS вам потрібно буде натиснути кнопку опції, коли натискаєте меню Файл. Або якщо вам подобається Apple+ J)

Відключити ведення журналу від HFS + все ще можливо до OS X Yosemite 10.10


4
Зверніть увагу , що «Відключення журналирования на основний розділ OS X не рекомендується , однак , як ведення журналу є важливою характеристикою будь-якої файлової системи , яка може запобігти пошкодженню і втрату даних» ( help.ubuntu.com/community/hfsplus )
Хей

@Hay, ви можете знову ввімкнути журнал. Все, що він робить, це допомогти системі швидше відновитися в такому випадку (тобто ненормальне відключення). Не кінець світу.
Джон Т

11
Ні, це не все, що робить журнал. Це також допомагає запобігти пошкодженню файлової системи, яка може бути досить серйозною, щоб виправити її лише за допомогою переформатування.
Вейд Вільямс

8
у macos 10.6.8, на кроці 3 відкрийте меню файлів із натиснутою "опцією + alt"
commonpike

2
@JohnT Чи можете ви надати джерело того факту, що "Ubuntu має підтримку лише для запису до HFS + томів, які не перебувають у друку"? Я займаюся деякими дослідженнями щодо HFS +, і це було б дуже корисно. Дякую.
kalaracey

187

Спочатку переконайтеся, що у вас встановлені hfsprogs . Приклад установки установки:

sudo apt-get install hfsprogs

Далі змонтуйте або встановіть знову привід HFS +; Команди повинні бути такими:

sudo mount -t hfsplus -o force,rw /dev/sdx# /media/mntpoint

або

sudo mount -t hfsplus -o remount,force,rw /dev/sdx# /mount/point

Нарешті, якщо привід був неправильно відключений або іншим чином частково пошкоджений, запустіть fsck.hfsplus (наданий тут Джейсоном) як такий:

sudo fsck.hfsplus /dev/sdx#

7
Дуже дякую за надання рішення тільки для Linux! ^ _ ^
FCTW

13
Я на Ubuntu 12.04, команда remount має бути такою sudo mount -t hfsplus -o remount,force,rw /dev/sdx# /mount/point. Потім потрібно використовувати root для читання / запису даних.
Кок

19
Чому це не позначено як відповідь?
Шельон

4
І @Digiground, і @Coc не спрацьовують mount: warning: /media/mount/point seems to be mounted read-only.на Ubuntu 13.04 із встановленими hfsprogs.
тут

1
@ я не поставив питання, щоб вирішити саме це питання.
kinbiko

27

Ви можете ввімкнути запис у HFS + в Linux, навіть якщо ви не вимкнули журнал. Крім hfsplus, який у вас уже є, вам потрібно встановити hfsprogs:

sudo apt-get install hfsprogs

Потім скористайтеся -o forceопцією:

sudo mount -o force /dev/sdX /your/mount/point

Якщо диск був встановлений автоматично (як це має бути на настільній системі, наприклад Ubuntu), ви можете включити запис за допомогою

sudo mount -o remount,rw,force /mount/point

або

sudo mount -o remount,rw,force /dev/sdx

/ mount / point зазвичай буде / media / Your_drive_label / dev / sdx - це ваш HFS + пристрій

Використовуйте mount -lдля пошуку того, який пристрій уже встановлено на якій точці кріплення.


1
з відповіді Digiground, ви не пропустите rw частину в команді ?? Мені вдалося з його варіантами.
meduz

@meduz: мені не потрібно було "rw" в Ubuntu 10.04. Мені здається, це потрібно зараз у 12.04. Тому я відредагував відповідь, щоб додати її.
mivk

13

Ви намагалися відповідати дозволам?

За замовчуванням Mac OS X форматує томи в HFS + томах у номері. Журналістика - це функція, яка покращує надійність даних, і, на жаль, робить її HFS-накопичувачі лише для читання в Linux.

Щоб вимкнути журнал, просто завантажте ОС X і запустіть Disk Utility. Клацніть на розділі HFS, утримуйте клавішу Option і натисніть кнопку Файл у рядку меню. У меню з’явиться нова опція «Відключити журнал». Клацніть це і перезавантажте Linux. Ви повинні мати доступ для читання та запису до свого розділу HFS - однак, дозволи в домашній папці вашого користувача Mac не дозволять вам читати чи писати ці файли. нам просто потрібно змінити наш UID в одній ОС, щоб він відповідав UID в іншій. Якщо у вас немає причин вибрати інше, ми збираємося змінити наш Linux UID так, щоб він відповідав нашому OS X, оскільки це трохи простіше. За замовчуванням перший користувач в OS X має UID 501, але ви можете подвійно перевірити це, зайшовши в System Preferences в OS X, клацнувши правою кнопкою миші на користувачеві та натиснувши Advanced Options.

Завантажтесь у Linux (у цьому прикладі ми використовуємо Ubuntu) та запустіть термінал. По-перше, ми будемо додавати тимчасового користувача, оскільки ми не хочемо редагувати користувача, на якому ми ввійшли в даний момент. Отже, запустіть наступні команди в Терміналі, натиснувши Enter після кожної:

sudo useradd -d /home/tempuser -m -s /bin/bash -G admin tempuser

sudo passwd tempuser

Коли з'явиться запит, введіть новий пароль для тимчасового користувача. Перезавантажте систему та увійдіть як темпузер. Потім відкрийте Термінал і введіть наступні команди, знову натиснувши клавішу Enter після кожної (і замінивши своє ім’я користувача на ваше ім’я користувача Linux):

sudo usermod --uid 501 yourusername

sudo chown -R 501:yourusername /home/yourusername

Це дозволить змінити UID вашого користувача Linux на 501 і виправити дозволи домашньої папки, щоб ви все одно володіли ними. Тепер ви маєте змогу читати та записувати до домашньої папки користувача Mac та Linux, незалежно від того, в яку ОС ви ввійшли.

Ви також можете виправити свій екран входу, оскільки за замовчуванням Ubuntu не відображатиме список користувачів з UID меншим ніж 1000. Для цього просто відкрийте термінал і запустіть gksudo gedit /etc/login.defs та шукайте UID_MIN в текстовий файл. Змініть це значення від 1000 до 501, і коли ви перезавантажите користувача, він відобразиться на екрані входу.

http://lifehacker.com/5702815/the-complete-guide-to-sharing-your-data-across-multiple-operating-systems


1
чудове рішення! Ви щойно врятували мене за кілька годин :) Єдине, що потрібно додати, - це видалити темпузер -> sudo userdel tempuser
Feida Kila

2

На всякий випадок, якщо це допоможе комусь у майбутньому - якщо ви навіть не в змозі змусити диск приєднатись у режимі лише для читання, це може бути тому, що привід використовує Apple Core Storage, який є обгорткою навколо HFS +. Дивіться тут:

Монтаж HFS + розділу в Ubuntu

Монтаж розділу HFS + на Arch Linux

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.