Chown all users linux

Команда Chown в Linux

Chown Command in Linux (File Ownership)

В этом руководстве мы покажем вам, как использовать chown команду на практических примерах.

Команда chown позволяет изменить владельца пользователя и / или группы для данного файла, каталога или символической ссылки.

В Linux все файлы связаны с владельцем и группой, и им назначены права доступа для владельца файла, членов группы и других.

Как пользоваться chown

Прежде чем перейти к использованию chown команды, давайте начнем с обзора основного синтаксиса.

В chown выражении команды принимает следующий вид:

  • USER — Если указан только пользователь, указанный пользователь станет владельцем данных файлов, владение группой не изменится.
  • USER: — Когда за именем пользователя следует двоеточие : , а имя группы не указывается, пользователь становится владельцем файлов, а принадлежность группы файлов изменяется на группу входа пользователя.
  • USER:GROUP — Если указаны и пользователь, и группа (без пробелов между ними), пользовательское владение файлами изменяется на данного пользователя, а групповое владение изменяется на данную группу.
  • :GROUP — Если пользователь не указан, а перед группой стоит двоеточие : , то только группа, владеющая файлами, будет изменена на данную группу.
  • : Если задано только двоеточие : , без указания пользователя и группы, никаких изменений не производится.

По умолчанию в случае успеха chown не выводит никаких данных и возвращает ноль.

Используйте ls -l команду, чтобы узнать, кому принадлежит файл или к какой группе принадлежит файл:

Обычные пользователи могут изменять группу файла только в том случае, если они владеют файлом и только в группе, членом которой они являются. Административные пользователи могут изменять групповое владение всеми файлами.

Как сменить владельца файла

Чтобы изменить владельца файла, используйте chown команду, за которой следует имя пользователя нового владельца и целевой файл в качестве аргумента:

Например, следующая команда изменит владельца файла с именем file1 на нового владельца с именем linuxize :

Чтобы изменить владельца нескольких файлов или каталогов, укажите их в виде списка через пробел. Команда ниже меняет владельца файла с именем file1 и каталогом dir1 на нового владельца с именем linuxize :

Числовой идентификатор пользователя (UID) можно использовать вместо имени пользователя. Следующий пример изменит владельца файла с именем file2 на нового владельца с UID 1000 :

Если в качестве имени пользователя существует числовой владелец, то владение будет перенесено в имя пользователя. Чтобы избежать этого префикса, идентификатор с помощью + :

Как изменить владельца и группу файла

Чтобы изменить владельца и группу файла, используйте chown команду, за которой следует новый владелец и группа, разделенные двоеточием ( : ) без промежуточных пробелов и целевого файла.

Следующая команда изменит владельца файла с именем file1 на нового владельца с именем linuxize и группой users :

Если вы опустите имя группы после двоеточия ( : ), группа файла изменится на группу входа указанного пользователя:

Как изменить группу файла

Чтобы изменить только группу файла, используйте chown команду с двоеточием ( : ) и именем новой группы (без пробелов между ними) и целевой файл в качестве аргумента:

Читайте также:  Windows 10 раннее сегодня как убрать

Еще одна команда, которую вы можете использовать для изменения групповой принадлежности файлов — это chgrp .

Как изменить владельца символических ссылок

Когда рекурсивный параметр не используется, chown команда изменяет групповое владение файлами, на которые указывают символические ссылки , а не сами символьные ссылки .

Например, если вы попытаетесь изменить владельца и группу символической ссылки, на symlink1 которую указывает ссылка /var/www/file1 , chown изменит владельца файла или каталога, на который указывает символическая ссылка:

Скорее всего, вместо смены целевого владельца вы получите ошибку «невозможно разыменовать symlink1: Permission denied».

Ошибка возникает из-за того, что по умолчанию в большинстве дистрибутивов Linux символические ссылки защищены, и вы не можете работать с целевыми файлами. Эта опция указана в /proc/sys/fs/protected_symlinks . 1 значит включен и 0 отключен. Мы рекомендуем не отключать защиту символических ссылок.

Чтобы изменить групповое владение самой символической ссылкой, используйте -h параметр:

Как рекурсивно изменить владельца файла

Чтобы рекурсивно работать со всеми файлами и каталогами в данном каталоге, используйте параметр -R ( —recursive ):

Если каталог содержит символические ссылки, передайте -h опцию:

Другими параметрами, которые можно использовать при рекурсивном изменении владельца каталога, являются -H и -L .

