Linux chown пример: Команда chown Linux | Losst
Команда chown — Linux FAQ
Команда chown позволяет использовать соответствующую утилиту для изменения владельца файла или директории.
В Linux и других UNIX-подобных операционных системах каждый пользователь имеет свои собственные файлы, причем он может регламентировать возможность доступа других пользователей к ним. Применение концепции владения файлами имеет ряд последствий, причем в некоторых случаях бывает полезно изменять владельца некоторых файлов.
Изменение владельца файла может привести к получению возможности изменения его прав доступа, а также ограничению доступа к нему другого пользователя. По этой причине обычным пользователям запрещено изменять владельцев файлов, не принадлежащих им, и только суперпользователь (root) может изменять владельцев любых файлов.
Базовый синтаксис команды выглядит следующим образом:
$ chown [параметры] <имя владельца:имя группы владельцев> <имя файла или директории>
Примеры использования
Смена владельца файла
Например, если вы хотите предоставить пользователю с именем john возможность распоряжаться файлом picture.jpg по своему усмотрению, вы можете воспользоваться следующей командой:
$ chown john picture.jpg
Помимо изменения владельца файла, может изменяться группа его владельцев или его владелец и группа его владельцев одновременно. Следует использовать символ двоеточия для разделения имени пользователя и имени группы пользователей (без символа пробела):
$ chown john:family picture.jpg
В результате владельцем файла picture.jpg станет пользователь с именем john, а группой его владельцев — family.
Рекурсивная смена владельцев файлов
Если вы хотите изменить владельцев файлов из любого фрагмента дерева директорий, вы можете воспользоваться параметром -R. Например, если вам нужно изменить владельцев файлов дерева поддиректорий текущей директории на root, вы можете использовать следующую команду:
# chown -R root:root .
Вам наверняка захотелось использовать шаблон «*» для ссылки на все файлы. Однако, в этом случае не будет изменен владелец скрытых файлов (имена которых начинаются с символа точки). Также вы можете предположить, что следовало бы использовать шаблон «.*», однако, он будет соответствовать также директории с именем «..», в результате чего будет изменен владелец всех файлов также и в родительской директории! Следует помнить о том, что при использовании параметра -R утилите должно передаваться имя директории, а не имена отдельных файлов.
Chown в Linux — синтаксис команды с примерами
В операционной системе Linux все файлы имеют своего владельца и группу. Команда CHOWN используется для того, чтобы поменять владельца файла, директории или ярлыка, на другого пользователя или группу.
В этом руководстве мы расскажем как использовать команду CHOWN на нескольких простых примерах.
Синтаксис команды Chown
Перед тем как рассказать основные правила работы с Chown, изучим основной синтаксис команды.
Выражения, описывающие задачу для Chown имеют форму:
chown [OPTIONS] USER[:GROUP] FILE(s)
В данном выражении основными составляющими являются:
- USER — это имя пользователя или идентификатор ID (UID) нового владельца.
- GROUP — это имя новой группы или идентификатор ID (GID).
- FILE — имя одного или нескольких файлов, папок или ярлыков.
Используйте команду ls -l, чтобы узнать кому принадлежит файл или к какой группе относится. Иметь возможность изменять владельца файлов с помощью команды chown, может только пользователь с привилегиями sudo.
Как сменить владельца файла
Чтобы сменить владельца файла, используйте команду Chown, указав имя нового владельца и путь к файлу:
chown USER FILE
Например, следующая команда изменит владельца файла rabota.txt на нового владельца с именем abuzov:
chown abuzov rabota.txt
Чтобы изменить владельца нескольких файлов или папок, укажите их в виде списка через пробел. Например, команда ниже меняет владельца файла с именем auto1 и каталога garage1 на нового владельца с именем abuzov:
chown abuzov auto1 garage1Идентификатор пользователя (UID) можно использовать вместо имени пользователя. Следующий пример изменит владельца файла с именем file2 на нового владельца с UID 1000:
chown 1000 file2
Как изменить владельца и группу файла
Для смены владельца и группы файла, используйте команду chown, за которой следует имя нового владельца с группой, разделенные двоеточием (:) без промежуточных пробелов и имени файла:
chown USER:GROUP FILE
Следующая команда изменит владельца файла dom1 на нового владельца с именем abuzov и группу goroda:
chown abuzov:goroda dom1Если оставить пустым имя группы после двоеточия (:), группа файла изменится на группу, которой принадлежит указанный пользователь.
chown linuxize: file1
Как изменить группу доступа к файлу
Команда chown может выполнять ту же функцию, что и команда chgrp, то есть менять группу доступа к файлам. Чтобы изменить только группу, используйте команду chown, за которой следует двоеточие (:) и новое имя группы и имя файла.
chown :GROUP FILEСледующая команда изменит группу-владельца файла с именем file1 на www-data:
chown :www-data file1
Как рекурсивно изменить владельца файлов
Чтобы рекурсивно обработать все файлы и каталоги, используйте параметр -R (—recursive):
chown -R USER:GROUP DIRECTORY
Например, следующая команда изменит владельца всех файлов и подпапок в папке: /var/www на нового владельца и группу с именем www-data:
сhown -R www-data: /var/www
Надеемся, у вас получилось понять, как использовать команду Linux chown. Если вы хотите узнать больше о команде chown, посетите страницу полного руководства chown.
Права доступа в Linux: команды ls, chmod, chown, chgrp + примеры
В этой небольшой статье представлена довольно исчерпывающая информация о правах доступа в Unix-подобных операционных системах, описаны варианты их изменения, а также расшифровываются некоторые понятия и определения.
Для начала следует разобраться с основными понятиями такими как: кто такой владелец файла в Linux, каким образом к файлу получают доступ другие пользователи, а не только сам владелец и т.д.
В Unix-подобных системах приложение запускается с правами пользователя, вызвавшего указанное приложение. Это обеспечивает дополнительную безопасность, так как процесс с правами пользователя не сможет получить доступ на запись к важным системным файлам, например /etc/passwd
, который принадлежит суперпользователю root
. Звучит просто, но существует некоторые особенности, которые нужно обязательно знать и учитывать.
Владелец, Группа и Все остальные
Владелец
Владелец файла или директории в Linux – это пользователь, который их создал. Командой chown
можно поменять владельца для файла или директории.
Права на чтение, запись и исполнение устанавливаются с помощью числовых кодов 0400, 0200 и 0100 соответственно. Их можно комбинировать. Например, код 0700 позволяет читать, записывать и изменять файлы владельцем.
Группа
Группа — это несколько пользователей Linux, которые могут использовать (при достаточных правах доступа) файлы и папке на уровне с их владельцем. Изменить группу пользователей ассоциированных с файлом или директорией можно командой chgrp
.
Права на чтение, запись и исполнение устанавливаются с помощью числовых кодов 0040, 0020 и 0010 соответственно. Их можно комбинировать. Например, код 0070 позволяет читать, записывать и изменять файлы ассоциированной с файлом группой пользователей.
Все остальные
Это собирательное название для тех, кто не является владельцем файла или не относится к группе пользователей, которая может работать с этим файлом или директорией. Хорошая аналогия – это «весь мир», «каждый» или «любой».
Права на чтение, запись и исполнение устанавливаются с помощью числовых кодов 0004, 0002 и 0001 соответственно. Их можно комбинировать. Например, код 0007 позволяет читать, записывать и изменять файлы любому желающему.
Права на чтение, запись и выполнение
Чтение
Позволяет файлу быть прочитанным определенной группой пользователей.
Определяется как «r» в выводе команды ls
Запись
Позволяет изменять файлы или директории.
Определяется как «w» в выводе команды ls
Выполнение
Позволяет запускать бинарные файлы. Кроме этого, проверяет является ли папка доступной для поиска. Например, если у директории выставлены права 0600, то Вы не сможете воспользоваться командой cd
, чтобы войти в эту папку или просмотреть ее содержимое командой ls
Определяется как «x» в выводе команды ls
Ну а теперь можно переходить к практике.
Определение и контроль прав доступа в Linux командой ls
С помощью команды ls
можно узнать какие права доступа выставлены на файлы в данной или указанной директории:
gruyere@meltingpot /test_perms $ ls -l
total 0
-rw-r—r— 1 gruyere staff 0 27 Feb 19:43 bar
drwxr-xr-x 2 gruyere staff 68 27 Feb 19:45 baz
-rw-r—r— 1 gruyere staff 0 27 Feb 19:43 foo
Как видно из примера выше, команда ls
показывает символьный код прав доступа на файлы и директории. В 3 и 4-ой колонке также указывается, кто является владельцем этих файлов или директорий и к какой группе пользователей они принадлежат.
chmod
chmod
(change mode) – это широко используемая команда для изменения прав доступа к файлам и папкам в Linux. Она позволяет устанавливать права на доступ как пользователю, так и группе пользователей и для всех остальных.
Кроме этого, серверные язык программирования (вроде php или Python) предоставляют некую копию этой команды в том смысле, что у них схожа нотация установки прав.
Абсолютная и символьная нотация
chmod
поддерживает 2 типа синтаксиса для изменения прав доступа:
- Абсолютная нотация – восьмеричное число, указывающее на то, какие биты доступа активировать(ны), например 0777
- Символьная нотация – сочетание букв и цифр устанавливающих бит доступа.
Восьмеричный код более естественен, он гарантирует установку особых прав доступа на файлы и директории, кроме этого, этот подход используется в языках программирования для программного изменения прав доступа.
Символьная нотация используется для добавления или удаления уже определенных прав. Существуют специальные сайты для перевода абсолютной нотации в символьную и наоборот, они позволяют лучше понять как работают все эти права доступа и команда chmod
. Вот один из них:
Установка или изменение прав доступа с помощью chmod
в Linux
Синтаксис chmod
очень прост:
chmod <права доступа> <файл или директория>
Права доступа можно указывать используя числовой или символьный код:
chmod 0755 foo.sh # octal
chmod +x bar.sh # symbolic
Для дополнительной информации о команде воспользуйтесь командой man chmod
Особые права доступа
Существуют также особые флаги прав доступа, которые следует использовать с осторожностью (более подробная информация по ссылке):
Надеюсь, что эта статья была Вам полезна. Продолжайте изучать Linux. Удачи
Основные команды Linux- шпаргалка —
# # несколько примеров команды ping, выводящие локальное время
ping -I 10.234.4.2 10.224.10.2 | awk ‘{if($0 ~ /bytes from/){print strftime()» *** «$0}else print}’
ping -I 10.234.4.2 10.224.10.2 | while read pong; do echo «$(date) *** $pong»; done
ping -I 10.234.4.2 10.224.10.2 | perl -nle ‘print scalar(localtime), » *** «, $_’
| # # несколько примеров команды ping, выводящие локальное время ping -I 10.234.4.2 10.224.10.2 | awk ‘{if($0 ~ /bytes from/){print strftime()» *** «$0}else print}’ ping -I 10.234.4.2 10.224.10.2 | while read pong; do echo «$(date) *** $pong»; done ping -I 10.234.4.2 10.224.10.2 | perl -nle ‘print scalar(localtime), » *** «, $_’ |
[root@proxy ~]# netstat -ai
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 36017870 0 31 0 42781870 0 0 0 BMRU
eth2 1500 0 43918739 0 0 0 34393308 0 0 0 BMRU
eth3 1500 0 3220106 0 0 0 3666398 0 0 0 BMRU
lo 16436 0 15429640 0 0 0 15429640 0 0 0 LRU
ppp0 1246 0 14047 0 0 0 1576 0 0 0 MOPRU
ppp1 1246 0 1329 0 0 0 1941 0 0 0 MOPRU
| [root@proxy ~]# netstat -ai Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 36017870 0 31 0 42781870 0 0 0 BMRU eth2 1500 0 43918739 0 0 0 34393308 0 0 0 BMRU eth3 1500 0 3220106 0 0 0 3666398 0 0 0 BMRU lo 16436 0 15429640 0 0 0 15429640 0 0 0 LRU ppp0 1246 0 14047 0 0 0 1576 0 0 0 MOPRU ppp1 |
5.8. Права доступа и атрибуты файла. Команды chown, chmod и chattr
5.8.1. Права доступа к файлам и каталогам
Для каждого каталога и файла вы можете задать права доступа. Точнее права доступа автоматически задаются при создании каталога (файла), а вы, при необходимости, можете их изменить. Какая может быть необходимость?
Например, вам нужно, чтобы к вашему файлу-отчету смогли получить доступ пользователи — члены вашей группы. Или вы создали обычный текстовый файл, содержащий инструкции командного интерпретатора. Чтобы этот файл стал сценарием, вам нужно установить право на выполнение для этого файла.
Существует три права доступа: чтение (r), запись (w), выполнение (x). Для каталога право на выполнение означает право на просмотр содержимого каталога.
Вы можете установить разные права доступа для владельца (то есть для себя), для группы владельца (то есть для всех пользователей, входящих в одну с владельцем группу) и для прочих пользователей. Пользователь root может получить доступ к любому файлу (каталогу) вне зависимости от прав, которые вы установили.
Чтобы просмотреть текущие права доступа, введите команду:
ls — l <имя файла/каталога>
Например:
В ответ компьютер покажет вам следующую строку:
— r-r— 1 ppt group 300 Apr 11 11:11 video.txt
В этой записи последовательность символов — r-r— обозначает права доступа. Первый дефис означает, что перед нами обычный файл. В случае каталога на его месте стояла бы буква d. Следующие три символа (r-) определяют права доступа владельца. Первый символ — это чтение, второй — запись, третий — выполнение. Как видно, владельцу разрешено только чтение этого файла, запись и выполнение запрещены, поскольку в правах доступа режимы w и x не определены.
Следующие три символа (r-) задают права доступа для членов группы владельца. Права такие же, как и у владельца — можно читать файл, но его нельзя изменять или запускать.
Последние три символа (—) задают права доступа для прочих пользователей. Прочие пользователи не имеют права ни читать, ни изменять, ни выполнять файл. При попытке получить доступ к файлу, они увидят сообщение Access denied.
Права доступа задаются командой chmod. Существуют два способа указания прав доступа: символьный (когда указываются символы, задающие права доступа — r, w, x) и абсолютный.
Так уже заведено, что в мире UNIX чаще пользуются абсолютным методом. Разберемся, в чем он заключается. Рассмотрим следующий набор прав доступа:
Он предоставляет владельцу право чтения и модификации файла (rw-), запускать файл владелец не может. Члены группы владельца могут только просматривать файл (r-), а все остальные пользователи не имеют вообще никакого доступа к файлу.
Возьмем отдельный набор прав, например, для владельца:
Чтение разрешено, значит, мысленно записываем 1, запись разрешена, значит, запоминаем еще 1, а вот выполнение запрещено, поэтому запоминаем 0. Получается число 110. Если из двоичной системы число 110 перевести в восьмеричную, получится число 6. Для перевода можно воспользоваться табл. 5.3.
Аналогично произведем разбор прав для членов группы владельца. Получится 100, т. е. 4 в восьмеричной системе. С третьим набором (—) все вообще просто — это 000, т. е. 0.
Записываем полученные числа в восьмеричной системе в порядке владелец — группа — остальные. Получится число 640, — это и есть права доступа. Для того чтобы установить эти права, выполните команду:
chmod 640 <имя_файла>
Наиболее популярные права доступа:
? 644 — владельцу можно читать и изменять файл, остальным пользователям — только читать;
? 666 — читать и изменять файл можно всем пользователям;
? 777 — всем можно читать, изменять и выполнять файл. Напомню, что для каталога право выполнения — это право просмотра его оглавления.
Иногда символьный метод проще. Например, у нас есть файл script, который нужно сделать исполнимым, для этого имеется команда:
Для того чтобы снять право выполнения, указывается параметр — x:
Подробнее о символьном методе вы сможете прочитать в руководстве по команде chmod (выполнив команду man chmod).
Данный текст является ознакомительным фрагментом.
Читать книгу целиком
Поделитесь на страничке
изменение владельца и группы на файлы и директории
chown — изменение владельца и группы на файлы и директории
chown [-fhv] [-R [-H | -L | -P]] владелец [:группа ] файл ... chown [-fhv] [-R [-H | -L | -P]] :группа файл ...
Программа изменяет владельца и/или группу файла или директории, то есть UserID и GroupID для указанного файла. Если не указана опция -h, символические ссылки переданные в качестве аргументов, не изменяются
Возможно использование следующих опций:
- -H
- Если установлена опция -R, следовать по ссылкам из командной строки. ( Ссылки найденные при обходе дерева каталогов не прослеживаются )
- -L
- Если опция -R установлена, следовать по всем символическим ссылкам.
- -P
- Если опция -R установлена, не следовать по ссылкам. Поведение по-умолчанию.
- -R
- Рекурсия. Изменить UserID и/или GroupID для всего дерева директорий и файлов начиная с указанной. Остерегайтесь совпадения с жесткой ссылкой на родительский каталог «..», при использовании шаблона «.*».
- -f
- Не сообщать о неудачной попытке изменить владельци и группу не менять код завершения операции, для сигнализирования о неудаче.
- -h
- Если файл является символической ссылкой, изменить UserID и/или GroupID только на саму ссылку.
- -v
Режим вывода сообщений о ходе выполнения программы. Если опция указана более одного раза, chown выведет имя файла вслед за старыми и новыми UserID/GroupID.
Опции -H, -L и -P, будут проигнорированы, если опция -R не установлена. Кроме того, все эти опции, переопределяет друг друга, и поведение команды chown, будет определятся опцией которая указана последней.
Опции владелец и группа не являются обязательными, но должна быть указана хотя-бы одна из них. Если указывается только группа, перед ней ставится знак : ( двоеточие ).
Параметр владелец файла, может быть представлен как в виде числового выражения UserID, так и в виде символического имени. Если имя пользователя совпадает с его UserID, операнд используется как «имя пользователя». То же самое относится к параметру группа.
Принадлежность файла может быть изменена только суперпользователем, по соображениям безопасности.
Программа chown возвращает 0 при удачном завершении и >0 в случае возникновения ошибки.
СМОТРИТЕ ТАКЖЕ
chgrp(1), find(1), chown(2), fts(3), symlink(7)
настройка и оптимизация серверов
Chgrp команда Linux с примерами
В Linux все файлы и каталоги связаны с владельцами: пользователь и группа. На файлы и каталоги назначенны разрешения, определяющие права доступа, такие как чтение, запись и выполнение, которые в конечном итоге определяют, кто имеет какие права на доступ к ним.
В этой статье мы рассмотрим, как изменить группу-владельца на файл или каталог с помощью команды chgrp. Команда chgrp (change group) используется для изменения группы, которой принадлежит файл или директория. В отличие от команды chown, которая требует указать как имя пользователя, так и имя группы, в chgrp требуется только группа.
Синтаксис команды chgrp
Синтаксис для изменения группы, к которой принадлежит файл, довольно прост. Просто напишите команду chgrp и после нее укажите имя группы, а за ним имя объекта.
$ chgrp OPTION group_name /path
Атрибут group_name представляет собой имя группы, которая станет владельцем файла или каталога (/path). Кроме того, можно указать GID (идентификатор группы) вместо имени группы. В этом случае вам нужно добавить GID со знаком плюс (+).
Изменение группы-владельца файла с помощью команды chgrp
Перед изменением группы, которая является владельцем файла, рекомендуется с помощью команды ls проверить текущую группу, которой принадлежит файл file.
$ ls -l /file
Далее, чтобы установить собственником определенную группу (например, mygroup) выполните следующую команду:
$ chgrp mygroup /file
При изменении группы, которая владеет файлом или каталогом Вы можете столкнуться с ошибкой chgrp operation not permitted. Эта ошибка указывает на то, что пользователь, от которого Вы выполняете команду, не имеет достаточных прав для изменения владельца файла.
Решенением этой проблемы будет запуск команды с sudo (конечно, Ваш пользователь должен обладать такими привелегиями):
$ sudo chgrp mygroup /directory/file
Введите пароль пользователя, когда у Вас его спросит система, и в итоге права применятся.
Кроме того, Вы можете указать несколько файлов в качестве аргументов при использовании команды chgrp следующим образом:
$ sudo chgrp group_name file_1 file_2 file_3
Как рекурсивно изменить группу-владельца на файл или директорию в Linux
Иногда может потребоваться рекурсивно изменить группу у всех файлов и субдиректорий в определенном каталоге. Чтобы это сделать, используйте -R, как показано в приведенном ниже примере.
$ sudo chgrp -R group-name /directory
Изменение группы-владельца у символических ссылок
Использование опции -R (рекурсивно) не назначает прав на символические ссылки, и поэтому у них сохранятся прежняя группа. Чтобы установить новую группу и на символические ссылки, передайте параметр -h:
$ sudo chgrp -Rh www-data /var/www
Заключение
В этой статье мы показали Вам, как с помощью команду chgrp в Linux можно применить новую группу-владельца к файлу или директории. Хотя можно то же самое сделать и командой chown, но команда chgrp предлагает гораздо более простой способ сделать это. Команда chgrp была создана намного раньше, когда chown еще не мог работать с группами.
Спасибо за чтение и, пожалуйста, если у Вас есть какие-либо дополнения, пишите в комменариях.
Как изменить владельца файла
Команда chown
изменяет права собственности пользователя на файл, каталог или ссылку в Linux. Каждый файл связан с пользователем или группой-владельцем. Очень важно правильно настроить разрешения для файлов и папок.
Из этого руководства вы узнаете, как использовать команду chown Linux с приведенными примерами.
- Linux или UNIX-подобная система
- Доступ к терминалу / командной строке
- Пользователь с привилегиями sudo для смены владельца.Не забудьте запустить команды с sudo , чтобы выполнить их правильно.
Синтаксис команды Chown в Linux
Базовый синтаксис команды chown состоит из нескольких сегментов. Файл справки имеет следующий формат:
chown [ОПЦИИ] ПОЛЬЗОВАТЕЛЬ [: ГРУППА] ФАЙЛ (ы)
- [ОПЦИИ] — команда может использоваться с дополнительными опциями или без них.
- [ПОЛЬЗОВАТЕЛЬ] — имя пользователя или числовой идентификатор пользователя нового владельца файла.
- [:] — использовать двоеточие при изменении группы файла.
- [GROUP] — изменение группового владения файлом не является обязательным.
- ФАЙЛ — целевой файл.
Для выполнения команды chown необходимы права суперпользователя.
В этом руководстве мы протестировали примеры команд с chown версии 8.28 в Ubuntu 18.04.2 LTS.
Чтобы проверить версию chown на вашем компьютере, введите:
chown - версия
Результат будет выглядеть примерно так:
Как проверить право собственности на файл в Linux
Во-первых, вам необходимо знать первоначального владельца файла или группу, прежде чем менять владельца с помощью команды chown.
Чтобы проверить группу или владение файлами и каталогами Linux в текущем расположении, выполните следующую команду:
LS-L
Пример вывода команды ls
выглядит так:
Как изменить владельца файла
Для изменения владельца файла с помощью chown необходимо указать нового владельца и файл. Формат команды:
chown Новый пользователь ФАЙЛ
Следующая команда изменяет владельца файла sample с root на пользователя test :
Чаун испытательный образец
Используйте тот же формат, чтобы изменить владельца для файлов и каталогов .
Изменение владельца файла с помощью UID
Вместо имени пользователя вы можете указать идентификатор пользователя, чтобы изменить владельца файла.
Например:
chown 1002 образец2
Убедитесь, что нет пользователя с тем же именем, что и числовой UID. Если есть, команда chown отдает приоритет имени пользователя, , а не UID .
Примечание: Чтобы проверить идентификатор пользователя, запустите id -u ИМЯ ПОЛЬЗОВАТЕЛЯ
с терминала.
Изменить владельца нескольких файлов Linux
Перечислить имена целевых файлов после нового пользователя, чтобы сменить владельца для нескольких файлов. Используйте одиночные пробелы между именами файлов.
В следующем примере root будет новым владельцем файлов sample2 и sample3 .
Образец корнеплодов 2 образца3
Объедините имена файлов и имена каталогов, чтобы изменить их владельца с помощью одной команды.Например:
Образец корнеплодов 3 Dir1
Не забывайте, что команды чувствительны к регистру.
Как изменить группу файла
С помощью chown вы можете изменить группу для файла или каталога, не меняя владельца-владельца. Результат такой же, как при использовании команды chgrp.
Запустите команду chown
, используя двоеточие и имя группы:
chown: NewGroup ФАЙЛ
В следующем примере группа файла sample3 изменяется с grouptest на group3.
chown: group3 sample3
Перечислить несколько имен файлов или каталогов для внесения массовых изменений.
Изменение группы файла с помощью GID
Подобно UID, используйте идентификатор группы (GID) вместо имени группы, чтобы изменить группу файла.
Например:
chown: 1003 образец
Изменить владельца и группу
Чтобы назначить нового владельца файла и одновременно изменить его группу, запустите команду chown
в следующем формате:
chown New Пользователь: NewGroup ФАЙЛ
Следовательно, чтобы установить linuxuser в качестве нового владельца и group2 в качестве новой группы файла sample2 :
chown linux пользователь: group3 sample3
Помните, что перед двоеточием и после него нет пробелов.
Изменить группу на группу входа пользователей
Команда chown назначает группу входа владельца файлу, если группа не указана.
Для этого определите нового пользователя, за которым следует двоеточие, пробел и целевой файл:
chown Новый Пользователь: ФАЙЛ
В следующем примере права собственности группы изменяются на группу входа в систему linuxuser :
chown linux пользователь: sample3
Перенести права собственности и настройки группы из одного файла в другой
Вместо того, чтобы передавать права собственности конкретному пользователю, вы можете использовать владельца и группу ссылочного файла.
Добавьте параметр --reference
в команду chown, чтобы скопировать настройки из одного файла в другой:
chown --reference = ReferenceFILE FILE
Не забудьте, что введите имена файлов правильно, чтобы избежать сообщения об ошибке:
Проверить владельца и группу перед внесением изменений
Параметр chown command --from
позволяет проверить текущего владельца и группу, а затем применить изменения.
Синтаксис chown для проверки пользователя и группы выглядит следующим образом:
chown --from = CurrentUser: CurrentGroup NewUser: NewGroup ФАЙЛ
Пример ниже показывает, что мы сначала проверили право собственности и группу файла sample3 :
chown --from = root: group2 linuxuser: group3 sample3
Затем chown сменил владельца на linuxuser и группу на group3 .
Опция - из
может использоваться для проверки только текущего пользователя файла.
chown --from = CurrentUser NewUser ФАЙЛ
Например:
chown --from = root linuxuser sample3
Как и в предыдущем разделе, вы можете проверить только группу файла, используя опцию - из
.
chown --from =: CurrentGroup: NewGroup ФАЙЛ
Вот пример, в котором мы проверили текущую группу перед ее изменением:
.
12 примеров команд Linux Chown для смены владельца и группы
Концепция владельца и групп файлов является фундаментальной для Linux. Каждый файл связан с владельцем и группой. Вы можете использовать команды chown и chgrp, чтобы изменить владельца или группу определенного файла или каталога.
В этой статье мы обсудим команду «chown», поскольку она также охватывает большую часть команды «chgrp».
Даже если вы уже знаете эту команду, возможно, один из примеров, упомянутых ниже, может быть для вас новым.
1. Смена владельца файла
# ls -lart tmpfile -rw-r - r-- 1 семейство химаншу 0 2012-05-22 20:03 tmpfile # chown root tmpfile # ls -l tmpfile -rw-r - r-- 1 корневое семейство 0 2012-05-22 20:03 tmpfile
Итак, мы видим, что владелец файла был изменен с «himanshu» на «root».
2. Изменить группу файла
С помощью команды chown также можно изменить группу (которой принадлежит файл).
# ls -l tmpfile -rw-r - r-- 1 семейство химаншу 0 2012-05-22 20:03 tmpfile # chown: друзья tmpfile # ls -l tmpfile -rw-r - r-- 1 друзья химаншу 0 22.05.2012 20:03 tmpfile
Если вы присмотритесь, группа файла изменилась с «семья» на «друзья».Итак, мы видим, что, просто добавив «:», за которым следует новое имя группы, можно изменить группу файла.
3. Смена владельца и группы
# ls -l tmpfile -rw-r - r-- 1 корневое семейство 0 2012-05-22 20:03 tmpfile # chown himanshu: друзья tmpfile # ls -l tmpfile -rw-r - r-- 1 друзья химаншу 0 22.05.2012 20:03 tmpfile
Итак, мы видим, что с помощью синтаксиса «
4. Использование команды chown для файла символической ссылки
Вот символическая ссылка:
# ls -l tmpfile_symlnk lrwxrwxrwx 1 семейство химаншу 7 22.05.2012 20:03 tmpfile_symlnk -> tmpfile
Итак, мы видим, что символическая ссылка «tmpfile_symlink» ссылается на файл «tmpfile».
Давайте посмотрим, что произойдет, если команда chown будет запущена по символической ссылке:
# chown root: друзья tmpfile_symlnk # ls -l tmpfile_symlnk lrwxrwxrwx 1 семейство химаншу 7 22.05.2012 20:03 tmpfile_symlnk -> tmpfile # ls -l tmpfile -rw-r - r-- 1 root friends 0 22.05.2012 20:03 tmpfile
Когда команда chown была выдана для символической ссылки для изменения владельца, а также группы, тогда это референт символической ссылки, то есть «tmpfile», владелец и группа которого были изменены.Это поведение команды chown по умолчанию. Кроме того, для этого же существует флаг «–dereference».
5. Использование команды chown для принудительной смены владельца / группы символьного файла.
Используя флаг «-h», вы можете принудительно изменить владельца или группу символической ссылки, как показано ниже.
# ls -l tmpfile_symlnk lrwxrwxrwx 1 семейство химаншу 7 22.05.2012 20:03 tmpfile_symlnk -> tmpfile # chown -h root: друзья tmpfile_symlnk # ls -l tmpfile_symlnk lrwxrwxrwx 1 root friends 7 22.05.2012 20:03 tmpfile_symlnk -> tmpfile
6.Смена владельца только в том случае, если файл принадлежит определенному пользователю
Используя флаг chown «–from», вы можете изменить владельца файла, только если этот файл уже принадлежит определенному владельцу.
# ls -l tmpfile -rw-r - r-- 1 root friends 0 22.05.2012 20:03 tmpfile # chown --from = guest himanshu tmpfile # ls -l tmpfile -rw-r - r-- 1 root friends 0 22.05.2012 20:03 tmpfile # chown --from = root himanshu tmpfile # ls -l tmpfile -rw-r - r-- 1 друзья химаншу 0 22.05.2012 20:03 tmpfile
- В приведенном выше примере мы подтвердили, что первоначальным владельцем / группой файла tmpfile был root / friends.
- Затем мы использовали флаг «–from», чтобы изменить владельца на «himanshu», но только если существующий владелец - «гость».
- Теперь, поскольку существующий владелец не был «гостем». Итак, команде не удалось изменить владельца файла.
- Затем мы попытались изменить владельца, если существующий владелец - «root» (что было верно), и на этот раз команда была успешной, и владелец был изменен на «himanshu».
Кстати, если вы хотите изменить права доступа к файлу, вы должны использовать команду chmod.
Если вы новичок, вам следует начать с чтения основ прав доступа к файлам.
7. Изменять группу, только если файл уже принадлежит определенной группе
Здесь также используется флаг «–from», но следующим образом:
# ls -l tmpfile -rw-r - r-- 1 друзья химаншу 0 22.05.2012 20:03 tmpfile # chown --from =: friends: family tmpfile # ls -l tmpfile -rw-r - r-- 1 семейство химаншу 0 2012-05-22 20:03 tmpfile
Поскольку файл «tmpfile» фактически принадлежал группе «друзья», условие было правильным, и команда была успешной.
Итак, мы видим, что с помощью флага ‘–from =:
ПРИМЕЧАНИЕ: Следуя шаблону «–from = <условное-имя-владельца>: <условное-имя-группы>», условие как для владельца, так и для группы может быть применено.
8. Скопируйте настройки владельца / группы из одного файла в другой
Это возможно с помощью флага «–reference».
# ls -l файл -rwxr-xr-x 1 семейство химаншу 8968 2012-04-09 07:10 файл # ls -l tmpfile -rw-r - r-- 1 root friends 0 22.05.2012 20:03 tmpfile # chown --reference = файл tmpfile # ls -l tmpfile -rw-r - r-- 1 семейство химаншу 0 2012-05-22 20:03 tmpfile
В приведенном выше примере мы сначала проверили владельца / группу справочного файла «file», а затем проверили владельца / группу целевого файла «tmpfile».Оба были разными. Затем мы использовали команду chown с опцией «–reference», чтобы применить настройки владельца / группы из справочного файла к целевому файлу. Команда выполнена успешно, и настройки владельца / группы «tmpfile» аналогичны настройкам «файла».
9. Измените владельца / группу файлов, рекурсивно перемещаясь по каталогам
Это стало возможным благодаря опции «-R».
# ls -l linux / linux ядро -rw-r - r-- 1 root friends 0 22.05.2012 21:52 linux / linuxKernel # ls -l linux / ubuntu / ub10 -rw-r - r-- 1 root Friends 0 22.05.2012 21:52 linux / ubuntu / ub10 # ls -l linux / redhat / rh7 -rw-r - r-- 1 root friends 0 22.05.2012 21:52 linux / redhat / rh7 # chown -R himanshu: семейство linux / # ls -l linux / redhat / rh7 -rw-r - r-- 1 семейство химаншу 0 22.05.2012 21:52 linux / redhat / rh7 # ls -l linux / ubuntu / ub10 -rw-r - r-- 1 семейство химаншу 0 22.05.2012 21:52 linux / ubuntu / ub10 # ls -l linux / linuxKernel -rw-r - r-- 1 семейство химаншу 0 22.05.2012 21:52 linux / linuxKernel
Итак, мы видим, что после проверки владельца / группы всех файлов в каталоге «linux» и двух его подкаталогах «ubuntu» и «redhat».Мы выполнили команду chown с параметром «-R», чтобы изменить и владельца, и группу. Команда выполнена успешно, и владелец / группа всех файлов были успешно изменены.
10. Использование команды chown для каталога символических ссылок
Давайте посмотрим, что произойдет, если мы введем команду «chown» для рекурсивного изменения владельца / группы файлов в каталоге, который является символической ссылкой на какой-либо другой каталог.
Вот каталог символических ссылок «linux_symlnk», который ссылается на каталог «linux» (уже использованный в примере «9» выше):
$ ls -l linux_symlnk lrwxrwxrwx 1 семейство химаншу 6 22.05.2012 22:02 linux_symlnk -> linux /
Теперь давайте изменим владельца (с himanshu на root) этого каталога символических ссылок рекурсивно:
# chown -R root: друзья linux_symlnk # ls -l linux_symlnk / -rw-r - r-- 1 друзья химаншу 0 22.05.2012 21:52 linuxKernel drwxr-xr-x 2 друга химаншу 4096 2012-05-22 21:52 redhat drwxr-xr-x 2 друга химаншу 4096 2012-05-22 21:52 ubuntu
В выводе выше мы видим, что владелец файлов и каталогов не был изменен.Это связано с тем, что по умолчанию команда chown не может пройти по символической ссылке. Это поведение по умолчанию, но для этого также есть флаг «-P».
11. Использование chown для принудительного рекурсивного изменения владельца / группы каталога символических ссылок
Этого можно добиться с помощью флага -H
# chown -R -H гость: семейство linux_symlnk # ls -l linux_symlnk / всего 8 -rw-r - r-- 1 гостевая семья 0 2012-05-22 21:52 linuxKernel drwxr-xr-x 2 гостевая семья 4096 2012-05-22 21:52 redhat drwxr-xr-x 2 гостевая семья 4096 2012-05-22 21:52 ubuntu
Итак, мы видим, что с помощью флага -H был изменен владелец / группа всех файлов / папок.
12. Перечислите все изменения, сделанные командой chown
.
Используйте подробный параметр -v, который покажет, было ли изменено или сохранено право собственности на файл, как показано ниже.
# chown -v -R гость: друзья linux сменил владельца `linux / redhat / rh7 'на гость: друзья сменил право собственности на `linux / redhat 'за гостем: друзья право собственности на `linux / redhat_sym 'сохраняется в качестве гостя: друзья право собственности на `linux / ubuntu_sym 'сохраняется в качестве гостя: друзья сменил владельца `linux / linuxKernel 'на гость: друзья сменил владельца linux / ubuntu / ub10 на гость: друзья право собственности на `linux / ubuntu 'сохраняется в качестве гостя: друзья право собственности на `linux 'сохраняется в качестве гостя: friends
Если вам понравилась эта статья, вам тоже может понравиться..
.Команда
CHOWN в Linux / Unix объяснена на примерах
Это наш второй пост в серии « Файлы и папки Linux» серии , а первый подробно описывает команду chmod . chown - это команда для смены владельца файла / папки или даже нескольких файлов / папок одновременно на указанного пользователя / группы. CHOWN означает CHOWN ange file OWN er и Group.
Синтаксис CHOWN
, вы можете использовать команду man, чтобы получить полную информацию о команде chown .
человек чоун
chown options user: группа файл / папка
В этом посте мы увидим несколько простых и сложных примеров, которые необходимы каждому системному администратору Linux. Я твердо верю, что изучение примеров - это хороший способ понять многие вещи.
Примеры:
Exampl1: Как я могу отметить себя владельцем файла?
$ chown mark file1
Приведенная выше команда не изменит владельца группы.
Example2: Как я могу изменить владельца нескольких файлов на пользователя jim?
$ chown jim / путь / к / файлу1 / путь / к / файлу2 / путь / к / файлу3
или
$ chown jim / путь / к / {файл1, файл2, файл3}
Example3: Как я могу изменить владельца и группу на zen и группу продаж для файла.
$ chown zen.sales file1
или
$ chown zen: файл продаж1
Примечание.И: взаимозаменяемы, поэтому использовать можно что угодно.
Example4: Как насчет изменения прав владельца и группы, если я знаю только их UID и GID ?.
Используйте эти UID и GID вместо нового владельца и группы
$ chown 625: 874 файл1
Здесь UID пользователя - 625, а GID новой группы - 874.
Example5: Как изменить владельца на tim и group на основную группу пользователя (tim).
$ chown tim.Файл1
Примечание: Здесь вы не указали имя группы после., Поэтому команда chown примет первичную группу пользователя tim.
Example6: Как изменить только права группы для group: techsupport?
$ chown .techsupport file1
Example7: как изменить папку и ее содержимое, чтобы отметить владение / группу?
$ chown -R mark: sales / path / to / directory
Example8: как принудительно / тихо / тихо изменить права собственности и не выводить никаких ошибок?
$ chown -f метка / путь / к / файлу1
Примечание: Мы можем смешивать параметры -R и -f, когда это необходимо.
Уловки / Идеи при написании сценариев и автоматизации задач
Example9: У меня есть файл, расположенный в / home / user1 / testfile , теперь мое требование состоит в том, что я хочу, чтобы этот файл был таким же владельцем для моего второго файла, который находится в / var / ftp / file2 , как могу я сделать это, не зная владельца этого файла?
Используйте для этого справочную опцию, как показано ниже.
$ chown –reference = / home / user1 / testfile / var / ftp / file2
Example10: Как насчет изменения всех файлов, принадлежащих пользователю: Terry в папке / var с новым сотрудником: Роб присоединился как его замена ?.Используйте параметр –from для этой папки, как показано ниже.
$ chown –from = terry rob / var / *
Некоторые редко используемые опции.
.
разрешений для файлов в Linux / Unix с примером
- Home
Testing
- Back
- Agile Testing
- BugZilla
- Cucumber
- Database Testing
- ETL Testing
- Назад
- JUnit
- LoadRunner
- Ручное тестирование
- Мобильное тестирование
- Mantis
- Почтальон
- QTP
- Назад
- Центр качества (ALM3000)
- Центр качества
- 000
- Управление тестированием
- TestLink
SAP
- Назад
- ABAP
- APO
- Начинающий
- Basis
- BODS
- BI
- BPC
- CO
- Назад
- CRM
- Crystal Reports
- QM4000
- QM4
- Заработная плата
- Назад
- PI / PO
- PP
- SD
- SAPUI5
- Безопасность
- Менеджер решений
- Successfactors
- Учебники SAP
- Apache
- Назад
- Java
- JSP
- Kotlin
- Linux
- Linux
- Kotlin
- Linux
- Perl
js
- Назад
- PHP
- PL / SQL
- PostgreSQL
- Python
- ReactJS
- Ruby & Rails
- Scala
- SQL
- SQL
- UML
- VB.Net
- VBScript
- Веб-службы
- WPF
000
000
0003 SQL
000
0003 SQL
000
Обязательно учите!
- Назад
- Бухгалтерский учет
- Алгоритмы
- Android
- Блокчейн
- Business Analyst
- Создание веб-сайта
- CCNA
- Облачные вычисления
- 00030003 COBOL
- 9000 Compiler
- 00030002 9000 Compiler
- Ethical Hacking
- Учебники по Excel
- Программирование на Go
- IoT
- ITIL
- Jenkins
- MIS
- Сети
- Операционная система
- 0003
- Назад
- Управление проектами Обзоры
- Salesforce
- SEO
- Разработка программного обеспечения
- VB A
- 9000 Встроенные системы
- 00030002 9000 Compiler
Big Data
- Назад
- AWS
- BigData
- Cassandra
- Cognos
- Хранилище данных
- HBOps
- HBOps
- MicroStrategy
- MongoDB
- NiFi
0003
0003
.