Как изменить имя пользователя администратора? Ubuntu сменить пользователя


Как изменить имя пользователя администратора? Ubuntu Linux

Я случайно набрал свое имя неправильно, когда создал учетную запись администратора. Хотя мне удалось изменить имя пользователя на экране входа в систему, я не могу переименовать имя /home/oldusername в /home/newusername . Я пробовал большинство онлайн-уроков, и это не удалось.

Как я могу исправить проблему и изменить папку на newusername и ожидать, что все приложения будут работать по-прежнему?

Войдите в систему с вашим currentusername , откройте терминал и введите:

sudo passwd root

Введите пароль для учетной записи root, затем выйдите из системы, нажмите Ctrl + Alt + F1, чтобы открыть текстовую консоль, войдите в систему как root (имя пользователя: root, пароль: «тот, который вы набрали выше») и запустите:

usermod -l newusername -m -d /home/newusername currentusername exit

Нажмите Ctrl + Alt + F7, чтобы вернуться в графическую консоль и войти в качестве имени newusername .

Чтобы изменить отображаемое имя пользователя (тот, который появляется на экране входа в систему), перейдите в « Настройки системы» -> « Учетные записи пользователей», затем щелкните отображаемое имя в правой части диалогового окна.

Первое простое решение, которое вы можете сделать, – создать нового пользователя с нужным именем пользователя и добавить его в группу администратора: / etc / sudoers

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

# usermod -l new-username old-unername

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

Вам нужно сделать это из режима восстановления.

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

Изменение имен пользователей вызовет неизбежные проблемы. Многие программы будут пытаться читать и записывать данные из старого каталога, которого больше нет. Создание новой учетной записи и копирование по всем старым папкам кажется хорошей идеей. Я считаю, что есть и другие проблемы.

Но это отвечает на вопрос, когда предыдущие комментарии мне не помогли.

Просто войти в систему под именем root может не работать, потому что у моего старого имени пользователя были активные процессы. Поэтому мне понравилось, что другие сказали и перезагрузились в режим восстановления. Но затем я получил сообщение об ошибке, о котором упоминает оригинальный плакат. Как обнаружено здесь, это связано с тем, что диск считывается только в режиме восстановления, поэтому вы должны сделать его чтение-запись.

Краткое описание:

sudo passwd root # assign a password reboot # into recovery mode and log in as root

Удерживайте shift во время загрузки, если ваше меню grub не установлено. Войдите в систему под root и перейдите в оболочку.

mount -o remount,rw / # make the disk writable usermod -l <newname> -d /home/<newname> -m <oldname> passwd -l root # deactivate the root password reboot

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

sudo nano /etc/passwd

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

ubuntu.fliplinux.com

Как переименовать основного пользователя Ubuntu

Переименовать пользователя в Linux достаточно простая задача. Основная идея заключается в том, что в самой системе используется соответствующий пользователю UID - уникальный идентификатор пользователя. Единственное место, в идеале, где указано текущее имя пользователя - это файл /etc/passwd. Можно конечно заняться и напрямую редактированием файла, но гораздо проще воспользоваться стандартными системными утилитами usermod и groupmod. Единственная проблема заключается в том, что если пользователь основной и через него вы пытаетесь получить права пользователя root в системе, да и вообще если есть хотя бы один запущенный от имени основного пользователя процесс, то вы получите сообщение user_name is corrently logged in. Поэтому добавим в систему нового пользователя:

#adduser testuser

Замечание: в случае когда когда требуются права пользователя root, в начале строки указан #, если обычного пользователя %. Для получения прав пользователя root в Ubuntu достаточно добавить sudo перед командой или выполнить:

%sudo -i

Необходимо будет ввести пароль пользователя, на запросы о полном имени и прочую информацию GECOS можно не заполнять.

Далее необходимо дать новому пользователю дополнительные разрешения:

#visudo

В открывшимся окне текстового редактора ввести строку:

testuser ALL=(ALL) ALL

Ctrl-X, затем исправить имя файла на /etc/sudoers и подтвердить перезапись файла Y.

