Управление пользователями на ubuntu и debian
Содержание:
- Файлы конфигурации
- Создание пользователя mysql
- Добавление нового пользователя в дополнительную группу
- Добавление пользователя в группу Linux через GUI
- Команда useradd
- Синтаксис команды useradd
- Создание нового пользователя
- Создание нового пользователя с домашней директорией в /home
- Создание нового пользователя с произвольной домашней директорией
- Создание нового пользователя с произвольными UID, GID
- Создание пользователя с указанием оболочки (shell)
- Создать пользователя и добавить его в группы
- COLOPHON top
- Добавляем нового пользователя в Ubuntu
- Управление аккаунтами пользователей
- База данных пользователей
- Права и владельцы
- Создание пользователя в Linux
- Обзор
Файлы конфигурации
Изменять параметры пользователей и групп можно не только при помощи специальных утилит, но и вручную. Все настройки хранятся в текстовых файлах. Описание каждого из них приведено ниже.
/etc/passwd
В файле /etc/passwd хранится вся информация о пользователях кроме пароля. Одна строка из этого файла соответствует описанию одного пользователя. Примерное содержание строки таково:
vasyapupkin:x:1000:1000:Vasya Pupkin:/home/vpupkin:/bin/bash
Строка состоит из нескольких полей, каждое из которых отделено от другого двоеточием. Значение каждого поля приведено в таблице.
№ | Поле | Описание |
---|---|---|
1 | vasyapupkin | Имя пользователя для входа в систему. |
2 | x | Необязательный зашифрованный пароль. |
3 | 1000 | Числовой идентификатор пользователя (UID). |
4 | 1000 | Числовой идентификатор группы (GID). |
5 | Vasya Pupkin | Поле комментария |
6 | /home/vpupkin | Домашний каталог пользователя. |
7 | /bin/bash | Оболочка пользователя. |
Второе и последнее поля необязательные и могут не иметь значения.
/etc/group
В /etc/group, как очевидно из названия хранится информация о группах. Она записана в аналогичном /etc/passwd виде:
vasyapupkin:x:1000:vasyapupkin,petya
№ | Поле | Описание |
---|---|---|
1 | vasyapupkin | Название группы |
2 | x | Необязательный зашифрованный пароль. |
3 | 1000 | Числовой идентификатор группы (GID). |
4 | vasyapupkin,petya | Список пользователей, находящихся в группе. |
В этом файле второе и четвертое поля могут быть пустыми.
/etc/shadow
Файл /etc/shadow хранит в себе пароли, по этому права, установленные на этот файл, не дают считать его простому пользователю. Пример одной из записей из этого файла:
vasyapupkin:$6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0:15803:0:99999:7:::
Здесь:
№ | Поле | Описание |
---|---|---|
1 | vasyapupkin | Имя пользователя для входа в систему. |
2 | $6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0 | Необязательный зашифрованный пароль. |
3 | 15803 | Дата последней смены пароля. |
4 | Минимальный срок действия пароля. | |
5 | 99999 | Максимальный срок действия пароля. |
6 | 7 | Период предупреждения о пароле. |
7 | Период неактивности пароля. | |
9 | Дата истечения срока действия учётной записи. |
Создание пользователя mysql
1. Как создать пользователя MySQL
Предположим, что база данных уже создана и называется test_database. Нам нужно открыть клиент базы данных. Для этого наберите в терминале:
Теперь можно работать. Для создания пользователя используется команда CREATE USER, её синтаксис такой:
CREATE USER ‘имя_пользователя’@’хост’ IDENTIFIED BY ‘пароль’;
Кроме имени пользователя, здесь нужно задать хост, с которого может авторизоваться этот пользователь. Здесь может быть доменное имя, IP-адрес, адрес подсети или знак «%», который означает все возможные хосты. Это очень удобно, потому что вы можете создать пользователя, к которому можно будет подключится только локально или настроить отдельно права для локального или удалённого пользователя.
Например, давайте создадим локального пользователя test_user с паролем password:
Или можно создать пользователя, который будет доступен со всех хостов:
Смотрим наших пользователей:
Все пользователи созданы.
2. Права пользователя MySQL
Создать пользователя — это ещё далеко не всё, теперь нужно назначить ему права. Для этого используется команда GRAT. У неё такой синтаксис:
GRANT привилегии ON база_данных . таблица TO ‘имя_пользователя’@’хост’;
Здесь можем дать определённые привилегии для опредёленного пользователя к базе данных или таблице. Если нужно дать права для всех баз данных или таблиц, используйте вместо названия звездочку — «*». Вот основные права пользователя MySQL, которые вы можете использовать:
- ALL PRIVILEGES — все, кроме GRANT;
- USAGE PRIVILEGES — никаких привилегий;
- SELECT — делать выборки из таблиц;
- INSERT — вставлять данные в таблицу;
- UPDATE — обновлять данные в таблице;
- DELETE — удалять данные из таблицы;
- FILE — разрешает читать файлы на сервере;
- CREATE — создавать таблицы или базы данных;
- ALTER — изменять структуру таблиц;
- INDEX — создавать индексы для таблиц;
- DROP — удалять таблицы;
- EVENT — обработка событий;
- TRIGGER — создание триггеров.
Также доступны такие привилегии администрирования баз данных:
- GRANT — изменять права пользователей;
- SUPER — суперпользователь;
- PROCESS — получение информации о состоянии MySQL;
- RELOAD — позволяет перезагружать таблицы привилегий;
- SHUTDOWN — позволяет отключать или перезапускать базу данных;
- SHOW DATABASES — просмотр списка баз данных;
- LOCK TABLES — блокирование таблиц при использовании SELECT;
- REFERENCES — создание внешних ключей для связывания таблиц;
- CREATE USER — создание пользователей;
Чтобы дать права пользователю MySQL на обновление и добавление записей для базы данных test_database, выполните:
Дальше дадим этому же пользователю все права над этой базой данных:
Теперь посмотрим привилегии нашего пользователя:
Мы видим, что для всех баз данных и таблиц привелегий нет, но зато есть все привилегии для базы данных test_database. Вот так это работает. После обновления прав пользователя необходимо обновить таблицу прав пользователей MySQL в памяти. Для этого выполните:
3. Удаление прав пользователя MySQL
Чтобы отозвать права у пользователя MySQL, используйте команду REVOKE вместо GRANT. Её синтаксис похож на GRANT:
REVOKE привилегии ON база_данных . таблица FROM ‘имя_пользователя’@’хост’;
Например, заберём все права на базу данных test_database у нашего пользователя:
4. Создание суперпользователя MySQL
Если вам необходимо создать пользователя со всеми правами MySQL на замену для root, то можно использовать такую конструкцию:
Даём все привилегии для пользователя test_user над всеми базами данными и всеми таблицами. Но наш пользователь не сможет давать права другим пользователям. Чтобы это исправить, нужно дать ему привилегию GRANT, а для этого используется такая команда:
Теперь этот пользователь является суперпользователем для MySQL и, авторизовавшись от его имени в PhpMyAdmin, вы можете делать всё то же самое, что и с помощью root.
Добавление нового пользователя в дополнительную группу
Как уже было сказано, группа – крайне удобный и полезный инструмент, осуществляющий распределение прав доступа в Linux. Она позволяет получить доступ к одному ресурсу, файлу, папке или, напротив, запретить просмотр для других.
Первым шагом требуется создать дополнительную группу. Делается это посредством команды «groupadd», имеющей следующие синтаксические особенности:
- «f»– используется для уже существующий объединений для возвращения положительного исхода операции;
- «g»– позволяет задать параметр определителя GID вручную;
- «K»– позволяет пользователю самостоятельно изменить критерии автоматической генерации GID;
- «o»– предоставляет возможность получить разрешение на добавление с неуникальным GID;
- «p»– позволяет задать пароль для защиты данных;
- «r»– обозначение для системных объединений;
- «R»– изменяет корневой каталог.
Команда «groupadd» необходима для создания групп
Итак, чтобы создать новое объединение необходимо:
- Ввести команду: «sudo groupadd group».
- Проверить, произошло ли добавление к каталогу данных: /etc/group: cat /etc/group | grep group.
- Задать GID посредством команды синтаксиса «g»: sudo groupadd -g group.
- Придумать и задать пароль для сохранения данных: perl -e ‘print crypt(«00000», «АВС»),»\n»‘, где АВС – любая комбинация цифр для увеличения надежности пароля, 00000 – сам пароль.
Теперь, используя команду «useradd», можно добавить пользователей к данной группе по алгоритму, описанному выше: «usermod_а_G_group_name _ user_name». Например, требуется добавить Ulia в STR: usermod -a -G STR Ulia.
Обратите внимание! В Linux добавить в группу пользователя несложно, главное – внимательно вбивать данные, проверять введенную информацию. Также не стоит передавать доступ, пароли, данные незнакомым лицам
Добавление пользователя в группу Linux через GUI
Если на устройстве графический интерфейс, добавить нового человека сложнее. Для этого необходимо воспользоваться специальным дополнением. Для каждой системы создана своя утилита для решения данной задачи. Наиболее часто применяется system-config-users в CentOS.
Для ее установки необходимо выполнить следующее:
- Прописать код: «sudo yum install system-config-users».
- Открыть установленное приложение, используя терминал или главное меню системы.
- Открыть меню пользователя, кликнуть по разделу «группы».
- Выбрать необходимые вторичные группы или внести изменения, добавления в основную.
Посредством данной утилиты можно в Linux добавить пользователя, внести изменения, корректировки. Добавляться можно с разрешения администратора.
Дополнение system-config-users в CentOS необходимо для работы с графическим интерфейсом
На официальном сайте разработчиков системы можно найти пошаговое руководство по добавлению пользователей с указанием важных моментов, наиболее распространенных ошибок и трудностей. Кроме того, при возникновении трудностей пользователь может обратиться к сотрудникам службы технической поддержки через окно обратной связи или по телефону горячей линии.
Команда useradd
Синтаксис команды useradd
Команда useradd принимает в качестве аргумента имя пользователя, а также различные опции.
Синтаксис команды следующий:
useradd опции имяпользователя
Создание нового пользователя
Чтобы просто создать пользователя используется команда useradd без каких-либо опций. Указывается только имя пользователя.
Данная команда создает нового пользователя с системными параметрами по умолчанию, которые прописаны в файле /etc/default/useradd
Чтобы пользователь мог войти в систему, необходимо задать для него пароль. Для этого используем команду:
Создание нового пользователя с домашней директорией в /home
Создадим пользователя и его домашнюю директорию.
Домашняя директория создается по умолчанию в каталоге /home. Имя директории совпадает с именем пользователя.
Создание нового пользователя с произвольной домашней директорией
Чтобы создать пользователя с домашней директорией, расположенной в произвольном месте, используется опция -d, после которой указывается путь до директории. Директорию необходимо создать заранее.
Создаем домашнюю директорию для будущего пользователя:
Копируем файлы и директории, которые по умолчанию создаются в домашней директории пользователя в данной системе. Данные файлы находятся в директории /etc/skel
Создаем пользователя и указываем домашнюю директорию:
Меняем права доступа у домашней директории:
Задаем пароль для пользователя:
Можно просмотреть информацию о пользователе, которая сохранена в файле /etc/passwd
Создание нового пользователя с произвольными UID, GID
Каждый пользователь в Linux имеет свой числовой идентификатор — UID, а также идентификатор основной группы пользователя — GID.
При создании пользователя можно задать произвольные номера UID и/или GID. При указании номера группы, группа с этим номером должна быть создана заранее.
Создание пользователя с указанием оболочки (shell)
По умолчанию новые пользователи создаются с оболочкой /bin/sh Чтобы задать другую оболочку, используется опция -s /путь/до/оболочки
Создать пользователя и добавить его в группы
Обычно пользователи в Linux принадлежат нескольким группам. Чтобы при создании нового пользователя задать группы, к которым он будет принадлежать, используется опция -G список,групп
COLOPHON top
This page is part of the shadow-utils (utilities for managing accounts and shadow password files) project. Information about the project can be found at ⟨https://github.com/shadow-maint/shadow⟩. If you have a bug report for this manual page, send it to pkg-shadow-devel@alioth-lists.debian.net. This page was obtained from the project's upstream Git repository ⟨https://github.com/shadow-maint/shadow⟩ on 2020-11-01. (At that time, the date of the most recent commit that was found in the repos‐ itory was 2020-10-16.) If you discover any rendering problems in this HTML version of the page, or you believe there is a better or more up-to-date source for the page, or you have corrections or im‐ provements to the information in this COLOPHON (which is not part of the original manual page), send a mail to man-pages@man7.org shadow-utils 4.8.1 11/01/2020 USERMOD(8)
Pages that refer to this page:
newgidmap(1),
newuidmap(1),
passwd(1),
pcap(3pcap),
subgid(5),
subuid(5),
groupadd(8),
groupdel(8),
groupmems(8),
groupmod(8),
pwck(8),
useradd(8),
userdel(8)
Добавляем нового пользователя в Ubuntu
Вы можете создать нового юзера одним из двух способов, причем каждый метод имеет свои определенные настройки и будет полезен в разных ситуациях. Давайте подробно разберем каждый вариант осуществления поставленной задачи, а вы, исходя из своих потребностей, выберите наиболее оптимальный.
Способ 1: Терминал
Незаменимое приложение в любой операционной системе на ядре Linux — «Терминал». Благодаря этой консоли производится множество самых разнообразных операций, в том числе и добавление пользователей. Задействована при этом будет всего лишь одна встроенная утилита, но с разными аргументами, о которых мы расскажем ниже.
- Откройте меню и запустите «Терминал», либо же вы можете зажать комбинацию клавиш Ctrl + Alt + T.
Пропишите команду , чтобы узнать стандартные параметры, которые будут применены к новому пользователю. Здесь вы увидите домашнюю папку, библиотеки и привилегии.
Создать учетную запись со стандартными настройками поможет простая команда , где name — любое имя пользователя, введенное латинскими символами.
Такое действие будет произведено только после ввода пароля для доступа.
На этом процедура создания учетной записи со стандартными параметрами успешно завершена, после активации команды отобразится новое поле. Здесь вы можете ввести аргумент -p, указав пароль, а также аргумент -s, задав используемую оболочку. Пример такой команды выглядит так: , где passsword — любой удобный пароль, /bin/bash — расположение оболочки, а user — имя нового пользователя. Таким образом создается юзер с применением определенных аргументов.
Отдельно хотелось бы обратить внимание и на аргумент -G. Он позволяет внести учетную запись в соответствующую группу для работы с определенными данными
Из основных групп выделяются такие:
- adm — разрешение на прочтение логов из папки /var/log;
- cdrom — позволяется использовать привод;
- wheel — возможность использовать команду sudo для предоставления доступа к определенным задачам;
- plugdev — разрешение на монтирование внешних накопителей;
- video, audio — доступ к аудио и видеодрайверам.
На скриншоте выше вы видите, в каком именно формате вводятся группы при использовании команды useradd с аргументом -G.
Теперь вы ознакомлены с процедурой добавления новых учетных записей через консоль в ОС Ubuntu, однако мы рассмотрели не все аргументы, а лишь несколько основных. Другие популярные команды имеют следующие обозначения:
- -b — использование базовой директории для размещения файлов юзера, обычно это папка /home;
- -c — добавление комментария к записи;
- -e — время, через которое созданный юзер будет заблокирован. Заполнять следует в формате ГГГГ-ММ-ДД;
- -f — блокировка юзера сразу после добавления.
С примерами присвоения аргументов вы уже были ознакомлены выше, оформлять все следует так, как указано на скриншотах, используя пробел после введения каждой фразы. Стоит также отметить, что каждая учетная запись доступна для дальнейшего изменения через все ту же консоль. Для этого задействуйте команду , вставив между usermod и user (имя пользователя) необходимые аргументы со значениями. Не относится это только к изменению пароля, он заменяется через , где 12345 — новый пароль.
Способ 2: Меню «Параметры»
Далеко не всем удобно задействовать «Терминал» и разбираться во всех этих аргументах, командах, к тому же, это не всегда и требуется. Поэтому мы решили показать и более простой, однако менее гибкий метод добавления нового юзера через графический интерфейс.
- Откройте меню и через поиск отыщите «Параметры».
На панели снизу нажмите на «Сведения о системе».
Перейдите в категорию «Пользователи».
Для дальнейшего редактирования потребуется разблокировка, поэтому кликните на соответствующую кнопку.
Укажите свой пароль и щелкните на «Подтвердить».
Теперь активируется кнопка «Добавить пользователя».
Первоочередно заполните основную форму, указав тип записи, полное имя, название домашней папки и пароль.
Далее отобразится «Добавить», куда и следует нажать левой кнопкой мыши.
Перед выходом обязательно сверьте всю введенную информацию. После запуска операционной системы юзер сможет войти в нее под своим паролем, если он был установлен.
Приведенные выше два варианта работы с учетными записями помогут правильно настроить группы в операционной системе и выставить каждому юзеру свои привилегии. Что касается удаления ненужной записи, производится она через то же меню «Параметры» либо командой .
Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.
Управление аккаунтами пользователей
Обычные и системные аккаунты
Имя пользователя (Username)Пароль:UID:GID:Поле комментариев (Comment field):Каталог (Directory):Оболочка (Shell):/sbin/nologinПример содержимого /etc/shadow.
Следующие поля определены в /etc/shadow:Имя для входа:Зашифрованный пароль:Дни с 1 января 1970 года, когда пароль последний раз изменялся:За несколько дней до того, как пароль может быть изменен:Дни, после которых пароль должен быть изменен:За несколько дней до истечения срока действия пароля пользователь получает предупреждение:Через несколько дней после истечения срока действия пароля эта учетная запись отключена:Дни с 1 января 1970 года эта учетная запись отключена:Зарезервированное поле, которое когда-то было добавлено «для будущего использования»:passwd chage
Изменение файлов конфигурации
vipwvipw -svigrПриятно знать, что vipw и vigr существуют, но лучше не использовать эти утилиты или что-либо еще, что напрямую открывает файлы конфигурации пользователя и группы. Вместо этого используйте такие инструменты, как useradd и groupmod.
Файлы конфигурации для управления пользователями по умолчанию
Список некоторых наиболее важных свойств, которые можно установить в /etc/login.defs:MOTD_FILE:ENV_PATH:PASS_MAX_DAYSPASS_MIN_DAYSPASS_WARN_AGEUID_MIN:CREATE_HOME:USERGROUPS_ENAB:
Создание пользовательской среды
Для создания пользовательской среды несколько файлов играют роль:
- /etc/profile: используется для настроек по умолчанию для всех пользователей при запуске оболочки входа;
- /etc/bashrc: используется для определения значений по умолчанию для всех пользователей при запуске подоболочки;
- ~/.profile: специальные настройки для одного пользователя, применяемые при запуске оболочки входа;
- ~/.bashrc: специальные настройки для одного пользователя, применяемые при запуске подоболочки.
В этом примере вы применяете общие решения для создания учетных записей пользователей.vim /etc/login.defsCREATE_HOMEUSERGROUPS_ENABcd /etc/skelmkdir Picturesmkdir Documentsexport EDITOR=/usr/bin/vimuseradd lindaid lindapasswd lindapasswd -n 30 -w 3 -x 90 linda-x 90-w 3-n 30for i in lisa lori bob; do useradd $i; donegrep lori /etc/passwd /etc/shadow/ etc/group
База данных пользователей
Информация о пользователях хранится в открытом виде в файле : каждая строка в нём представляет собой набор из семи полей, описывающих аккаунт.
account:password:UID:GID:GECOS:directory:shell
По порядку:
— имя пользователя. Это поле не может быть пустым. Применяются стандартные для *NIX правила именования.
— пароль пользователя
Важно: Файл доступен на чтение для всех пользователей в системе, поэтому хранить в нём пароли (в виде хэш-сумм или как-то иначе) небезопасно. Вместо этого в Arch Linux используются : поле содержит всего лишь символ , а хэшированный пароль хранится в файле , доступ к которому ограничен
По этой причине менять пароли лучше командой passwd.
— численное значение идентификатора пользователя. В Arch Linux нумерация обычных пользователей (отличных от root) начинается с UID 1000.
— численное значение идентификатора основной группы пользователя. Идентификаторы групп можно найти в файле .
— необязательное поле, носящее информативный характер; обычно содержит настоящее имя пользователя, но может также использоваться службами вроде finger и изменяться командой . Поскольку поле необязательное, его можно оставить пустым.
— используется командой входа для задания переменной окружения . Некоторые службы, для которых создаются специальные пользователи, используют для этого корневой каталог , но обычные пользователи чаще всего хранят домашний каталог в разделе .
— командная оболочка пользователя. Это поле является необязательным, и если в нём ничего не указано, то используется оболочка .
Пример:
jack:x:1001:1003:Jack Smith,some comment here,,:/home/jack:/bin/bash
Смысл строки следующий: пользователь , пароль хранится в , идентификатор пользователя — 1001, идентификатор его основной группы 1003. Полное имя — Jack Smith, также имеется некоторый комментарий. Домашний каталог , используемая командная оболочка — Bash.
Команда pwck проверяет корректность базы данных. При этом она может отстортировать список пользоватей по идентификаторам групп, что бывает полезно при сравнении:
# pwck -s
Важно: Arch Linux при обновлении пакетов создаёт резервные файлы с суффиксом .pacnew. За исключением случая, когда pacman выводит сообщение с требованием что-то предпринять, при появлении файла базы данных с таким суффиксом его необходимо удалить
Добавление новых пользователей и групп должно производиться только утилитой или сценариями установки пакетов.
Права и владельцы
- В операционной системе UNIX были сформулированы некоторые общие идеи и принципы, которые оказали в дальнейшем сильное влияние на её архитектуру, пользовательский интерфейс, культуру и развитие. В частности, один из основополагающих принципов выражается мантрой «всё есть файл», которую часто называют определяющим пунктом UNIX в целом.
- Суть данного принципа заключается в создании унифицированного способа доступа к широкому диапазону ресурсов ввода/вывода: к документам, каталогам, жёстким дискам, дискам CD-ROM, модемам, клавиатурам, принтерам, мониторам, терминалам и даже межпроцессным и сетевым взаимодействиям. Цель — предоставление универсальной абстракции для каждого из этих объектов, названных отцами-оснвоателями UNIX общим термином «файл». Поскольку доступ к файлу осуществляется с помощью одного и того же API, стало возможно использовать одинаковый набор базовых команд для чтения и записи таких разнородных устройств, как диск, клавиатура, документ или сетевой интерфейс.
- Абстракция файла, существующая в операционной системе UNIX и совместимых с ней системах, является основополагающей и всеобъемлющей. Любая системная служба и интерфейс устройства теперь могут реализовываться так, чтобы предоставлять другим приложениям метафору файла или файловой системы. Это открывает новые способы их использования и значительно расширяет возможности существующих приложений — простые инструменты, разработанные для решения узких задач, теперь, вооружившись абстракцией файла UNIX, могут использоваться совершенно по-новому. Небольшая утилита вроде cat, предназначенная для считываения одного или нескольких файлов и вывода их содержимого на стандартный поток вывода, теперь может выполнять чтение с устройств ввода-вывода с помощью специальных файлов устройств, как правило расположенных в каталоге . С другой стороны, во многих системах запись и проигрываение звука теперь выполняется всего лишь командами «» и «» соответственно.
В GNU/Linux каждый файл принадлежит какому-то пользователю и группе. Существует три типа прав доступа — чтение, запись и исполнение. Права доступа задаются по отдельности для владельца-пользователя, владельца-группы, и для прочих пользователей, которые не входят в первые две категории. Владельцев файла и права доступа можно узнать с помощью «длинного» формата команды ls:
$ ls -l /boot/
total 13740 drwxr-xr-x 2 root root 4096 Jan 12 00:33 grub -rw-r--r-- 1 root root 8570335 Jan 12 00:33 initramfs-linux-fallback.img -rw-r--r-- 1 root root 1821573 Jan 12 00:31 initramfs-linux.img -rw-r--r-- 1 root root 1457315 Jan 8 08:19 System.map26 -rw-r--r-- 1 root root 2209920 Jan 8 08:19 vmlinuz-linux
Первая колонка содержит права доступа к файлу (например, правами файла являются ). Третья и четвёртая колонки содержат соответственно пользователя и группу, которым принадлежит файл. В этом примере все файлы принадлежат пользователю root и группе root.
$ ls -l /media/
total 16 drwxrwx--- 1 root vboxsf 16384 Jan 29 11:02 sf_Shared
В этом примере каталог принадлежит пользователю root и группе vboxsf. Владельца и права доступа можно также определить утилитой stat.
Пользователь-владелец:
$ stat -c %U /media/sf_Shared/
root
Группа-владелец:
$ stat -c %G /media/sf_Shared/
vboxsf
Права доступа:
$ stat -c %A /media/sf_Shared/
drwxrwx---
Права доступа отображаются тремя группами символов, которые являются правами соответственно пользователя, группы и всех остальных. Например, строка говорит о том, что владелец файла имеет права на чтение и запись, но не на выполнение (), а пользователи из группы-владельца и прочие пользователи имеют доступ только на чтение ( и ). С другой стороны, строка говорит о том, что у пользователя и группы права на чтение, запись и исполнение ( и ), а все остальные доступа к файлу не имеют вовсе (). Первый символ в строке означает тип файла.
Вывести список всех файлов, принадлежащих пользователю или группе, можно с помощью утилиты find:
# find / -group имя_группы
# find / -group номер_группы
# find / -user имя_пользователя
Изменить владельцев файла можно командой chown, а права доступа меняются командой chmod:
Создание пользователя в Linux
Вся информация о пользователях находится в файле /etc/passwd. Мы могли бы создать пользователя linux просто добавив его туда, но так делать не следует, поскольку для этой задачи существуют специальные утилиты. Одна из таких утилит, это useradd. Рассмотрим ее подробнее.
Команда useradd
Это довольно простая команда, которая есть во всех дистрибутивах Linux. Она позволяет зарегистрировать нового пользователя или изменить информацию об уже имеющемся. Во время создания можно даже создать домашний каталог пользователя и скопировать в него системные файлы. Рассмотрим синтаксис команды:
$ useradd опции имя_пользователя
Все довольно просто, дальше нам нужно рассмотреть основные опции команды, с помощью которых вы будете настраивать нового пользователя:
- -b — базовый каталог для размещения домашнего каталога пользователя, по умолчанию /home;
- -c — комментарий к учетной записи;
- -d — домашний каталог, в котором будут размещаться файлы пользователя;
- -e — дата, когда учетная запись пользователя будет заблокирована, в формате ГГГГ-ММ-ДД;
- -f — заблокировать учетную запись сразу после создания;
- -g — основная группа пользователя;
- -G — список дополнительных групп;
- -k — каталог с шаблонами конфигурационных файлов;
- -l — не сохранять информацию о входах пользователя в lastlog и faillog;
- -m — создавать домашний каталог пользователя, если он не существует;
- -M — не создавать домашнюю папку;
- -N — не создавать группу с именем пользователя;
- -o — разрешить создание пользователя linux с неуникальным идентификатором UID;
- -p — задать пароль пользователя;
- -r — создать системного пользователя, не имеет оболочки входа, без домашней директории и с идентификатором до SYS_UID_MAX;
- -s — командная оболочка для пользователя;
- -u — идентификатор для пользователя;
- -D — отобразить параметры, которые используются по умолчанию для создания пользователя. Если вместе с этой опцией задать еще какой-либо параметр, то его значение по умолчанию будет переопределено.
Теперь, когда вы знаете основные необходимые нам параметры утилиты мы можем перейти к разбору того, как выполняется создание нового пользователя linux. Сначала давайте посмотрим какие параметры будут применены для пользователя по умолчанию:
Как видите, по умолчанию домашний каталог пользователя будет создан в /home и будет использоваться оболочка /bin/sh. Теперь создадим минимального пользователя с минимальными настройками:
Был создан самый простой пользователь, без оболочки и пароля, а также без групп. Теперь немного усложним задачу и создадим пользователя с паролем и оболочкой /bin/bash:
Для того чтобы получать доступ к системным ресурсам пользователю нужно быть участником групп, у которых есть доступ к этим ресурсам. Дополнительные группы пользователя задаются с помощью параметра -G. Например, разрешим пользователю читать логи, использовать cdrom и пользоваться sudo:
Также, можно установить дату, когда аккаунт пользователя будет отключен автоматически, это может быть полезно для пользователей, которые будут работать временно:
Некоторых пользователей интересует создание пользователя с правами root linux, это очень просто делается с помощью useradd, если комбинировать правильные опции. Нам всего лишь нужно разрешить создавать пользователя с неуникальным uid, установить идентификатор в 0 и идентификатор основной группы тоже в 0. Команда будет выглядеть вот так:
Пожалуй, это все основные примеры как добавить пользователя linux. Дальше нам осталось взглянуть только на работу в графическом интерфейсе.
Создание нового пользователя linux в GUI
Затем откройте «Пользователи»:
Поскольку утилита запущена от имени обычного пользователя вы ничего не можете сделать. Поэтому нажмите кнопку «Разблокировать»:
Только после этого используйте кнопку со знаком плюс для создания нового пользователя Linux:
В открывшемся окне нужно заполнить все поля. Но тут намного больше ограничений, чем в методе через терминал. Вы не можете задать слишком простой пароль, а также нельзя настроить группы. Можно только указать будет ли пользователь включен в группу wheel с помощью выбора типа пользователя — администратор или обычный:
После этого создание пользователя linux завершено, новый пользователь появится в списке.
Обзор
Под пользователем понимается любой, кто работает с компьютером. Как правило, для каждого пользователя в системе создаётся отдельный аккаунт, которому присваивается специальное имя. В качестве имени пользователя можно использовать как реальные имена, вроде Mary или Bill, так и псевдонимы — Dragonlady, Pirate и т.п. С помощью имени пользователь получает доступ к своему аккаунту и, в конечном счёте, к системе. Некоторые системные службы запускаются либо привилегированными аккаунтами, либо строго определёнными аккаунтами пользователей.
Механизм пользователей был разработан по соображениям безопасности, для ограничения доступа к различным частям системы. Суперпользователь (root) имеет полный доступ к операционной системе и её настройкам. Этот аккаунт используется только для целей системного администрирования; обычные пользователи могут временно повысить уровень своих прав командами su и sudo.
Один человек может создать несколько аккаунтов с разными именами. Некоторые специфические имена, вроде того же «root», зарезервированы и запрещены к использованию.
Пользователи часто объединятся в «группы». Добавление пользователя в определённую группу обычно даёт ему дополнительные права, связанные с этой группой.
Примечание: Если у вас нет опыта работы с аккаунтами и правами, то используйте указанные в статье инструменты с осторожностью. Не пытайтесь что-либо сделать с существующими аккаутами пользователей, за исключением разве что своего собственного.