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

Содержание
  1. Три способа создать учетную запись пользователя в Linux
  2. Как создать учетные записи пользователей в Linux с помощью команды useradd?
  3. Как создать учетные записи пользователей в Linux с помощью команды adduser?
  4. Как создать массовые учетные записи пользователей в Linux с помощью команды newusers?
  5. Как создать несколько учетных записей пользователей в Linux с помощью команды useradd скриптом оболочки?
  6. Создание, редактирование и удаление пользователей в Linux
  7. Создание
  8. Ключи (опции)
  9. Создание пользователя в Linux. Команды adduser и useradd
  10. В чем отличия adduser и useradd?
  11. Команда adduser
  12. Создание пользователя командой adduser
  13. Команда useradd
  14. Синтаксис команды useradd
  15. Создание нового пользователя
  16. Создание нового пользователя с домашней директорией в /home
  17. Создание нового пользователя с произвольной домашней директорией
  18. Создание нового пользователя с произвольными UID, GID
  19. Создание пользователя с указанием оболочки (shell)
  20. Создать пользователя и добавить его в группы
  21. Заключение
  22. BASH создание пользователя из скрипта

Три способа создать учетную запись пользователя в Linux

Создание учетной записи пользователя – это одна из основных задач администратора Linux, которую все знают.

Зачем мы пишем статью об этом?

Мы собираемся показать вам что-то особенное в этой статье.

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

Это поможет вам выполнить вашу задачу более эффективно и быстро.

Мы должны выполнять эту задачу всякий раз, когда новый сотрудник присоединяется к нашей организации.

Но вам не нужно создавать учетную запись для нового сотрудника, если система Linux интегрирована с AD для единого входа (SSO).

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

Всем известно, что пользовательская информация находится в файле /etc/passwd.

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

Когда мы создаем нового пользователя, новые данные пользователя будут добавлены в этот файл.

При создании новых пользователей следующие четыре файла будут изменены.

  • /etc/passwd: информация о пользователе будет обновлена ​​в этом файле.
  • /etc/shadow: информация о пароле пользователя будет обновлена ​​в этом файле.
  • /etc/group: информация о группе будет обновлена ​​для нового пользователя в этом файле.
  • /etc/gshadow: информация о пароле группы будет обновлена ​​для нового пользователя в файле.

Это можно сделать с помощью трех команд.

  • useradd: создайте нового пользователя или обновите информацию о новом пользователе по умолчанию.
  • adduser: создайте нового пользователя со всеми параметрами по умолчанию или обновите информацию о новом пользователе.
  • newusers: обновляйте и создавайте новых пользователей в пакетном режиме.

Как создать учетные записи пользователей в Linux с помощью команды useradd?

Команда useradd создает новую учетную запись пользователя, используя значения по умолчанию, которые были указаны в выходных данных команды useradd -D.

Команда useradd обновит системные файлы, а также создаст домашний каталог нового пользователя и скопирует исходные файлы.

Если вы создаете новую учетную запись, вы должны установить пароль для этой учетной записи. Используйте команду passwd для установки пароля.

Как создать учетные записи пользователей в Linux с помощью команды adduser?

adduser не является стандартной командой Linux.

Она создает нового пользователя со всеми параметрами по умолчанию, которые недоступны в команде useradd.

Тем не менее, она использует команду useradd в фоновом режиме для выполнения этой задачи.

Кроме того, она добавляет пароль для пользователя при создании.

Как создать массовые учетные записи пользователей в Linux с помощью команды newusers?

Команда newusers читает данный файл и использует эту информацию для обновления набора существующих пользователей или для создания новых.

Читайте также:  Android ios windows 2021

Каждая строка имеет тот же формат, что и стандартный файл паролей.

Перед выполнением этого нам нужно получить последние GID и UID из файла passwd.

Создайте файл с именем user-add.txt и детали должны быть в следующем формате.

Каждая пользовательская строка должна быть в отдельной строке.

Я добавил пять пользователей в файл. Перечислите пользователей с помощью команды cat.

