Вопрос: Как установить HFS + диск и игнорировать разрешения


Я установил Ubuntu и Windows на свой MacBook, а Ubuntu - моя основная ОС; однако все мои носители остаются на моем разделе OSX. Я хочу иметь доступ к нему (по крайней мере, к домашней папке пользователя OSX) из Ubuntu без необходимости запуска медиа-плеера (или чего-либо еще) с правами root. Кроме того, поскольку я иногда хочу запускать свою машину в OSX, я не хочу менять что-либо, что мне нужно будет часто менять (я много читаю об изменении UID - я не совсем понимаю, что это значит, но я бы не хотел менять свой UID взад и вперед, в зависимости от того, какую ОС я использую. Аналогично, я не хочу изменять разрешения файловой системы взад и вперед).

Кроме того, я видел что-то о опции «noowner», но это, похоже, не делает того, что я хочу.

Поэтому, я думаю, я хотел бы сделать что-то вроде этого:

sudo mount -t hfsplus -o noowner /dev/sda2/ /media/Mac

А затем получите доступ ко всем моим медиа (по крайней мере, все в моей домашней папке пользователя OSX), не отбрасывая их как root. (для ясности: приведенная выше запись в командной строке не делает того, что я хочу, но я хочу, чтобы иметь возможность сделать что-то подобное).

Или было бы лучше изменить мой UID? И если да, то как?


20
2018-01-31 11:28


Источник


Можете ли вы взглянуть на мой ответ. Я считаю, что я ответил на ваш вопрос более правильно, чем на отмеченный ответ. - Catskul
@Catskul Нет, я не могу. Этот вопрос более 2 лет - за это время я продал свой MacBook и воспроизвел этот вопрос с целью проверки вашего ответа, который является непозволительно трудным. - weberc2


Ответы:


bindfs это ответ. Это займет уже смонтированную файловую систему и отобразит ее в зависимости от того, какой вы хотите:

sudo apt-get install bindfs
mkdir ~/myUIDdiskFoo
sudo bindfs -u $(id -u) -g $(id -g) /media/diskFoo ~/myUIDdiskFoo

20
2017-10-04 19:02



Однако нагрузка на процессор и память весьма существенна. Если это вызывает беспокойство, я бы рекомендовал решение @ weberc2. В противном случае отличный ответ. - frhd
bindfs для меня было неровным. я использовал ответ для этого сообщения askubuntu.com/questions/315078/... вместо - krumpelstiltskin
Хороший ответ (upvoted), но для этого требуется установить bindfs. Почему это не так хорошо? Ну, это мой необычный случай: друг дает мне старый MacBook (я не знаю, есть ли Pro) для резервного копирования данных из не загружаемого MacOS. Я пробую последнюю версию Ubuntu и не повезло (ошибка в nouveau driver, nomodeset не помогает). Затем я начинаю возвращаться с версиями Ubuntu, пока не найду ту, которая загружается, 9.10 (да), серверы репо уже не в сети. bindfs невозможно установить. Принятый ответ решает эту проблему. - Hatoru Hansou


Я не смог понять, как игнорировать разрешения, но в итоге я изменил UID на своей учетной записи Ubuntu, чтобы соответствовать моей учетной записи OSX:

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

Введите новый пароль. Выйдите из системы, войдите в систему как «другая» с именем пользователя «tempuser» и паролем, который вы выбрали ранее. Откройте терминал и введите:

sudo usermod --uid 501 yourusername
sudo chown -R 501:yourusername /home/yourusername

* измените «yourusername» на свое временное имя пользователя и 501 на UID вашей учетной записи Mac (первая учетная запись Mac начинается с 501, а последующие пользователи будут иметь разные UID).

Выйдите из tempuser и войдите в свою обычную учетную запись (это важно, не просто переключайте пользователей - происходят плохие вещи). Откройте окно терминала и введите:

sudo userdel -r tempuser

Для получения дополнительной информации посетите эта страница,

