"Не вдалося створити користувача" через помилку регулярного вираження


18

Я запускаю 32-розрядний робочий стіл Ubuntu 12.10. В даний час у мене є лише користувач, адміністратор типу. Я хотів би створити іншого користувача адміністратора, але я постійно отримую таку помилку:

Не вдалося створити користувача

GDBus.Error: org.freedesktop.Accounts.Error.Failed: запуск "/ usr / sbin / adduser" не вдалося: / usr / sbin / adduser повернув помилку (1): adduser: Будь ласка, введіть ім'я користувача, що відповідає регулярному виразу, налаштованому через змінна конфігурація NAME_REGEX [_SYSTEM]. Використовуйте опцію `--force-badname ', щоб зняти цей чек або переконфігурувати NAME_REGEX.

Будь-яка пропозиція цінується.


1
Чи можете ви відредагувати та розповісти конкретніше, що ви зробили, щоб отримати цю помилку. Це була команда?
Зільвадор

Відповіді:


14

Зазвичай ви отримуєте це повідомлення, якщо ви намагаєтесь створити користувача з іменем, яке містить символи, які вважаються неприйнятними згідно з вашим файлом NAME_REGEX. Ви можете спробувати знову змінити ім'я користувача за допомогою GUI або ви можете розслабити чек, використовуючи командний рядок із наступною командою.

sudo adduser --force-badname <username>

а потім, якщо ви хочете додати користувача до групи sudo, виконайте наступну команду.

sudo adduser <username> sudo

1
-1, я б не рекомендував це робити. Обмеження, мабуть, діє з причини.
nyuszika7h

1
@ nyuszika7h Цікаво, як це могло вплинути на систему? Тут я просто шукаю приклад, оскільки я створюю користувача для свого поштового облікового запису.
sitilge

10

Введене ім’я користувача містить неправильні символи. Спробуйте ввести просте ім’я користувача, що містить лише малі англійські літери - danielце добре, &&Daniel <*> Johnson##не так добре.


Це правильна відповідь. Було б корисно, якби повідомлення про помилку показало фактичний регулярний вимір замість назви змінної ...
Gabe Hiemstra

7

У системах Debian регекс, що визначає прийнятні імена користувачів, знаходиться в /etc/adduser.conf.

Типовий регулярний вираз (знайдений у моїй системі):

NAME_REGEX="^[a-z][-a-z0-9_]*\$"

Я не хочу занадто далеко відстежувати тему з розбиттям регулярних виразів, але символ caret ^ вказує, що початковий символ імені користувача повинен знаходитись між малим і низьким регістром z. Інші символи можуть бути малими буквами az, 0-9, дефісом або підкресленням. Як згадувалося в інших відповідях, ви можете скасувати цю перевірку, якщо вам подобається. За замовчуванням регулярні вирази залежать від регістру.


2

Я зіткнувся з тією ж проблемою - і я вирішив її - коли писав

# adduser --home /ali ali

Я отримав помилку

dduser --home /Ali Ali
adduser: Please enter a username matching the regular expression configured
via the NAME_REGEX configuration variable.  Use the `--force-badname'
option to relax this check or reconfigure NAME_REGEX.

Я вирішив це лише видаливши великі літери, як показано нижче

# adduser --home /ali ali
Adding user `ali' ...
Adding new group `ali' (1001) ...
Adding new user `ali' (1001) with group `ali' ...
Creating home directory `/ali' ...
Copying files from `/etc/skel' ...
passwd:     
passwd: password updated successfully

1
Ця відповідь є дублікатом цієї наявної відповіді: askubuntu.com/questions/232742/…
karel

0

Відповідь CoalaWeb правильна, але якщо ви не хочете створити користувацьку групу для цього користувача ... ви можете просто скористатися наступною командою для створення користувача:

sudo useradd <username>

приклад:

sudo useradd josh

... тоді правильно сказано CoalaWeb, виконайте команду:

sudo adduser <username> <groupname>

приклад:

sudo adduser josh sudo

... це дасть новому користувачеві права на "джош" судо (права суперкористувача (ака адміністратора))

... Я також додав би групу під назвою "adm".

сподіваюся, що це комусь допоможе


ім'я групи перед іменем користувача. Команди повинні бути sudo, adduser <groupname> <username>наприклад:sudo adduser sudo josh
SherylHohman
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.