Команда Chown в Linux и Как Её Использовать: Руководство
В операционных системах Linux каждый файл связан с владельцем и группой. Команда chown в Linux — это сокращение от “сменить владельца” (англ. “Change owner”). Она может использоваться суперпользователем на любых Unix-подобных системах. В этом руководстве вы узнаете, чем полезна команда и как начать её использовать.
С помощью параметров chown можно изменить владельца файлов, каталогов и ссылок. Если обычный пользователь хочет внести определённые изменения в файл, суперпользователь может использовать команды chown, чтобы изменить владельца и разрешить доступ.
Прокачайте ваш Linux сервер, воспользовавшись скидками на VPS-хостинг в Hostinger! Большой выбор планов, как для учебных, так и для крупных коммерческих проектов.
Оглавление
Просмотр Информации о Владельце с Помощью Chown в Linux
Во-первых, вам нужно войти в свой VPS с помощью SSH. Если вам нужно вспомнить, как это сделать вот руководство.
Перед использованием команды chown нам необходимо подтвердить информацию о пользователе и группе. Вы можете получить эту информацию, используя cd и перейдя в нужный каталог.
Например, если путь к файлу — /tmp/TestUnix, перейдите туда с помощью следующей команды:
cd /tmp/TestUnix
Чтобы узнать, кому принадлежат файлы, вы можете вывести их список в каталоге с помощью следующей команды:
ls -l
Для этого руководства мы создали файл с именем chownSample.txt в каталоге. Вот как будет выглядеть вывод вышеуказанной команды:
-rw-r--r-- 1 root root 0 Feb 20 17:35 chownSample.txt
Здесь первая часть -rw-r–r– представляет права доступа к файлу. Первый root представляет информацию о владельце, а второй — о группе. В приведённом выше примере chownSample.txt имеет права root, а root принадлежит корневой группе.
Команда Chown для Файлов
Основной формат команды, чтобы изменить владельца файла:
chown user filename(s)
Для того же файла chownSample.txt, давайте сменим владельца с root на нового пользователя с именем whales. Пример этой команды показан ниже:
chown whales chownSample.txt
Чтобы подтвердить смену владельца, вы можете снова использовать команду ls -l. Вот, что получится в результате:
-rw-r--r-- 1 whales root 0 Feb 20 17:45 chownSample.txt
Команду можно изменить, чтобы сменить группу. Основной формат для смены владельца и группы:
chown user[:group] filename(s)
Чтобы изменить право собственности на файл chownSample.txt на нового владельца с именем whales и группу aquatic, команда будет такой:
chown whales:aquatic chownSample.txt
Чтобы подтвердить смену владельца и группы, используйте ls -l. Вывод этой команды:
-rw-r--r-- 1 whales aquatic 0 Feb 20 17:50 chownSample.txt
Если нужно изменить только группу, мы можем пропустить владельца. Вот пример команды в командной строке:
chown :aquatic chownSample.txt
Chown в Linux выполняет функции, аналогичные chgrp, когда информация о владельце не указана. Эта команда также может использоваться с несколькими параметрами.
Общая структура команды chown с параметрами ([OPTIONS]):
chown [OPTIONS] [USER] [:GROUP] filename(s)
Команда Chown для Каталогов
Chown также можно применять для папок. Папки в свою очередь могут содержать только файлы, только папки или и то, и другое.
Допустим, у нас есть папка с именем TestUnix, мы можем использовать команду ls -l для просмотра разрешений. Пример команды в выводе:
drwxr-xr-x 2 root root 4096 Feb 20 17:35 TestUnix
Здесь первая часть drwxr-xr-x представляет разрешение для папки. Первый root — это информация о владельце, а второй — информация о группе. В этом примере TestUnix имеет владельца root и корневую группу.
Подобно файлам, мы можем изменить владельца и группу для папок. Пример команды для этого:
chown whales /TestUnix
Чтобы изменить только группу:
chown :aquatic /TestUnix
Чтобы изменить владельца и группу файла:
chown whales:aquatic /TestUnix
Эту же команду можно использовать для нескольких файлов или папок. Формат команды:
chown [OPTIONS] [USER][:GROUP] file1 file2
Пример такой команды:
chown whales:aquatic /tmp/TestUnix/chownSample.txt /tmp/TestUnix
Команда Chown для Ссылок
Команда Chown в Linux может использоваться для символических, или программных ссылок. Символическая ссылка — это ссылка на существующий физический файл. Для создания программных ссылок используется команда ln. Для файла chownSample.txt символическая ссылка может быть создана как:
ln -s chownSample.txt symlink
Чтобы подтвердить владельца и информацию о группе, мы можем использовать команду ls -l. Вот, что мы получим в результате:
-rw-r--r-- 1 root root 0 Feb 19 22:01 chownSample.txt lrwxr-xr-x 1 root root 5 Feb 19 7 22:01 symlink -> chownSample.txt
Доступны две записи. Одна для физического файла, а другая для символической ссылки. Давайте попытаемся изменить владельца с помощью следующей команды:
chown whales symlink
Приведённая выше команда сменит владельца файла chownSample.txt. Таким образом, вывод команды ls -l будет выглядеть так:
-rw-r--r-- 1 whales root 0 Feb 19 22:01 chownSample.txt lrwxr-xr-x 1 root root 5 Feb 19 7 22:01 symlink -> chownSample.txt
Если мы хотим изменить владельца символической ссылки, тогда нам нужно использовать параметр -h. Пример команды:
chown -h whales symlink
Если мы используем команду ls -l, результат будет таким, как показано ниже, где право собственности на символическую ссылку изменено:
-rw-r--r-- 1 whales root 0 Feb 19 22:01 chownSample.txt lrwxr-xr-x 1 whales root 5 Feb 19 7 22:01 symlink -> chownSample.txt
Рекурсивная Смена Владельца с Помощью Chown в Linux
Команда chown может применяться к папкам, однако папки могут иметь рекурсивную структуру, а у нас может возникнуть необходимость сменить владельца для всех файлов и папок.
Рекурсивное использование команды chown гарантирует, что все каталоги и подкаталоги сменят владельца или группу.
Для рекурсивной операции нам нужно использовать опцию -R. Вот пример этой команды:
chown -R [USER][:GROUP] Directory
Если у нас есть папка с названием TestUnix, в которой находятся несколько подкаталогов, то приведённая ниже команда изменит владельца всех папок и подкаталогов на пользователя с именем whales.
chown -R whales /TestUnix
Итоги
Вот и всё, теперь вы знаете, что такое команда chown в Linux и как она работает. Стоит отметить, что системы Unix имеют справочные страницы для каждой команды. Так что, если вы захотите полностью освоить возможности chown, откройте необходимое руководство с помощью команды man chown. Надеемся, что это поможет вам управлять вашими файлами VPS безопасным и эффективным способом. Удачной разработки!