Если аргумент, переданный chown команде, является символической ссылкой, указывающей на каталог, эта -H опция заставит команду пройти по ней. -L указывает chown на прохождение каждой символической ссылки в каталог, который встречается. Обычно вы не должны использовать эти параметры, потому что вы можете испортить вашу систему или создать угрозу безопасности.

Использование справочного файла

—reference=ref_file Опция позволяет изменить пользователя и группы владельца указанные файлы , чтобы быть такими же , как в указанном отпечатком ( ref_file ). Если ссылочный файл является символической ссылкой, chown будут использоваться пользователь и группа целевого файла.

Вывод

chown утилита командной строки Linux / UNIX для изменения владельца файла и / или группы

Чтобы узнать больше о chown команде, посетите страницу руководства chown или введите man chown свой терминал.

Источник

Команда Chown в Linux и Как Её Использовать: Руководство

В операционных системах Linux каждый файл связан с владельцем и группой. Команда chown в Linux — это сокращение от “сменить владельца” (англ. “ Ch ange own er”). Она может использоваться суперпользователем на любых Unix-подобных системах. В этом руководстве вы узнаете, чем полезна команда и как начать её использовать.

С помощью параметров chown можно изменить владельца файлов, каталогов и ссылок. Если обычный пользователь хочет внести определённые изменения в файл, суперпользователь может использовать команды chown, чтобы изменить владельца и разрешить доступ.

Прокачайте ваш Linux сервер, воспользовавшись скидками на VPS-хостинг в Hostinger! Большой выбор планов, как для учебных, так и для крупных коммерческих проектов.

Просмотр Информации о Владельце с Помощью Chown в Linux

Во-первых, вам нужно войти в свой VPS с помощью SSH. Если вам нужно вспомнить, как это сделать вот руководство.

Перед использованием команды chown нам необходимо подтвердить информацию о пользователе и группе. Вы можете получить эту информацию, используя cd и перейдя в нужный каталог.

Например, если путь к файлу — /tmp/TestUnix , перейдите туда с помощью следующей команды:

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

Для этого руководства мы создали файл с именем chownSample.txt в каталоге. Вот как будет выглядеть вывод вышеуказанной команды:

Здесь первая часть -rw-r–r– представляет права доступа к файлу. Первый root представляет информацию о владельце, а второй — о группе. В приведённом выше примере chownSample.txt имеет права root, а root принадлежит корневой группе.

Читайте также:  Ограничение памяти для процесса linux

Команда Chown для Файлов

Основной формат команды, чтобы изменить владельца файла:

Для того же файла chownSample.txt , давайте сменим владельца с root на нового пользователя с именем whales . Пример этой команды показан ниже:

Чтобы подтвердить смену владельца, вы можете снова использовать команду ls -l. Вот, что получится в результате:

Команду можно изменить, чтобы сменить группу. Основной формат для смены владельца и группы:

Чтобы изменить право собственности на файл chownSample.txt на нового владельца с именем whales и группу aquatic, команда будет такой:

Чтобы подтвердить смену владельца и группы, используйте ls -l . Вывод этой команды:

Если нужно изменить только группу, мы можем пропустить владельца. Вот пример команды в командной строке:

Chown в Linux выполняет функции, аналогичные chgrp, когда информация о владельце не указана. Эта команда также может использоваться с несколькими параметрами.

Общая структура команды chown с параметрами ([OPTIONS]):

Команда Chown для Каталогов

Chown также можно применять для папок. Папки в свою очередь могут содержать только файлы, только папки или и то, и другое.

Допустим, у нас есть папка с именем TestUnix, мы можем использовать команду ls -l для просмотра разрешений. Пример команды в выводе:

Здесь первая часть drwxr-xr-x представляет разрешение для папки. Первый root — это информация о владельце, а второй — информация о группе. В этом примере TestUnix имеет владельца root и корневую группу.

Подобно файлам, мы можем изменить владельца и группу для папок. Пример команды для этого:

Чтобы изменить только группу:

Чтобы изменить владельца и группу файла:

Эту же команду можно использовать для нескольких файлов или папок. Формат команды:

Пример такой команды:

Команда Chown для Ссылок

Команда Chown в Linux может использоваться для символических, или программных ссылок. Символическая ссылка — это ссылка на существующий физический файл. Для создания программных ссылок используется команда ln. Для файла chownSample.txt символическая ссылка может быть создана как:

Чтобы подтвердить владельца и информацию о группе, мы можем использовать команду ls -l. Вот, что мы получим в результате:

Доступны две записи. Одна для физического файла, а другая для символической ссылки. Давайте попытаемся изменить владельца с помощью следующей команды:

Приведённая выше команда сменит владельца файла chownSample.txt . Таким образом, вывод команды ls -l будет выглядеть так:

Если мы хотим изменить владельца символической ссылки, тогда нам нужно использовать параметр -h. Пример команды:

Если мы используем команду ls -l , результат будет таким, как показано ниже, где право собственности на символическую ссылку изменено:

Рекурсивная Смена Владельца с Помощью Chown в Linux

Команда chown может применяться к папкам, однако папки могут иметь рекурсивную структуру, а у нас может возникнуть необходимость сменить владельца для всех файлов и папок.

Рекурсивное использование команды chown гарантирует, что все каталоги и подкаталоги сменят владельца или группу.

Для рекурсивной операции нам нужно использовать опцию -R. Вот пример этой команды:

Если у нас есть папка с названием TestUnix, в которой находятся несколько подкаталогов, то приведённая ниже команда изменит владельца всех папок и подкаталогов на пользователя с именем whales.

Итоги

Вот и всё, теперь вы знаете, что такое команда chown в Linux и как она работает. Стоит отметить, что системы Unix имеют справочные страницы для каждой команды. Так что, если вы захотите полностью освоить возможности chown, откройте необходимое руководство с помощью команды man chown . Надеемся, что это поможет вам управлять вашими файлами VPS безопасным и эффективным способом. Удачной разработки!

Читайте также:  Восстановить номер для windows

Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.

Источник

Команда chown Linux

Основа философии Linux — все объекты операционной системы — это файлы, для предоставления доступа к тем или иным возможностям системы мы просто даем доступ пользователю к нужным файлам или убираем. Я более подробно рассказывал обо всех правах в статье права доступа к файлам в Linux, здесь же скажу только что у каждого файла есть три группы прав: для владельца, группы и всех остальных.

При создании файла ему тот пользователь, от имени которого он был создан становится его владельцем, а группой устанавливается основная группа владельца. Но владельца файла и группу можно менять, для этого используются команды chown и chgrp. В этой статье будет рассмотрена команда chown linux, а также основные примеры её использования.

Команда chown Linux

1. Синтаксис и опции

Синтаксис chown, как и других подобных команд linux очень прост:

$ chown пользователь опции /путь/к/файлу

В поле пользователь надо указать пользователя, которому мы хотим передать файл. Также можно указать через двоеточие группу, например, пользователь:группа. Тогда изменится не только пользователь, но и группа. Вот основные опции, которые могут вам понадобиться:

  • -c, —changes — подробный вывод всех выполняемых изменений;
  • -f, —silent, —quiet — минимум информации, скрыть сообщения об ошибках;
  • —dereference — изменять права для файла к которому ведет символическая ссылка вместо самой ссылки (поведение по умолчанию);
  • -h, —no-dereference — изменять права символических ссылок и не трогать файлы, к которым они ведут;
  • —from — изменять пользователя только для тех файлов, владельцем которых является указанный пользователь и группа;
  • -R, —recursive — рекурсивная обработка всех подкаталогов;
  • -H — если передана символическая ссылка на директорию — перейти по ней;
  • -L — переходить по всем символическим ссылкам на директории;
  • -P — не переходить по символическим ссылкам на директории (по умолчанию).

Утилита имеет ещё несколько опций, но это самые основные и то большинство из них вам не понадобится. А теперь давайте посмотрим как пользоваться chown.

2. Использование chown

Например, у нас есть несколько папок dir и их владелец пользователь sergiy:

Давайте изменим владельца папки dir1 на root:

chown root ./dir1

Если вы хотите поменять сразу владельца и группу каталога или файла запишите их через двоеточие, например, изменим пользователя и группу для каталога dir2 на root:

chown root:root ./dir2

Если вы хотите чтобы изменения применялись не только к этому каталогу, но и ко всем его подкаталогам, добавьте опцию -R:

chown -R root:root ./dir3

Дальше давайте изменим группу и владельца на www-data только для тех каталогов и файлов, у которых владелец и группа root в каталоге /dir3:

chown —from=root:root www-data:www-data -cR ./

Для обращения к текущему каталогу используйте путь ./. Мы его использовали и выше. Далее указываем нужную группу с помощью опции —from и просим утилиту выводить изменения, которые она делает в файловой системе с помощью опции -c.

Выводы

Команда chown очень простая и позволяет только менять владельца и группу. Если вы хотите более подробно настроить права для владельца, группы и всех остальных, вам понадобится команда chmod. Права — довольно частая проблема при настройке работы различных программ, знание двух этих команд плюс ls и namei может помочь исправить много ошибок.

Источник

Оцените статью