Завершаем сеан текущего пользователя, лучше всего перезагрузиться. Послк, в GDM в окне ввода имени пользователя и пароля нажать Alt-Ctrl-F1. В появившейся текстовой консоли вводим имя пользователя testuser и пароль. Затем для того, чтобы получить права пользователя root:

sudo -i

и вводим пароль пользователя testuser.

Так как в Ubuntu по умолчанию не установлены пакеты с поддержкой кириллицы в консоли, то необходимо:

%export LANG=en

Для того, чтобы можно было прочитать вывод после ввода команд и сообщения о ошибках. Далее вводим:

#usermod -l NEWLOGIN OLDLOGIN

Поменяем имя пользователя. NEWLOGIN, OLDLOGIN - новое и старое имя основного пользователя, соответственно.

Изменим имя первичной группы пользователя:

#groupmod -n NEWGROUPNAME OLDGROUPNAME

Имя OLDGROUPNAME по умолчанию совпадает с именем пользователя, NEWGROUPNAME тоже что и NEWLOGIN

Затем перенесем содержание директории пользователя /home/OLDLOGIN в новую директорию /home/NEWLOGIN:

#usermod -md /home/NEWLOGIN NEWLOGIN

Исправим данный GECOS нового имени пользователя, в большинстве случаев подойдет команда:#usermod -c NEWLOGIN,,,, NEWLOGIN

На данный момент GDM использует старые данные GECOS, поэтому переключаться на него по Alt-Ctrl-F8 бесполезно, только ради интереса. Перезапуск X по Alt-Ctrl-Backspace в Ubuntu по умолчанию не доступно, поэтому переключаемся обратно на консоль Alt-Ctrl-F1 и даем команду (хотя конечно можно обойтись и без перезагрузки всей системы и перезапустить соответствующую службу):

#shutdown -r now

После перезагрузки в GDM будет доступен логин под новым именем учетной записи. Единственной сложность может возникнуть если в файле /etc/fstab монтировались какие-либо разделы с использованием путей /home/OLDLOGIN/*, для решения проблемы достаточно будет их исправить.

noteasyway.blogspot.com

Как изменить свое имя пользователя? Ubuntu Linux

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

Как это изменить (включая имя моего домашнего каталога и имя в терминале) без потери настроек для приложений? Как сохранить разрешения и ключи для различной аутентификации (например, электронная почта, SSH, GPG и т. Д.)? Какие настройки могут потеряться, если я изменил свое имя пользователя?

Unix-подобные операционные системы отделяют имя пользователя от идентификатора пользователя, поэтому вы можете безопасно изменить имя, не влияя на идентификатор. Все разрешения, файлы и т. Д. Привязаны к вашей личности (uid), а не к вашему имени пользователя.

Чтобы управлять всеми аспектами пользовательской базы данных, вы используете инструмент usermod .

Чтобы изменить имя пользователя (возможно, лучше сделать это, не войдя в систему):

sudo usermod -l newUsername oldUsername

Это, однако, не переименовывает домашнюю папку.

Чтобы изменить домашнюю папку, используйте

usermod -d /home/newHomeDir -m newUsername

после изменения имени пользователя.

Например, вы можете выйти на консоль ( Ctrl + Alt + F1 ) и sudo su - стать истинным root (в отличие от sudo -s , где $ HOME все еще / home / yourname.) Возможно, у вас также есть для того чтобы сначала убить некоторые еще запущенные процессы от этого пользователя. Для этого введите ps -u username , найдите соответствующий PID и убейте их, kill PID-number .

Обновление: как упоминалось выше, некоторые файлы могут ссылаться на ваш старый домашний каталог. Вы можете либо сохранить символическую ссылку для обратной совместимости, например ln -s /home/newname /home/oldname либо вы можете изменить содержимое файла с помощью sed -i.bak 's/*oldname*/*newname*/g' *list of files* Создает резервную копию для каждого файла с расширением .bak.