Запустите команду newusers с именем файла, чтобы создать несколько пользователей в системе Linux.

Мы можем дважды подтвердить это, выполнив следующую команду.

Как создать несколько учетных записей пользователей в Linux с помощью команды useradd скриптом оболочки?

Используйте приведенный ниже скрипт, если вы хотите создать несколько пользователей в системе Linux.

Я добавил ниже трех пользователей в файл.

Используйте любую файловую команду, чтобы вывести список пользователей, которые были в файле.

Создайте следующий небольшой скрипт для достижения этой цели.

Установите исполняемое разрешение для файла user-add.sh.

Наконец, запустите скрипт.

Мы можем дважды проверить выполнение, выполнив следующую команду.

Источник

Создание, редактирование и удаление пользователей в Linux

В данной инструкции рассказывается о работе с пользователями Linux через терминал (с применением командной строки).

Создание

* опции не являются обязательными при создании пользователя.

* в данном примере создается учетная запись dmosk.

Для учетной записи стоит сразу создать пароль:

* после ввода, система попросит ввести пароль дважды.

Ключи (опции)

Ключ Описание и примеры
-b Задает базовый каталог для домашнего каталога
useradd dmosk -b /var/home
-c Создает комментарий для описания учетной записи
useradd dmosk -c «Пользователя для управления системой»
-d Полный путь к домашнему каталогу пользователя
useradd dmosk -d /home/newuser
-D Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователей
useradd dmosk -Ds /bin/bash
-e Дата, после которой учетная запись устареет.
useradd dmosk -e 2017-12-31
-f Число дней, после которого учетная запись с устаревшим паролем будет заблокирована
useradd dmosk -f 0
-g Задает основную группу
useradd dmosk -g altternativegroup
-G Задает дополнительные группы
useradd dmosk -G wheel
-k Путь к источнику скелета (файлы с шаблонами для нового пользователя)
useradd dmosk -k /var/skel
-m При создании пользователя создать домашний каталог
useradd dmosk -m
-M Не создавать домашний каталог
useradd dmosk -M
-N Не создавать основную группу с таким же именем, как у пользователя
useradd dmosk -N
-o Разрешает создание учетной записи с повторяющимся UID
useradd dmosk -u 15 -o
-p Задает пароль
useradd dmosk -p pass
-r Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN — SYS_UID_MAX из файла /etc/login.defs)
useradd dmosk -r
-R Каталог, в который выполняется chroot
useradd dmosk -R /var/chroot/home
-s Путь до оболочки командной строки
useradd dmosk -s /bin/csh
-u Задает UID
useradd dmosk -u 666
-U Имя группы будет таким же, как у пользователя
useradd dmosk -U

Актуальный список ключей можно получить командой useradd -h.

Источник

Создание пользователя в Linux. Команды adduser и useradd

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

Для создания пользователей из командной строки обычно используют утилиты adduser или useradd. Рассмотрим, использование данных утилит.

В чем отличия adduser и useradd?

useradd — это низкоуровневая утилита для создания пользователей в Linux.

adduser — представляет собой более простое решение для создания пользователей и по факту является надстройкой над useradd, groupadd и usermod.

Утилита adduser доступна не во всех дистрибутивах Linux. Реализация adduser также может отличаться. Если в дистрибутиве присутствует утилита adduser, то для создания пользователей рекомендуется использовать именно ее.

Команда adduser

Создание пользователя командой adduser

Рассмотрим, как создать обычного пользователя командой adduser

Чтобы создать нового пользователя, выполняем команду adduser и указываем имя пользователя (вместо pupkin укажите имя пользователя, которого вы создаете):

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

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

  • Создается новый пользователь с именем, которое вы указали при выполнении команды.
  • Создается группа с тем же именем.
  • Создается домашний каталог пользователя в директории /home/имяпользователя
  • В домашний каталог копируются файлы из директории /etc/skel

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

Команда 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 список,групп

Заключение

