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

В этой статье мы детально разберем, как создать пользователя Linux.

Создание и удаление пользователя в Linux – useradd

Для добавления пользователей используется команда useradd, а удаляются с помощью userdel. Давайте создадим две учетки, с одной будем работать дальше, а вторую удалим.

Перед тем как добавить учетную запись, на незнакомом сервере, сначала посмотрите какие параметры заданы по умолчанию для новых пользователей. useradd использует шаблон, который задается в файле /etc/default/useradd. Посмотрим, что там у нас:

[[email protected] ~]# useradd -D # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes

123456789 [root@hc~]# useradd -D# useradd defaults fileGROUP=100HOME=/homeINACTIVE=1EXPIRE=SHELL=/bin/bashSKEL=/etc/skelCREATE_MAIL_SPOOL=yes

Что тут для нас важно:

  • HOME=/home – директория где создастся домашняя папка пользователя, традиционно это /home
  • INACTIVE=-1 – количество дней, через которое навсегда заблокируется учетная запись, после устаревания пароля. -1 здесь означает, что возможность не используется.
  • EXPIRE= – дата, когда пользователь будет заблокирован. Сейчас пусто, значит никогда.
  • SHELL=/bin/bash – какая оболочка будет использоваться пользователем.
  • SKEL=/etc/skel – папка где лежат файлы, которые будут скопированы в домашнюю директорию нового пользователя.

По сути нас все устраивает, давайте уже создадим учётку:

useradd hc -m

1 useradd hcm

-m указывает, что необходимо создать папку пользователя в /home, если ее там еще нет. И сразу создадим второго:

Читайте также:  Информация о процессах в Linux. Команда Top

useradd testuser -m -s /bin/sh -c ‘Test User Account’

1 useradd testuserms/bin/shc‘Test User Account’

Для разнообразия, с помощью ключа -s я указал, что shell оболочкой будет не bash, a sh. А -с задает комментарий для пользователя, который используется, обычно, как полное имя пользователя.

Какие ключи еще понимает useradd:-b – задает базовый каталог, в котором будет создана домашняя папка пользователя. По умолчанию /home-d – задает имя домашнего каталога. По умолчанию название совпадает с именем пользователя-e Дата, по достижении которой пользователь блокируется. Задается в формате ГГГГ-ММ-ДД. По умолчанию отключено. Соответствует EXPIRE в шаблоне/etc/default/useradd;-f – соответствует INACTIVE в шаблоне, как уже говорилось, срок устаревания пароля до блокировки;-g – задает первичную группу для нового пользователя. Указывается GID или имя группы. Если параметр не задан, имя группы будет такое же как имя пользователя;-G – список дополнительных групп для создаваемого пользователя;-k – путь к каталогу шаблонов. Соответствует SKEL в шаблоне;-u – для установки UID пользователя вручную.

CHOWN

Chown — от английского change own. И так, как вы знаете в Linux есть пользователи и группы. У каждого пользователя есть свои файлы, созданные или загруженные. Каждый пользователь находится в собственной группе и может быть объеден c другими пользователями в другие группы.

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

ls -l

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

sudo chown userName

В данном примере мы присвоили файл пользователю userName.

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

sudo chgrp groupName

Читайте также:  Как установить ubuntu на virtualbox. установка линукс на виртуалку

Для того чтобы не вводить 2 разные команды делают так:

sudo chown userName:groupName

Вначале указывается владелец файла, а после группа:

sudo chown имя_владельца:имя_группы

Если вам нужно поменять в директории владельца и группу, а там множество файлов и папок тогда используйте ключ -R:

sudo chown -R userName:groupName /var/www/site/

Хранилища учетных записей

Информация об идентификаторах UID и GID, именах пользователей и групп, их паролях и прочих свойствах учетных записей размещается (в простейшем случае) в файловых «хранилищах,»-Добычных текстовых файлах каталога /etc, формируя базы данных пользовательских /etc/passwd, /etc/shadow и групповых /etc/group, /etc/gshadow учетных записей. формат и структура этих файлов хорошо документированы в руководстве passwd(5), shadow(5) и group(5), gshadow(5) и представляют собой простейшие текстовые таблицы, где свойства каждой учетной записи представлены набором столбцов одной строки, разделенных символом двоеточия : .

Базы данных пользовательских учетных записей

[email protected]:~$ cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

. . .                                  . . .

dvk:x:1000:1000: Alexey Ivanov,,+7(805) 530-01-04,,:/hone/dvk:/bin/bash

. . .                                  . . .

[email protected]:~$ cat /etc/group

. . .

dvk:x:1000:

lpadmin:x:108:dvk

sambashare:x:109:dvk

admin:x:110:dvk

. . .

При использовании «коммутатора службы имен» (NSS, W: [Name Service Switch]) имеется возможность хранить базы данных учетных записей в любых хранилищах, включая сетевые службы каталогов NIS, NIS+, LDAP, активный каталог Microsoft Windows и даже реляционные сетевые базы данных SQL— при помощи соответствующих модулей NSS  и согласно настройкам коммутатора (5).

Хранилища пользовательских учетных записей и модули NSS

Создать пользователя с датой истечения срока действия

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

Читайте также:  История браузера: посмотреть, удалить, восстановить

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

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

Создать пользователя с датой истечения срока действия

useradd -d /home/test -e 2016-02-05 test

Дата должна указываться в формате ГГГГ-ММ-ДД, где ГГГГ — год, ММ — номер месяца, а ДД — номер дня.