Некоторая дополнительная информация для не столь опытных пользователей, как я: Поскольку у меня есть только одна учетная запись пользователя (администратор), она не позволит мне изменить имя пользователя («вы уже вошли в систему») – это ответ в TTY1 ( Ctrl + Alt + F1 ). Чтобы обойти это:

  1. Войдите в систему со старыми учетными данными и добавьте нового пользователя, например «временный» в TTY1:

    sudo adduser temporary

    установите пароль.

  2. Разрешить временному пользователю запускать sudo, добавив пользователя в группу sudo:

    sudo adduser temporary sudo
  3. Выйдите из командной exit .
  4. Вернитесь к tty1: Войдите в систему с помощью «временной» учетной записи пользователя и пароля. Измените свое имя пользователя и папку, как указано выше. exit (пока вы не получите приглашение для входа)
  5. Вернитесь к TTY7 ( Ctrl + Alt + F7 ), чтобы войти на экран графического интерфейса пользователя / обычного рабочего стола и посмотреть, работает ли это.
  6. Удалить временного пользователя и папку:

    sudo deluser temporary sudo rm -r /home/temporary

Чтобы собрать все это вместе:

  1. На начальном экране нажмите Ctrl + Alt + F1 .
  2. Войдите в систему, используя свое имя пользователя и пароль.
  3. Задайте пароль для учетной записи «root».

    sudo passwd root
  4. Выйти.

    exit
  5. Войдите в систему, используя учетную запись «root» и пароль, который вы ранее установили.

  6. Измените имя пользователя и домашнюю папку на новое имя, которое вы хотите.

    usermod -l <newname> -d /home/<newname> -m <oldname>
  7. Измените имя группы на новое имя, которое вы хотите.

    groupmod -n <newgroup> <oldgroup>
  8. Заблокируйте учетную запись «root».

    passwd -l root
  9. Если вы используете ecryptfs (зашифрованный домашний каталог). Установите свой зашифрованный каталог с помощью ecryptfs-recover-private и отредактируйте <mountpoint>/.ecryptfs/Private.mnt чтобы отразить ваш новый домашний каталог.

  10. Выйти.

    exit
  11. Нажмите Ctrl + Alt + F7 .

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

Перезагрузитесь в режиме восстановления и перейдите в оболочку корневого приглашения («Перейти к командной строке оболочки»)

Сначала перемонтируйте корень

mount -o remount,rw /

Чтобы изменить имя пользователя и имя домашней папки,

usermod -l <newname> -d /home/<newname> -m <oldname>

Для имени группы,

groupmod -n <newgroup> <oldgroup>

(Использование Ubuntu 13.10, 14.04, 16.04) Нажмите на значок «Системные настройки». Затем нажмите «Учетные записи пользователей». Ваша учетная запись администратора должна отображаться. Нажмите кнопку «Разблокировать». Введите свой пароль пользователя в соответствии с запросом, чтобы разрешить изменения в вашей учетной записи. После разблокировки вы можете нажать на свое старое имя пользователя, которое вы хотите изменить, и ввести новое имя пользователя для его замены. Когда вы набрали новое имя, нажмите кнопку «Заблокировать», чтобы сделать изменение постоянным. Перезапустите Ubuntu.

При получении usermod: can't change /etc/password просто выполните следующие команды:

В консоли консоли восстановления root:

mount -o remount,rw /

Затем повторите попытку:

usermod -l <newname> -d /home/<newname> -m <oldname>

когда вы делаете usermod -l <newname> -d /home/<newname> -m <oldname> вы получите useradd: can't change /etc/passwd сообщение об ошибке useradd: can't change /etc/passwd чтобы избежать этого, просто добавьте sudo -- к команде выше

sudo -- usermod -l <newname> -d /home/<newname> -m <oldname>

а также

sudo -- groupmod -n <newgroup> <oldgroup>

Поскольку не все ПК имеют приложение usermod , вы можете сделать это вручную. Начиная с root open /etc/passwd для редактирования:

sudo vim /etc/passwd

и измените имя пользователя в начале строки:

user:x:500:501:username:home/user:/bin/bash

чтобы:

newuser:x:500:501:username:home/user:/bin/bash

то если вы работаете с root, просто войдите в систему, и если вы вошли в систему для user , выхода из системы и relogin.

ubuntu.fliplinux.com

Смена пароля в Linux | LinuxBlog

Операционная система Linux проектировалась как много пользовательская и  очень безопасная система. У каждого пользователя есть свой пароль , права доступа и т.д. И конечно же все это на администрировать, если вы не единственный пользователь данной системы . В большинстве случаев смена пароля выполняется с помощью утилиты passwd. Но для начало мы немного разберемся с пользователями и паролями.