Мы рассмотрели примеры создания нового пользователя в Linux с использованием команд adduser и useradd . Команда adduser более простая и в большинстве случаев рекомендуется использовать именно ее.

Источник

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

Всем здрям, нужен скриптик для создания пользователя, что бы запихнуть его в postinst.

Для начала внимательно читаем man useradd:

-p passwd The encrypted password as returned by crypt(3).

хм,не понял, я же передаю параметр а не достаю его.

Я не понял этой фразы.

Объясняю: ты передаешь в useradd тот пароль, что пользователь ввёл с клавиатуры. Ты же не думаешь, что пользователь введёт уже зашифрованный пароль?

А за это надо руки отрывать. А если в системе есть пользователь ‘abcxuser’? Правильно так:

Это тоже. А если юзер ввёл пустой пароль? Скрипт вылетит с ошибкой. Правильно так:

Здесь тоже нужны кавычки на всякий случай и ‘-eq’ для сравнения чисел:

Ты же не думаешь, что пользователь введёт уже зашифрованный пароль?

Разве useradd воспринимает только шифрованные пароли? это новость. 🙂 век живи век учись. Надо как то привязать mkpasswd или использовать какой то алгоритм для передачи хеша пароля?

postinst.sh: строка 18: [: eq: ожидается использование бинарного оператора

Разве useradd воспринимает только шифрованные пароли? это новость. 🙂

Я же говорю: внимательно читаем ман. А еще четыре звезды.

Надо как то привязать mkpasswd

Значит, $PLINE почему-то пуст.

звезды ничего не значат.

getent passwd $username >/dev/null && echo «$usename already exists!» || adduser $username

нет просто, правильно -eq. 🙂

я сразу не заметил, сорри.

>нет просто, правильно -eq

Там как бы и написано ‘-eq’.

от perl еще не успел отойти, мешанина в голове.

внезапно: создание пользователя из скрипта. Пароль — plaintext’ом. newusers конвертит созданный файлик с юзерами в нужный формат (т.е., шифрует пароли, распихивает данные в /etc/ и т.п.)

Может и прокатит — я просто вытащил строчки из одного своего старого скрипта. Там создавалось несколько пользователей, потом они обрабатывались через newuser в чруте

Ну и набыдлокодил я 🙂

неа не прокатило.

>Как бы теперь шифрованный пароль передавать

А просто создать пользователя без пароля через useradd, а потом вызвать ‘passwd xuser’, чтобы пользователь ввёл пароль, не подходит?

можно конечно, но хотелось сделать через параметры $PASSWD.

Блин, чего казалось бы проще? Делай раз: cоздать юзера без пароля. Делай два: задать только что созданному юзеру пароль.

Задать пароль можно с помощью chpasswd:

Только надо ещё предусмотреть ситуацию, когда в пароле допускается двоеточие.

> Как бы теперь шифрованный пароль передавать, конструкции а-ля md5($passwd) не подходят?

Чем не устраивает первый вариант с newusers?

сильно не разбирался, но чрутнуться в нужную директорию он не смог.

Да не надо паранойи. Чрут тут ещё зачем-то.

use pwgen, Luke! и таки да

а по-поводу первого вопроса:

Да не надо чрут, я ж писал — это пример из моего старого скрипта. Ключевая команда: newusers.

Это аналогично md5pass ?

нет в стандартном наборе убунты 🙁

так поставь, про md5pass ниразу не слышал. mkpasswd есть в default install.

а вообще то ты фигнёй маешся. аналог твоей поделки уже есть в системе и зовётся adduser.

вот кусок моего скрипта для автоматического создания пользователей на сервере:
[quote]
# make pass
PASS=`/usr/bin/pwgen -s1 10` #generate pass(10 symbols)
echo $PASS >$PSWF #файл лежащий хз где и «root:root 600»
echo $PASS >>$PSWF

# make user account
useradd -m $USER -d $HOMEROOT/$USER -s /bin/false
cat $PSWF | passwd $USER 2>/dev/null
[/quote]

Источник

Читайте также:  Windows software digital signature
Оцените статью