Как использовать команду Linux chown

{title}

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

Наиболее распространенная проблема безопасности в средах Linux состоит в том, что, поскольку это многопользовательская система, мы можем создавать учетные записи пользователей, которые нам нужны, и эти люди смогут получить доступ к системе и иметь необходимые знания для доступа к файлам других пользователей. Чтобы предотвратить это, система Linux использует свойство объекта, состоящего из пользователей и групп, которые создают и редактируют файлы, это свойство может быть принято как идентификатор пользователя и идентификатор группы ( GID).

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

примечание

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

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

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

В Linux у нас есть три основных типа разрешений, связанных с файлами:

  • Полномочия пользователя: эти разрешения применяются к одному пользователю, который имеет полный доступ к файлу, это пользователь-владелец.
  • Групповые разрешения: с помощью этих разрешений мы можем разрешить группе пользователей иметь доступ к файлу, это называется группой владельцев.
  • Другие разрешения могут применяться к другим пользователям системы с определенными ограничениями.

Таким образом, при создании файла владелец - это пользователь, который его создал, а группа владельцев - это текущая группа пользователя, создавшего этот файл.

Общий синтаксис использования команды chown выглядит следующим образом:

 chown [-c | --changes] [-v | --verbose] [-f | --silent | --quiet] [--dereference] [-h | --no-dereference] [--preserve-root ] [--from = currenttowner: currentgroup] [--no-preserve-root] [-R | --recursive] [--preserve-root] [-H] [-L] [-P] --reference = файл ref-файла ... 

1. Как просматривать группы, UID и GID в Linux

Шаг 1
Давайте начнем с того, что необходимо для определения групп, UID и GID, доступных в операционной системе, для перечисления доступных групп просто запустите следующее:

 группы 

{title}

Шаг 2
Теперь, чтобы получить доступ к списку групп, их числовым идентификаторам и соответствующим UID и GID, мы должны использовать команду id:

 идентификатор 

{title}

Шаг 3
Некоторые параметры для использования с командой id:

или

Список UID.
-g

Перечислите текущий GID
-nu

Укажите имя пользователя.
-ng

Генеральное имя текущей группы.

{title}

2. Как просмотреть владельца и права доступа к файлу Linux


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

{title}

Вы можете видеть некоторые буквы и цифры, которые назначены, это означает:

Нет доступа

 0 = --- 

выполнение

 1 = --x 

письменность

 2 = -w- 

Написание и исполнение

$config[ads_text5] not found

 3 = -wx 

чтение

 4 = r-- 

Чтение и исполнение

 5 = rx 

Чтение и письмо

 6 = RW- 

Чтение, письмо и исполнение

 7 = RWX 

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

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

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

 sudo chown "новый владелец" "файл" 

{title}

Шаг 2
Если мы снова используем ls -l, мы проверяем, что владелец упомянутого файла был изменен:

{title}

Шаг 3
С помощью этого же метода мы можем изменить владельца нескольких файлов одновременно:

 sudo chown "Новый пользователь" "Файл" "Файл1" "Файл2" 
Практическим способом установить новых владельцев является использование подстановочных знаков, которые позволяют нам выбирать группы файлов, например, если мы хотим изменить владельца всех файлов, которые начинаются с буквы «s», которую мы выполняем:
 sudo chown «Новый пользователь» s *. * 

$config[ads_text5] not found

Шаг 4
Затем мы можем проверить права доступа указанного пользователя, запустив:

 ls -l resoltic1 S *. * 

{title}

Шаг 5
Если сейчас наша цель - изменить владельца каталога, мы должны ввести имя каталога вместе с командой chown следующим образом:

 sudo chown "user" "./directory/" 

{title}

Шаг 6
Чтобы проверить свойства на уровне владельца каталога, мы скомбинируем параметр ls с опцией -d (dir), чтобы вывести список свойств каталога, но не файлов, размещенных в нем:

 ls -l -d ./Solvetic3/ 

{title}

$config[ads_text5] not found

Шаг 7
Если мы хотим изменить владельца всех файлов в каталоге в Linux, мы должны использовать опцию -R (рекурсивный), которая изменит владельца пользователя, назначенного файлам в выбранном каталоге:

 Судо Чоун -R решающий ./Solvetic3/ 

{title}

4. Как поменять проприетарную группу Linux


Другая опция, предлагаемая командой chown, - это изменение группы файла или каталога.

Шаг 1
Например, мы можем изменить владельца группы одновременно с пользователем, для этого мы вводим новое имя владельца и новое имя группы с двоеточием ":" следующим образом:

 Судо Чоун решетик: SolveticTest Solvetic.docx 
Мы можем проверить разрешения, запустив:
 ls -l Solvetic.docx 

{title}

Шаг 2
Другой доступный параметр для определения новой группы владельцев - это ввод двоеточия и опускание имени группы следующим образом:

 Судо Чоун решетик: Solvetic.docx 
Это предоставит группу по умолчанию текущего пользователя:

{title}

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

 Судо Чоун: SolveticTest Solvetic.docx 

{title}

$config[ads_text5] not found

Изменить владельца, используя UID и GID

Другой способ изменить владельцев - это использовать UID или GID пользователя или группы, которые мы знаем, выполняя команду id, например, пользователю и группе Solvetic назначается UID 1000 для обоих объектов, так что Для выполнения этого действия мы выполним следующее:

 Судо Чоун 1000: 1000 Solvetic.docx 

{title}

5. Общие параметры использования команды chown Linux


Вот некоторые из параметров, которые мы можем использовать с chown в Linux для оптимизации использования команды:

$config[ads_text5] not found

Отображает информацию о файлах, которые были изменены

 -с, - изменения 

Отображает подробную информацию о каждом обработанном файле

 -v, - многословно 

Он не генерирует никакого вывода

 -f, - тихий, - тихий 

Ссылка на символические ссылки не применяется

 --dereference 

Никогда не разыменовывайте символические ссылки

 -х, - нет разыменования 

Изменять владельца или группу каждого файла, только если текущий владелец или группа соответствует текущему владельцу и / или текущей группе

 --from = текущий город: текущая группа 

Не влияет на корневой каталог

 --no-заповедник-корень 

Используйте владельца и группу файла ref-файла вместо назначения свойства с новым владельцем.

$config[ads_text6] not found

 --reference = ref-file 

Действует в файлах и каталогах рекурсивно

 -R, - рекурсивный 

Если файл в командной строке является символической ссылкой на каталог, он также будет работать с этими файлами и каталогами.

 -H 

Показать использованную версию

 --version 

Показать команду help

 --help 

Мы можем увидеть, как редактировать владельца как пользователя, так и группы объектов в Linux просто благодаря chown.

$config[ads_text5] not found