Список пользователей в Linux хранится в файле /etc/passwd, вы можете открыть его и посмотреть:

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

Тут мы видим пользователя root с домашней папкой /root  и шелом /bin/bash . Пароли хранятся в  в отдельный файл — /etc/shadow :

test:$6$EZzr58RF$om6xDW9koDCeZ0eMWToAICRCff0O472ITYeaD18LfB7iYdOnAuqHFU2WnntvH/LSzlESlos530ciI7vDGGey61:17568:0:99999:7:::
  • Пароль не храниться в открытом в виде, он зашифрован и храниться только его хеш.

Ну а теперь перейдем к самой утилите passwd , синтаксис ее такой :

$ passwd опции пользователь

Рассмотрим опции, чтобы лучше ориентироваться в использовании утилиты:

-d — удалить пароль пользователя, после этого он не сможет войти.-e — сделать пароль устаревшим.-i — через сколько дней после того, как пароль устарел отключить аккаунт если пользователь не сменил пароль.-l — запретить пользователю входить в систему.-n — минимальное количество дней между сменами пароля.-S — отобразить информацию об пользователе.-u — отменяет действие параметра -l .-x — максимальное количество дней, пока пароль можно использовать.-w — количество дней, после которых нужно предупреждать пользователя, о том, что надо сменить пароль.

КАК СМЕНИТЬ ПАРОЛЬ ?

Для смены своего пароля вам надо набрать всего лишь одну команду и вести новый пароль :

passwd test

Enter new UNIX password:Retype new UNIX password:passwd: password updated successfully

И не пугайтесь если вы не видите в консоли пароль который вводите, это сделано в целях безопасности. Ни каких звездочек )

КАК СМЕНИТЬ ПАРОЛЬ ДРУГОГО ПОЛЬЗОВАТЕЛЯ ?

Тут все немного сложней, для смены пароля другова пользователя у вас должны быть права суперпользователя(root). А во всем остальном все также :

sudo passwd test1

Enter new UNIX password:Retype new UNIX password:passwd: password updated successfully

КАК ЗАСТАВИТЬ ПОЛЬЗОВАТЕЛЯ ПОМЕНЯТЬ ПАРОЛЬ ?

В безопасности  пароли играют большую роль! Думаю вы все знаете что их надо периодически меня. Но пользователи такие ленивые, надо их это заставить сделать ) Для этого используется опция -x:

passwd -x30 test

root@root:/etc# passwd -x30 test  //менять пароль каждые 30 дней.passwd: password expiry information changed.

Посмотреть информацию о пользователе можно опцией -S :

passwd -S test

test P 02/06/2018 0 30 7 -1
  • Первое поле — имя пользователя
  • Второе поле показывает одно из значений: P — пароль установлен, L — пользователь заблокирован, NP — пароля нет.
  • 02/06/2018 — дата последнего изменения пароля.
  • 0 — минимальное время до смены пароля.
  • 30 — максимальное время действия пароля.
  • 7 — за сколько дней нужно предупреждать об истечении срока действия пароля.
  • -1 — через сколько дней пароль нужно деактивировать.

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

 passwd -w 3 test

Если он этого не сделает в течении пяти дней, аккаунт нужно отключить:

 passwd -i 3 test

Пароль можно менять не чаще, чем раз в 10 дней:

 passwd -n 10 test

Вот и все наука, пользуйтесь.

Denian / Ubuntu. На других Linux дистрибутивах установка может отличаться.

 

 

 

 

 

 

Возможно эти статьи будут вам интересны.

xn--90aeniddllys.xn--p1ai

Как удалить пользователя в Linux

В этой инструкции мы рассмотрим как удалить пользователя Linux вместе с его данными и домашним каталогом.

Если вы системный администратор в крупной компании то, скорее всего, удаление пользователей linux для вас довольно частая задача. После того как аккаунт становится ненужным или пользователь ушел из организации, его аккаунт нужно удалить, чтобы не оставлять дыр в безопасности.

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

