
У меня есть внешний жесткий диск, и поскольку я использую только Ubuntu и Fedora, я решил отформатировать его в ext4, и все стало нормально.
Проблема в том, что при монтировании диска мне нужно изменить разрешения, чтобы можно было читать и писать.
Какое разрешение мне следует использовать? adm мое имя пользователя?
решение1
Самое простое решение — убедиться, что ваши учетные записи пользователей Ubuntu и Fedora имеют одинаковый идентификатор пользователя (UID).
Я думаю, что Fedora по умолчанию начинает учетные записи пользователей с номера 500, в то время как Debian и Ubuntu начинают с номера 1000, поэтому весьма вероятно, что в одной ОС вы являетесь пользователем с номером 500, а в другой — с номером 1000. Файловая система использует этот номер UID для отслеживания разрешений, поэтому, если вы убедитесь, что у них одинаковый UID, они будут считаться одним и тем же пользователем, и никаких проблем с разрешениями не возникнет.
Я думаю, лучшее, что вы можете сделать, это сделать их обоих UID = 1000, поэтому измените UID в системе Fedora, затем убедитесь, что все файлы на внешнем дискеи в $HOME пользователя в установке Fedoraпринадлежат UID 1000. После этого у вас больше не должно возникнуть проблем с разрешениями.
решение2
Хоть это и неубедительно с моей стороны, мне придется ответить на вопрос другим вопросом. Если все, о чем мы говорим, касается одной ОС, то это будет либо
sudo chown -R (user name) /dev/(device name)
(убунту)
или просто
chown -R (user name) /dev/(device name)
фетровая шляпа- нет sudo
, просто выполните команду от имени пользователя root.
Часть с лапшой-скребком, на которую у меня нет хороших ответов, это как сделать так, чтобы вам не приходилось вручную перепечатывать, когда вы переключаетесь между дистрибутивами. Я бы почти поддался искушению добавить строку в свой ~/.bashrc
, но, вероятно, есть лучший способ, которого я не знаю или пока не придумал.
решение3
В /etc/fstab вы можете указать uid=1000 (в Ubuntu — 500 в Fedora), чтобы диск принадлежал вашему пользователю (предполагая, что вы первый пользователь, бла-бла-бла... если нет, то uid вашего пользователя из id
), и umask=000, если вы хотите, чтобы все пользователи имели доступ (или 077 только для того, у кого указан uid= — это маска, поэтому вы указываете значение, противоположное тому, которое вы указали в chmod as).
Для получения дополнительной информации об использовании /etc/fstab: http://ubuntulinuxtipstricks.blogspot.com/2008/02/fun-with-etcfstab.html
решение4
Это небольшая вариация подхода @gavenkoa, заключающегося в использовании общих групп, и не подразумевает изменения смонтированного диска.
Проверьте, какой идентификатор группы (GID) используется на смонтированном диске.
su
cd /mnt/data/dir # or wherever it is mounted
ls -l
Допустим, вы видите что-то похожее на следующее:
drwxr-xr-x 3 12588 12000 4096 30.06.2017 11:22 Documents/
Это означает 12000
, что это текущий GID данных на диске, и данные могут быть прочитаны и выполнены (но не могут быть записаны) любым другим пользователем группы. Создайте новую группу (например, driveusers
) и добавьте текущего пользователя в новую группу:
groupadd -g 12000 driveusers
sudo gpasswd -a $USER driveusers # add the current user to the new group
sudo chmod 770 /mnt/data/dir # optional, just to ensure the drive mount is accessible to user and group of the drive