- Команда Chown в Linux
- Chown Command in Linux (File Ownership)
- В этом руководстве мы покажем вам, как использовать chown команду на практических примерах.
- Как пользоваться chown
- Как сменить владельца файла
- Как изменить владельца и группу файла
- Как изменить группу файла
- Как изменить владельца символических ссылок
- Как рекурсивно изменить владельца файла
- Использование справочного файла
- Вывод
- Команда Chown в Linux и Как Её Использовать: Руководство
- Просмотр Информации о Владельце с Помощью Chown в Linux
- Команда Chown для Файлов
- Команда Chown для Каталогов
- Команда Chown для Ссылок
- Рекурсивная Смена Владельца с Помощью Chown в Linux
- Итоги
- Команда chown Linux
- Команда chown Linux
- 1. Синтаксис и опции
- 2. Использование chown
- Выводы
Команда 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 команду с двоеточием ( : ) и именем новой группы (без пробелов между ними) и целевой файл в качестве аргумента:
Еще одна команда, которую вы можете использовать для изменения групповой принадлежности файлов — это 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 принадлежит корневой группе.
Команда 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 безопасным и эффективным способом. Удачной разработки!
Ольга уже около пяти лет работает менеджером в сфере 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 может помочь исправить много ошибок.
Источник