Перед тем как переходить к действиям в реальной среде нужно немного попрактиковаться, давайте создадим два пользователя losst и losst1, вместе с домашними каталогами, а затем уже будем их удалять:

 adduser losst$ passwd losst

adduser losst1$ passwd losst1

Здесь команда adduser используется для создания учетной записи пользователя, а passwd для создания пароля.

Содержание статьи:

Удаление пользователя Linux в терминале

Давайте рассмотрим, как удалить пользователя Linux в терминале. Для этого используется команда - deluser в debian и производных системах, а в RedHat - userdel. Рассмотрим подробнее эти две утилиты.

Описание deluser

Синтаксис команды deluser очень простой:

$ deluser параметры пользователь

Настройки команды deluser находятся в файле /etc/deluser.conf, среди прочих настроек там указанно что нужно делать с домашней папой и файлами пользователя.

Вы можете посмотреть и изменить эти настройки выполнив команду:

vi /etc/deluser.conf

Рассмотрим подробнее эти настройки:

  • REMOVE_HOME - удалять домашний каталог пользователя
  • REMOVE_ALL_FILES - удалить все файлы пользователя
  • BACKUP - выполнять резервное копирование файлов пользователя
  • BACKUP_TO - папка для резервного копирования
  • ONLY_IF_EMPTY - удалить группу пользователя если она пуста.

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

Поддерживаются такие параметры, они аналогичны настройкам, но тут больше вариантов:

  • --system - удалять только если это системный пользователь
  • --backup - делать резервную копию файлов пользователя
  • --backup-to - папка для резервных копий
  • --remove-home - удалять домашнюю папку
  • --remove-all-files - удалять все файлы пользователя в файловой системе

Описание userdel

Утилита userdel работает немного по-другому, файла настроек здесь нет, но есть опции, с помощью которых можно сообщить утилите что нужно сделать. Синтаксис аналогичный:

$ userdel параметры пользователь

  • -f, --force - принудительное удаление, даже если пользователь еще залогинен
  • -r, --remove - удалить домашнюю директорию пользователя и его файлы в системе.
  • -Z - удалить все SELinux объекты для этого пользователя.

 

 

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

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

Для блокировки учетной записи пользователя можно использовать утилиту passwd. Это запретит пользователю доступ к системе и предотвратит запуск новых процессов:

Выполните команду passwd с параметром --lock:

 passwd --lock losst

passwd: информация об истечении срока действия пароля изменена.

Уничтожить все запущенные процессы пользователя

Теперь давайте найдем все запущенные от имени пользователя процессы и завершим их.

Найдем процессы с помощью pgrep:

pgrep -u losst

1468414735

Посмотреть подробнее, что это за процессы можно передав pid, каждого из них в команду ps, вот так:

ps -f --pid $(pgrep -u losst)

UID PID PPID C STIME TTY STAT TIME CMDlosst 14684 14676 0 22:15 pts/2 S 0:00 -bashlosst 14735 14684 0 22:15 pts/2 S+ 0:00 vi text

Теперь, когда вы убедились, что там нет ничего важного, можно уничтожить все процессы с помощью команды killall:

Killall -9 -u losst

Опция -9 говорит программе, что нужно отправить этим процессам сигнал завершения SIGKILL, а -u задает имя пользователя.

В основанных на Red Hat системах, для использования killall необходимо будет установить пакет psmisc:

sudo yum install psmisc

Резервное копирование данных пользователя

Это вовсе не обязательно, но для серьезного проекта не будет лишним создать резервную копию файлов пользователя, особенно если там могли быть важные файлы. Для этого можно использовать, например, утилиту tar:

tar jcvf /user-backups/losst-backup.tar.bz2 /home/losst

Удаление учетной записи пользователя

Теперь, когда все подготовлено, начинаем удаление пользователя linux. На всякий случай укажем явно, что нужно удалять файлы пользователя и домашнюю директорию. Для Debian:

deluser --remove-home losst

Для Red Hat:

 userdel --remove losst

Если нужно удалить все файлы, принадлежащие пользователю в системе используйте опцию --remove-all-files, только будьте с ней осторожны, так и важные файлы можно затереть:

deluser --remove-all-files losst

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

Удаление пользователя в Ubuntu

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

Откройте Параметры системы:

Откройте пункт Учетные записи:

Как видите, сейчас все действия недоступны, и нарисованы серым цветом. Чтобы их активировать нажмите кнопку разблокировать и введите пароль пользователя.

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

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

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

Выводы

Удалить пользователя в linux не так уж сложно, независимо от того где это нужно сделать, на сервере или домашнем компьютере. Конечно, графический интерфейс более удобен, но в терминал, как всегда, предлагает больше возможностей. Если у вас есть еще какие-нибудь идеи по этому поводу, напишите в комментариях!

Оцените статью:

Загрузка...

losst.ru

Смена (забытого) пароля пользователя MySQL в командной строке Linux

Задача вполне ясна и десятки раз описана в других источниках, но я решил сделать руководство для себя на примере Ubuntu 14.04. Начну с наиболее сложного случая — смены забытого пароля root.

Случай 1. Нужно восстановить забытый пароль root.

Входим в систему с правами root. Останавливаем сервер MySQL, если он запущен. Это можно сделать либо командой service:

# service mysql stop

либо командой stop:

# stop mysql

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

Теперь запустим MySQL-сервер в safe-режиме с опцией --skip-grant-tables:

# mysqld_safe --skip-grant-tables &[1] 2515# 151111 13:31:50 mysqld_safe Can't log to error log and syslog at the same time. Remove all --log-error configuration options for --syslog to take effect.151111 13:31:50 mysqld_safe Logging to '/var/log/mysql/error.log'.151111 13:31:51 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

После нажатия на Enter и появления результатов выполнения команды мы перейдём в режим ожидания, выйти из которого можно повторным нажатием на Enter. Тем самым мы запустим сервер в фоновом режиме (знак амперсанда & в конце строки) и вернёмся в консоль.

В приведённом выше примере сервер ругается, что не может одновременно писать в собственный error.log и syslog. На это можно не обращать внимания, либо указать при запуске опцию --skip-syslog.

Если вы забыли поставить амперсанд в конец строки, то сервер запустится в режиме foreground и повторным нажатием на Enter вы не сможете вернуться в консоль. Для перевода сервера в фоновый режим (background) и возвращения в консоль необходимо нажать Ctrl-Z.

Проверим состояние сервера:

# pgrep -l mysql2515 mysqld_safe2875 mysqld

Здесь демон mysqld запущен как дочерний процесс mysqld_safe.

Теперь мы можем подключиться к серверу MySQL под root-ом без пароля:

# mysql -urootWelcome to the MySQL monitor. Commands end with ; or \g....Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>

Переходим в базу под названием «mysql», где хранятся данные о всех пользователях:

mysql> use mysql;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A

Database changedmysql>

Устанавливаем новый пароль для root, обновляем полномочия и выходим из сеанса:

mysql> update user set password=PASSWORD("xxxxxxxxx") where User='root';Query OK, 4 rows affected (0.00 sec)Rows matched: 4 Changed: 4 Warnings: 0

mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)

mysql> quitBye

Теперь необходимо выйти из режима safe и перезапустить сервер MySQL в обычном режиме. Мне не удалось это сделать традиционными средствами Ubuntu с помощью команд service и stop, поэтому я убивал процессы с помощью терминальных сигналов:

# killall -9 mysqld_safe mysqld[1]+ Убито mysqld_safe --skip-grant-tables# start mysql

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

Случай 2. Пароль пользователя MySQL известен, но его нужно поменять.

Это самый простой случай, для которого, в частности, предусмотрена утилита mysqladmin. Синтаксис однострочной команды по смене текущего пароля пользователя anton следующий:

# mysqladmin -u anton -p current_pass password new_pass

где current_pass — это текущий пароль, а new_pass — новый. При этом пробелы между параметрами авторизации -u/-p и их значениями допускается не ставить, хотя это понижает читабельность:

# mysqladmin -uanton -pcurrent_pass password new_pass

Обратите внимание на то, что принцип работы утилиты mysqladmin построен сперва на аутентификации и авторизации того, кто её вводит (параметры -u и -p), а затем выполнении необходимого действия, в нашем случае password. К сожалению, в интернете много ошибочных примеров её использования именно для смены паролей.

linux.bolden.ru