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

How to switch between users on one terminal?

I’d like to log in as a different user without logging out of the current one (on the same terminal). How do I do that?

I asked a similar question, because I ran into issues with XDG environment variables ( $XDG_RUNTIME_DIR in particular) that were driving me nuts. -> unix.stackexchange.com/questions/354826/…

10 Answers 10

How about using the su command?

$ whoami user1 $ su - user2 Password: $ whoami user2 $ exit logout 

If you want to log in as root, there’s no need to specify username:

$ whoami user1 $ su - Password: $ whoami root $ exit logout 

Generally, you can use sudo to launch a new shell as the user you want; the -u flag lets you specify the username you want:

$ whoami user1 $ sudo -u user2 zsh $ whoami user2 

There are more circuitous ways if you don’t have sudo access, like ssh username@localhost, but sudo is probably simplest, provided that it’s installed and you have permission to use it.

I am getting this error «-su: /dev/stderr: Permission denied» after executing this command echo >>/dev/stderr on a login with su —login . , any tip? I found this btw unix.stackexchange.com/questions/38538/…

Does this allow each new user to have different, overriding values for environment variables? e.g. git config for work, open source, etc.

One finding, when I listed the env it saw that everything was in order as well as a visual inspection can go; And one thing was incorrect: XAUTHORITY=/home/user1/.Xauthority’. Not sure _why_? So X-window doesn’t work by default because the protection on ~/.Xauthority` file is: -rw——- . I made a copy and that let me run gedit as an experiment.

Generally you use sudo to launch a new shell as the user you want; the -u flag lets you specify the username you want:

[mrozekma@etudes-1 ~] % whoami mrozekma [mrozekma@etudes-1 ~] % sudo -u nobody zsh [nobody@etudes-1 ~] % whoami nobody 

There are more circuitous ways if you don’t have sudo access, like ssh username@localhost , but I think sudo is probably simplest if it’s installed and you have permission to use it

sudo -s gives you a shell like su , sudo -i simulates login like su — . Can be combined with -u $user , of course.

much more efficient. being able to «login» as a user who can’t normally login is a great asset. totally allowed me to run a database instance without messing with permissions or selinux

This command prints the current user. To change users, we will have to use this command (followed by the user’s password):

Читайте также:  Destination port unreachable linux

After entering the correct password, you will be logged in as the specified user (which you can check by rerunning whoami .

If you’re running Ubuntu, and if the user you want to login as doesn’t have a password set:

Enter your own password and you should be set. Of course, this requires that your user has rights to gain root privileges with sudo .

To switch the terminal session to a different user, where that user can’t exit back into the original user, use exec:

This will technically login the new user in a new term process, and close out the current one. That way when the user attempts exit or Ctrl-D, the terminal will close as though that user was the one who instantiated it, i.e., the user can’t exit back into the original user’s term. Kind of pointless, considering they can still just start a new terminal session and automatically be in the original user term login, but there it is.

EDIT: For what it’s worth, you can use linux vlock command in your ~/.bashrc to lock terminal sessions by default, requiring the password of the term session user to unlock. This would somewhat prevent the aforementioned term restart under the original user context, given the term isn’t instantiated using the non-default ~/.bashrc of the user, as configured.

Источник

Смена пользователя в Linux

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

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

Меняем пользователя в Linux

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

Способ 1: Список профилей при входе в систему

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

Читайте также:  Доступ через ssh linux

Выбор пользователя при создании нового сеанса в Linux

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

  • Введите пароль, а затем щелкните по кнопке «Разблокировать», чтобы войти в систему. Ввод пароля для входа в учетную запись пользователя при создании нового сеанса в Linux
  • Если вы обнаружили, что профиль отсутствует в списке, потребуется перейти к отдельному меню. Выбор учетной записи, не входящей в список пользователей Linux при создании нового сеанса
  • Здесь сначала указывается имя, поэтому вам необходимо точно знать его, а далее вводится пароль. Если вся информация указана правильно, создастся новая виртуальная консоль с графической оболочкой. Ввода имени профиля для входа при создании нового сеанса Linux
  • Как видите, этот метод максимально прост, что позволит даже самому начинающему юзеру выполнить его без каких-либо трудностей. Однако если вы уже создали сеанс и не желаете перезагружать ПК для смены профиля, обратите внимание на следующий способ.

    Способ 2: Кнопка «Сменить пользователя» в окружении

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

    1. Нажмите на кнопку выключения, которая находится на панели задач. Она может быть расположена вверху или снизу, что зависит от общих настроек. Переход к параметрам управления Linux через панель задач
    2. В появившемся контекстном меню кликните по имени своего профиля и в списке выберите «Сменить пользователя». Кнопка Сменить Пользователя на панели задач в Linux
    3. Появится та же самая форма, что вы видели в инструкции к предыдущему методу. Здесь кликните ЛКМ по нужной учетной записи. Выбор пользователя для переключения в активном сеансе Linux
    4. Введите пароль и нажмите на «Разблокировать». Ввод пароля для смены пользователя в активном сеансе Linux

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

    Способ 3: Команда в «Терминале»

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

    1. Откройте «Терминал» любым удобным способом, например, через главное меню. Запуск терминала для смены пользователя в Linux
    2. Введите команду su — username , где username — точное имя необходимой учетной записи. Ввод имени пользователя для его смены в активной сессии терминала Linux
    3. Для разблокирования управления введите пароль. Учтите, что отображаться в консоли он не будет, но символы при этом корректно вводятся. Ввод пароля пользователя для смены в активной сессии терминала Linux
    4. Теперь обратите внимание на зеленую надпись. Как видите, пользователь был успешно сменен. Успешное переключение пользователей через терминал в Linux
    5. При закрытии консоли появится всплывающее окно, что здесь запущен какой-то процесс. Этот процесс как раз и является сменой пользователя. Подтвердите закрытие, чтобы завершить консольную сессию учетной записи. Завершение работы терминала после смены пользователя в Linux

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

    Читайте также:  Kali linux установить libreoffice

    Способ 4: Функция «Автоматический вход»

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

    1. Откройте меню приложений и перейдите в «Параметры». Переход к параметрам Linux для настройки автоматического входа в Linux
    2. Здесь вас интересует категория «Сведения о системе». Переход к сведениям системы для управления пользователями в Linux
    3. Разверните категорию «Пользователи» и кликните по кнопке «Разблокировать». Переход к разблокированию функции управления пользователями в Linux
    4. Потребуется ввести пароль суперпользователя, чтобы получить возможность управлять другими учетными записями. Ввод пароля суперпользователя для активации функции управления учетными записями Linux
    5. После этого переключитесь на необходимый профиль, активируйте или деактивируйте функцию «Автоматический вход» путем перемещения ползунка. Активация или отключение функции автоматического входа в Linux

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

    Источник

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

    Операционная система Ubuntu рассчитана на то, чтобы её использовали от имени одного определенного пользователя. Менять пользователя в процессе работы приходится не так уж часто. Обычно вы вводите логин и пароль при входе в систему, а затем пользуетесь ею пока не придёт пора выключать компьютер.

    Если надо выполнить какие-либо действия с административными привилегиями, то для этого есть sudo. Однако иногда надо сменить пользователя Ubuntu. В этой статье мы поговорим о том как сделать это в графическом интерфейсе и в терминале.

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

    Сначала кликните по значку выключения в правом верхнем углу экрана и выберите там пункт Завершить сеанс или Сменить пользователя:

    Затем подтвердите завершение сеанса или смену:

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

    Теперь давайте поговорим как выполняется смена пользователя в терминале. Для этого надо использовать команду su. Например, чтобы сменить пользователя на losst достаточно выполнить:

    Утилита запросит пароль пользователя losst после чего откроет командную строку от его имени:

    Если вы хотите, чтобы путь к домашней папке и все другие переменные окружения для пользователя обновились используйте опцию -l или —login. Вместо неё также можно просто добавить чёрточку «-«. Например:

    Если выполнить утилиту без параметров, то вы войдете от имени пользователя root. Но поскольку пароль root не задан по умолчанию, то следует добавить перед ней sudo:

    В таком случае иногда целесообразнее использовать опцию -i команды sudo:

    В этой статье мы рассмотрели как поменять пользователя в Ubuntu, как видите, здесь всё очень просто. Если остались вопросы, спрашивайте в комментариях!

    Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

    Источник

    Оцените статью
    Adblock
    detector