- Как включить (отключить) автоматический вход в систему в Linux Mint?
- Включение автоматического входа в систему в Linux Mint
- Отключение функции автоматического входа в систему в Linux Mint
- Авто пароль и авто ответ в sudo. Скрипт Bash
- Автовход с паролем и управление по ssh «в гостях» при помощи expect
- Немного истории и оффтопика
- Задача
- Варианты решения
- Решение через expect
- Заключение
- sudo, ввод пароля прямо из скрипта
- Автоматический вход Ubuntu
- Автоматический вход Ubuntu
- Отложенный вход в Ubuntu
- Выводы
Как включить (отключить) автоматический вход в систему в Linux Mint?
Всем привет! В данной заметке мы с Вами разберем возможность включения и отключения автоматического входа в систему в операционной системе Linux Mint. Автоматический вход в систему – это функция, которая позволяет включать компьютер от имени заранее определенного пользователя, другими словами, Вам не нужно выбирать пользователя и вводить пароль.
Итак, давайте приступать. Допустим, на компьютере у Вас установлена операционная система Linux Mint 18.1 и у Вас возникла необходимость включить функцию автоматического входа или наоборот отключить ее, например, за Вашим компьютером работает несколько пользователей, и Вы хотели бы, чтобы каждый из них работал от имени своей учетной записи, которая имела бы свой уникальный пароль. О том, как создавать дополнительных пользователей и для чего это нужно мы с Вами разговаривали в статье — «Как создать пользователя в Linux Mint?».
Примечание! У меня Linux Mint 18.1 со средой рабочего стола Cinnamon, в других графических оболочках интерфейс Linux Mint будет немного отличаться от представленного ниже на скриншотах.
Включение автоматического входа в систему в Linux Mint
Для того чтобы включить функцию автоматического входа в Linux Mint необходимо открыть параметры «Окно входа в систему», это можно сделать следующим образом
Меню->Администрирование-> Окно входа в систему
Или, запустить компонент «Параметры системы» и в нем найти и открыть пункт «Окно входа в систему».
Затем необходимо ввести пароль для выполнения административных задач, так как изменение параметров системы требует наличие прав администратора.
После того как откроются параметры окна входа в систему, переходим в раздел «Автоматический вход», ставим галочку напротив пункта «Включить автоматический вход в систему» и выбираем пользователя, от имени которого будет по умолчанию загружаться система.
Здесь также Вы можете настроить автоматический вход в систему с задержкой, т.е. во время включения компьютера появится окно входа в систему, и если никаких действий Вы не совершите, то система автоматически загрузится от имени указанно пользователя.
Все, после указанных выше действий система будет загружаться автоматически, иными словами, Вам больше не нужно выбирать пользователя и вводить пароль.
Отключение функции автоматического входа в систему в Linux Mint
Чтобы отключить автоматический вход необходимо также открыть параметры «Окно входа в систему» в «Параметрах системы» и убрать галочку с пункта «Включить автоматический вход в систему».
Теперь при включении компьютера у Вас будет появляться окно входа в систему, где Вам необходимо будет выбирать пользователя и вводить пароль.
На заметку! Если Вы обычный пользователь домашнего компьютера и хотите познакомиться с Linux поближе, рекомендую почитать мою книгу – « Linux для обычных пользователей », в ней я подробно рассказываю про основы операционной системы Linux
Все, надеюсь, материал был Вам полезен, пока!
Источник
Авто пароль и авто ответ в sudo. Скрипт Bash
И снова доброго времени суток. Уже обращался сегодня и помогли. А теперь новая проблема
Не получается автоматически подставить пароль в sudo и ответ yes для установки
Выход :
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
./1test.sh: строка 38: 123: команда не найдена
123 Это введенный пароль
Похоже это как-то связано с zenity —progress Может есть другой способ установки. Но так чтоб пользователь видел хоть какую-то деятельность, а не так-что не понятно что-там происходит. Потому-что скрипт будет запускаться не из терминала, а по двойному клику
документацию уже читать не модно ?
Не совсем понял, что вы написали Попробовал так
echo $PASSWD | sudo -S apt-get update echo $PASSWD | sudo apt-get install ssh -y
Ошибка пропала, но и действие не выполнилось. А если заменить команду apt-get install, например на копирование файла, то получим
cp: невозможно создать обычный файл ‘/home/vlad/skr/1test.sh.cop’:
Отказано в доступе
где passwd12 — твой настоящий пароль. У меня работает.
я получаю его из поля для ввода
и экспорт сразу после получения?
Работает ваш скрипт или мой? Такой простой вариант как у вас у меня тоже работает. Но у меня более сложная конструкция. Все эти операции происходят в (тут код который не работает) | zenity —progress
А не проще прописать в /etc/sudoers для заданного пользователя и для команды apt-get опцию NOPASSWD: ? Заодно и пароль светить в скрипте/консоли не придётся.
не проще, потому-что допустим такую ситуацию- я даю этот скрипт тебе, а у тебя не прописано NOPASSWD, что тогда делать?
Если всё равно нужна sudo, значит все пользователи имеют право его выполнять, являясь членами группы wheel, скорее всего. Так и разреши членам этой группы выполнять apt-get через sudo без ввода пароля. Конечно, это потенциальная брешь, но, имхо, меньшая, чем отображение пароля в скрипте или в консоли (а значит, и в истории команд). Да и проще, потому что лишние скрипты городить не надо.
мне кажется ты не понял смфсл скрипта. я его не длаю не для себя. Потому-что для себя я бы через терминал все быстренько забацал. У меня следующая задача — создать скрипт для установки и настройки ssh без прямого использования терминала. Тобишь для тех, кто не понимает или не хочет работать с терминалом. Для тех, кто хочет нажать кнопку -«установить» и скрипт все сделает сам. Минимум действий со стороны пользователя
Т. е. ты хочешь, чтоб они по ssh заходили без пароля? Тогда сгенери для каждого ключи, положи их в нужные каталоги, и будут они логиниться без пароля. А для выполнения sudo apt-get на сервере измени на нём sudoers для группы wheel и добавь всех юзеров в эту группу (или просто разреши вообще всем выполнять apt-get без пароля, если таких, кому нельзя этого делать, там не зарегистрировано и не планируется). Ну а скрипт может автоматизировать вход по ssh, установку программ и что хочешь ещё, но, имхо, писать в нём открытым текстом пароли пользователей очень плохая идея, равно как и набирать эти пароли в консоли с сохранением в истории команд.
Ты делаешь скрипт для людей из твоей организации для компьютеров которыми рулишь в своей сети (за которой ты типа следишь) или это скрипт для совсем левых людей?
по моему мы отошли от темы. Давайте не будем думать зачем и почему я так делаю и будем рассматривать текущую ошибку
Я заметил следующую вещь
Если убрать конструкцию типа
(команды) | zenity
и сделать как в коде ниже, то все работает без проблем
значит проблема в передаче значения переменной PASSWD в составной оператор (от export pass=$PASSWD До echo «100» ; sleep 2)
Источник
Автовход с паролем и управление по ssh «в гостях» при помощи expect
В очередной раз используя этот скрипт в одном из учебных классов, я поискал материалы и обнаружил, что здесь давно не вспоминали об expect. Это замечательный альтернативный интерпретатор для командной строки Linux, который может общаться с ней вместо живого человека, и я добавлю сюда лишь ещё один пример его применения.
Картинок на эту тему особо нет, а в статье и вообще не будет, поэтому привлечём ваше внимание обложкой замечательной книги
Немного истории и оффтопика
В начале 2013го я вернулся в дополнительное образование детей, получил 24 часа еженедельной нагрузки для четырёх групп «юных программистов» и «юных системных администраторов», и приступил к набору учеников на двух площадках: моём собственном кабинете и кабинете информатики находящейся неподалёку гимназии. Силами групп «юных системных администраторов» мы привели свой кабинет в порядок, развернув AltLinux 6 и парочку альтернативных дистрибутивов. А в гимназии очень опытный «инженер компьютерного класса» давно вёл эксперименты с source-based, закончившиеся приходом Calculate Linux на все машины учителей и учебных классов. Респект ему)
Задача
Через пару месяцев занятий я увидел проблему. Дети отказывались уходить с занятий, любым способом стараясь задержаться подольше. Т.к. педагогические технологии — это не моё, а кружок у нас всё-таки технический, я убивал сторонние процессы и выключал машины по ssh. Это повысило интерес учеников к изучению возможностей командной строки. Однако скоро они нашли баг: выключение «руками» занимает слишком много времени, и даже в небольшом кабинете они успеют перезапустить половину машин до того, как я завершу карательный процесс, и это затянет дело. Чтобы продемонстрировать кто здесь главный лучшие возможности программирования для командной строки, я задумался об автоматизации.
Варианты решения
Нулевой мыслью было использование italc, и мы даже уделили несколько недель его настройке и экспериментам. Но он оказался слишком глючен и примитивен, поэтому был благополучно забыт.
Первой же мыслью было настроить доступ через ssh по отпечатку. Это сократило бы задачу до одного цикла, но для применения «на коленке» этот способ оказался не совсем пригоден (хотя почему нет? ЕМНИП, отпечаток для пользователя также можно создать без рута). Но при доступной авторизации по паролю (кстати, большой ущерб безопасности для учебных классов, где логин-пароли одинаковы) меня заинтересовал вариант с автоматической авторизацией по паролю. Уделив час поиску, я нашёл несколько примеров для expect.
Решение через expect
Перед началом
Но, во первых, он должен быть установлен. В моём классе мы без труда сделали это, а вот в классе гимназии ВНЕЗАПНО оказалось, что и expect, и nmap, и некоторые другие интересные системные утилиты не только установлены, но и доступны ученику. Это очень помогло нам, когда в очередной раз «упал» прикрученный по NFS сетевой диск, и мы нашли способ распространения заданий через быстро найденный бухгалтерский компьютер с расшаренными дисками.
Во вторых, кроме самого expect, нам понадобится использовать 2 типа цикла: с предусловием и с параметром. Первый необходим для «зацикливания» процесса, чтобы можно было повесить выполнение скрипта фоном на всё занятие. Второй же необходим для перебора необходимых адресов, на которые мы будем заходить по ssh при помощи собственно expect.
Также необходимо помнить, что стандартно скрипт выпадает при возникновении первой же ошибки, например неответе компьютера клиента, и наверное стоит поискать способ обработки таких исключений.
Скрипт
Сообщаем, что для выполнения нам необходимо использовать нестандартный интерпретатор
Задаём паузу для ожидания ответа с клиента, имя пользователя и пароль (это скорее по инерции из имеющихся в сети примеров):
Это был простой скрипт автоубивания ненужных процессов для гимназии. В своём же кабинете я модифицировал скрипт и для автовыключения машин:
Заключение
Надеюсь, упоминание замечательного интерпретатора expect и пара живых примеров по работе с ним будут полезны сообществу и породят немало статей о более тонких его применениях.
Источник
sudo, ввод пароля прямо из скрипта
Знаю, быдлокодерская практика, но возможно ли?
Если пароль автоматом вводить, то чем это отличается от NOPASSWD в sudoers?
The -S (stdin) option causes sudo to read the password from the standard input instead of the terminal device. The password must be followed by a newline character.
Проблема в том, что варианта с su нет, а скрипту надо выполняться тихо.
Если пароль автоматом вводить, то чем это отличается от NOPASSWD в sudoers?
тем, что враг узнает пароль, и сможет всё что угодно запускать с правами рута. А с NOPASSWD сможет запускать лишь то, что разрешили.
Читал, но, видимо, по диагонали. Спасибо.
The -S (stdin) option causes sudo to read the password from the standard input instead of the terminal device. The password must be followed by a newline character.
то. Какой в этом смысл, вбивать пароль через stdin в скрипте?
ТС задал вопрос и получил ответ. Как он его будет использовать — вопрос к нему.
Или ты не знаешь, как работает stdin в скриптах =)?
expect или у судо вроде бы есть ключ на запуск с вводом пароля в stdin
ТС задал вопрос и получил ответ. Как он его будет использовать — вопрос к нему.
почему нельзя сделать по человечески, прописав в /etc/sudoers команду с NOPASSWD ?
Или ты не знаешь, как работает stdin в скриптах =)?
хреново работает. Запускается две команды сразу, а потом нужно разбираться, почему эти команды зафэлились, и какая именно.
И кстати, пароль будет известен человеку, который запускает этот скрипт, т.к. право чтения у него имеется (скрипт обязан иметь право +r, а +x не обязательно). Этот пароль очевидно не хуже рутового, т.к. ТС в sudoers ничего не ограничил.
Источник
Автоматический вход Ubuntu
Пользователи домашних компьютеров с операционной системой Windows привыкли к тому, что авторизация в системе проходит автоматически и им не нужно вводить логин и пароль каждый раз при запуске компьютера. В домашних условиях это вполне оправдано, поскольку никто чужой к вашему компьютеру получить доступ не может, а на ввод пароля уходит лишнее время.
В Ubuntu тоже поддерживается автоматический вход, и система даже предлагает включить автовход во время установки. Но все настройки можно выполнить и гораздо позже. В этой статье мы рассмотрим, как включить автоматический вход Ubuntu.
Автоматический вход Ubuntu
Перед тем, как мы перейдём к настройке, нужно сказать, что с автовходом в Ubuntu есть одна проблема. Он будет нормально работать только если на вашем компьютере не более одного пользователя, для которого это разрешено. В противном случае, независимо от того включён автологин или нет, вам будет показываться список пользователей и нужно будет ввести пароль.
Чтобы включить автоматический вход, откройте Параметры системы, затем Сведения о системе, а затем Пользователи:
Чтобы получить возможность менять настройки, нажмите кнопку Разблокировать и введите пароль пользователя:
Далее вам нужно поставить переключатель напротив надписи Автоматический вход в положение «включён».
На этом всё, теперь при перезагрузке компьютера, авторизация будет выполняться автоматически. Эти же действия можно выполнить через конфигурационный файл. Для этого откройте /etc/gdm/custom.conf и добавьте туда такие строчки в секцию daemon:
Этот способ аналогичнен первому в графическом интерфейсе.
Отложенный вход в Ubuntu
Как я уже сказал, автоматический вход в систему Ubuntu не будет работать, если у вас есть несколько пользователей. Но проблема решаема. Можно использовать отложенный вход. Сначала открывается меню со списком пользователей и, если в течении указанного времени ничего не происходит, выполняется вход под нужной вам учётной записью автоматически.
TimedLoginEnable = true
TimedLogin =имя_пользователя
TimedLoginDelay = 10
Так намного удобнее, если у вас есть несколько пользователей и вы хотите, чтобы вход в систему выполнялся автоматически.
Выводы
В этой небольшой статье мы разобрали, как настроить автоматический вход Ubuntu. Как видите, это очень просто и может быть полезным при использовании Linux дома.
Источник