Я хочу создать учетную запись пользователя, отличную от root, чтобы этот root, а также этот пользователь могли загружать файлы удаления в системе ubuntu (например, предположим, что у меня есть некоторые файлы php в var / www, чтобы этот root и этот пользователь могли загружать в тот же каталог)
Это зависит от того, что вы хотите с точки зрения безопасности.
Лучше всего создать каталог, принадлежащий пользователю без полномочий root. Таким образом, этот пользователь может сохранять файлы там, а root может сохранять файлы там, потому что root является всемогущим.
У вас будет проблема, что когда root сохраняет файлы, они будут принадлежать root, и пользователь без полномочий root не сможет их редактировать. Вы можете исправить это, сделав каталог setuid и setgid.
# chmod ug+s /foo/bar
Теперь, когда кто-то создает файл в этом каталоге, владелец и группа будут установлены такими же, как и каталог. В данном случае пользователь без полномочий root.
Если root редактирует существующий файл, это не изменит существующего владельца.
Есть и другие альтернативы, например, изменение каталога на доступ для записи всем, но это огромная проблема безопасности, и я действительно не рекомендую это делать. В качестве альтернативы вы можете создать группу, в которую входят как root, так и ваш пользователь без полномочий root, но это не совсем идеально.
Есть ли конкретная причина, по которой вы хотите, чтобы пользователь root мог загружать файлы? Использование учетной записи root для таких целей НЕ является безопасной практикой. Глядя на теги, я предполагаю, что вы имеете в виду доступ по FTP. Имейте в виду, что (обычный) FTP не является защищенным протоколом, и вам следует избегать использования учетной записи root через любое незащищенное соединение.
Я бы посоветовал использовать для этой цели двух обычных пользователей (без привилегий root) и сделать их членами одной и той же основной группы.
Вы захотите использовать одну и ту же группу для root и нового пользователя. Затем сделайте каталог и группу файлов доступными для записи. Также установите соответствующий umask
так что новые созданные файлы будут наследовать те же разрешения.
Не передавайте права root другим пользователям! Это билет в один конец до HackedVille.
Перенести разрешения на чтение и запись в каталог другим пользователям.
Для управления / var / www не требуются привилегии root, только учетная запись, которая владеет каталогом (но не учетная запись, которая запускает веб-сервер, обычно «никто»).
Для этого, прежде всего, перестаньте использовать root для чтения / записи / var / www! Оставление файлов, принадлежащих root, повсюду - это первый шаг в борьбе с "необходимостью быть root", поскольку, как только файлы, принадлежащие root, появятся, каждый хочет быть root, чтобы иметь с ними дело.
Использовать chown -R чтобы передать владение деревом каталогов пользователю без полномочий root. Используйте это имя пользователя для управления содержимым каталога. Использовать chmod -R чтобы предоставить другим разрешения только на чтение.
Если вам действительно нужны два пользователя для чтения / записи, поместите их в одну группу (/ etc / group) и используйте chmod, чтобы открыть права записи группы.