Создание файлов, обычно доступных в системе Linux (когда безопасность относительно неважная)?

Я использую Ubuntu 9.10 на стационарном ПК. У меня есть вторичный жесткий диск 1 ТБ с одним большим логическим разделом (в настоящее время отформатированным как ext4). Он монтируется как / usr3 с опциями пользователя, exec в / etc / fstab.

Я делаю эксперименты по визуализации высокой скорости. Ну, всего 260 кадров в секунду, но при этом создается множество отдельных файлов, так как каждый кадр сохраняется как один png-файл. Стационар не используется кем-либо другим, кроме меня, поэтому стандартная модель безопасности, созданная ubuntu, не требуется.

Каков наилучший способ сделать все содержимое / usr3 общедоступным для всех систем. В случае, если мне нужно переместить жесткий диск на другую машину Ubuntu 9.x или 10.x?

При захвате изображения с помощью FireWire-камеры в sudo-режиме я использую самодельную утилиту для захвата (консоль). Это создает все файлы с правами root как владельца и группы.

Я зарегистрирован как пользователь otb, и обычно я делаю следующее, когда вам нужно делать файлы, обычно доступные для otb:

 sudo chown otb -R *
 sudo chgrp otb -R *
 sudo chmod a = rwx -R *

Это занимает некоторое время, так как диск теперь содержит отдельные файлы ~ 200000.

После этого, как бы вести себя linux, если я переместил жесткий диск в другую систему, в которой также доступен пользовательский otb ? Могут ли файлы быть доступны без использования sudo?

Вам нужно будет иметь одинаковые uid и gid для пользовательского otb (или любого другого имени пользователя), чтобы иметь доступ к файлам без sudo в другой системе.

UID (идентификатор пользователя) и GID (идентификатор группы) – это уникальные системы счисления, назначенные пользователям и группам. Для обычных пользователей они начинаются с 1001 года.

Самый простой способ обеспечить одинаковые разрешения: в файле /etc/passwd для любой пользовательской записи UID & GID является третьим и четвертым полем соответственно. Во второй системе вы можете создать пользователя с командой из терминала, используя useradd -u UID -g GID username где UID и GID являются одинаковыми идентификаторами UID и GID пользовательской otb в первой системе. Перед выдачей команды убедитесь, что тот же UID уже не используется.

Я попробовал из GUI System -> Administration -> Users and Groups и не смог найти способ ее синхронизации.

Сохранение одного /etc/passwd же файла /etc/passwd через системы или использование таких решений, как NIS, LDAP сделает его более плавным, если у вас будет больше систем.

Для получения дополнительной информации обратитесь к man useradd , man usermod и, если вам нужно удалить всех пользователей, man userdel с терминала.

Прежде всего, ваши первые две команды можно комбинировать:

 sudo chown otb:otb -R * 

Не уверен, что это будет работать быстрее.

Во-вторых, поскольку вы не заботитесь о безопасности на этом диске, вы должны установить диск с указанием umask, который делает все файлы 777, когда они написаны:

 user,exec,umask=000 

Это может помочь предотвратить необходимость запуска вашей третьей команды вообще.

Кроме того, поскольку кажется, что опция umask может быть недоступна для всех типов файловой системы, существует еще один способ установить разрешения файлов по умолчанию для файлов, созданных в sudo. Это достигается путем редактирования / etc / sudoers.

Из-за прав man sudoers , опция «umask_override» позволяет это сделать.

umask_override: если установлено, sudo установит umask, как указано sudoers, без изменений. Это позволяет указать более разрешающую umask в sudoers, чем собственный umask пользователя, и соответствует историческому поведению. Если umask_override не установлен, sudo установит umask как объединение пользовательской umask и того, что указано в sudoers. По умолчанию этот флаг отключен.

Я никогда не использовал этот вариант, поэтому продолжайте внимательно. Редактирование / etc / sudoers может быть опасным и требует восстановления системы (или вмешательства в реальном компакт-диске), если вы ошибаетесь.