Предостережения

  • Только один Пользователь linux может получить доступ. Эта настройка не позволит нескольким пользователям Linux обращаться к нескольким каталогам пользователей на диске HFS +. Это связано с тем, что Apple блокирует каталоги пользователей (и медиа-каталоги, такие как Music), до 700 (rwx------).
  • Как только вы измените свой UID, менеджер входа в систему перестанет перечислять этого пользователя. Вы должны изменить UID_MIN в /etc/login.def из 1000 в 500,
  • Наконец, поскольку пользовательский UID изменился, доступ к диску становится путаницей прав доступа. Вам нужно будет указать точное местоположение домашней папки пользователя для ее просмотра. Завершение вкладок и просмотр в файловом менеджере станет проблематичным для папок вне исходной домашней папки пользователя Apple без sudo,

19
2018-02-23 14:05



для меня работал подход с помощью usermod. просто убедитесь, что вы удалите / media / USERNAME, если хотите использовать USB-накопители. askubuntu.com/questions/583375/... - krumpelstiltskin
Для вашего caveat 1, 700 действительно является стандартом для пользовательских каталогов в OS X, но нет никакой проблемы в его изменении, если это вас не устраивает, например, до 755. - fkraiem
При использовании sudo для выпуска команд и запуска nautilus с sudo позволяет получить доступ к любому каталогу в MacOS HD, метод uid является лучшим, когда вам нужно больше, чем просто получить доступ к файлам, например, перенести их в общую папку на другой машине (используя самба, например). Привычный экземпляр nautilus не может исследовать сеть, обычный экземпляр nautilus может, но он не позволяет вам копировать и вставлять файлы с MacOS HD. Дайте tempuser, uid 501 решил проблему для меня, позволяя мне выполнять резервное копирование данных из не загружаемого MacOS в общую папку. - Hatoru Hansou
Для 16.10, кроме UID_MIN, также необходимо добавить GID_MIN=500 в /etc/login.def - draw


документация для реализации Linux-ядра для файловой системы HFS + перечисляет uid mount, который позволяет вам «владеть» всеми файлами (и, возможно, некоторыми другими вариантами, которые могут быть полезны).


5
2018-01-31 20:18



Я пытался это сделать, но я не знаю, какой UID я должен использовать. Я читал, что это что-то вроде 501 для OSX, но учетная запись не является исходным пользователем OSX. Как я могу узнать эту информацию? - weberc2
@ Weberc2: ls -l /media/YourHFSdisk/ покажет вам uid и gid текущих файлов / папок. Диски HFS +, с которыми я сталкиваюсь, по-видимому, в основном принадлежат uid 99 и gid 99. Однако я пытался использовать различные комбинации uid / gid / umask в команде mount, и, похоже, ничего не менял. - mivk
Это не сработало для меня. Из документации: «uid / gid \ nОпределяет пользователя / группу, которая владеет всеми файлами в файловой системе с неинициализированными структурами разрешений». К сожалению, все файлы в моей файловой системе все еще принадлежат 501 (т. Е. Они имеют инициализированные структуры разрешений (?)) - Colin


Я знаю, что это старо, но есть и другой способ, который, похоже, подходит для меня. Поскольку все файлы принадлежали «корневому» пользователю, все, что я делал, было проблемой su root от терминала и ls -lah /media/Macintosh HD оттуда. Используя root, я смог обойти отклоненную разрешенную ошибку.


2
2018-06-29 23:26



простой и коварный - SYK


Это общий вариант. Я отлично работаю

mkdir /media/test
mkdir /media/diskhfs
mount /dev/sdb1 /media/test -o rw
bindfs -o perms=775,mirror=userorid --map=99/userorid:@99/@uderorid /media/test /media/diskhfs

0
2017-09-18 20:17





Мне удалось получить доступ к файлам со старого жесткого диска Macbook, запустив файловый менеджер с повышенными привилегиями.

gksudo thunar

Затем скопируйте файлы по мере необходимости.


0
2017-12-13 22:23