Linux несколько пользователей одновременно

Одновременный доступ к системе

То, что Linux — многопользовательская и многозадачная система, проявляется не только в разграничении прав доступа, но и в организации рабочего места. Каждый компьютер, на котором работает Linux, предоставляет возможность зарегистрироваться и получить доступ к системе одновременно нескольким пользователям. Даже если в распоряжении всех пользователей есть только один монитор и одна системная клавиатура, эта возможность небесполезна: одновременная регистрация в системе нескольких пользователей позволяет работать по очереди без необходимости каждый раз завершать все начатые задачи (закрывать все окна, прерывать исполнение всех программ) и затем возобновлять их. Более того, ничто не препятствует зарегистрироваться в системе несколько раз под одним и тем же входным именем. Таким образом, можно получить доступ к одним и тем же ресурсам (своим файлам) и организовать параллельную работу над несколькими задачами.

Виртуальные консоли

Характерный для Linux способ организации параллельной работы пользователей — виртуальные консоли.

Допустим, что Мефодий хочет зарегистрироваться в системе ещё раз, чтобы иметь возможность следить за выполнением двух программ одновременно. Он может сделать это, не покидая текстового режима: достаточно нажать комбинацию клавиш Alt+F2, и на экране появится новое приглашение к регистрации в системе.

Welcome to Some Linux / tty2
localhost login: methody
Password:
[methody@localhost methody]$

Пример 7. Вторая виртуальная консоль

Мефодий ввёл свой новый пароль и получил приглашение командной строки, аналогичное тому, которое мы уже видели в предыдущих примерах. Нажав комбинацию клавиш Alt+F1, Мефодий вернётся к только что покинутой им командной строке, в которой он выполнял команду passwd для смены пароля. Приглашение в обоих случаях выглядит одинаково, и это не случайно — обе командные строки предоставляют совершенно эквивалентный доступ к системе, в любой из них можно выполнять любые доступные команды.

Наблюдательный Мефодий обратил внимание, что в последнем примере (tty2) первая строка приглашения оканчивается словом « tty2 ». « tty2 » — это обозначение второйвиртуальной консоли. Можно переключаться между виртуальными консолями так, как если бы Вы переходили от одного монитора с клавиатурой к другому, подавая время от времени команды и следя за выполняющимися там программами. По умолчанию в Linux доступно не менее 6-ти виртуальных консолей, переключаться между которыми можно при помощи сочетания клавиши Alt с одной из функциональных клавиш (F1–F6), с каждым сочетанием связана соответствующая по номеру виртуальная консоль. Виртуальные консоли обозначаются « ttyN », где « N » — номер виртуальной консоли.

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

Во многих дистрибутивах Linux одна из виртуальных консолей по умолчанию не может быть использована для регистрации пользователя, однако она не менее, если не более полезна. Если Мефодий нажмёт Alt+F12, он увидит консоль, заполненную множеством сообщений системы о происходящих событиях. В частности, там он может обнаружить две записи о том, что в системе зарегистрирован пользователь « methody ». На эту консоль выводятся сообщения обо всех важных событиях в системе: регистрации пользователей, выполнении действий от имени администратора ( root ), подключении устройств и подгрузке драйверов к ним и многое другое.

Читайте также:  Где найти инструментарий управления windows

Пример двенадцатой виртуальной консоли показывает, что виртуальные консоли — довольно гибкий механизм, поддерживаемый Linux, при помощи которого можно решать разные задачи, а не только организацию одновременного доступа к системе. Для того, чтобы на виртуальной консоли появилось приглашение login: после загрузки системы, для каждой такой консоли должна быть запущена программа getty . Попробуйте нажать Alt+F10 — с большой вероятностью Вы увидите просто чёрный экран. Десятая виртуальная консоль поддерживается системой, однако чёрный экран означает, что для этой консоли не запущена никакая программа, поэтому воспользоваться её существованием не получится. Для каких именно консолей будет запущена программа getty — определяется настройкой конкретной системы. Впоследствии эта настройка может быть изменена пользователем. О том, как это может быть сделано, речь пойдёт в лекции Этапы загрузки системы.

Графические консоли

Впрочем, как ни широки возможности текстового режима, Linux ими не ограничен. Подробно работа в графическом режиме будет разбираться в последующих лекциях (см. лекцию Графический интерфейс (X11)). Сейчас важно заметить, что если при загрузке системы приглашение « login: » было представлено в виде графического окна, можно вернуться к этому приглашению, нажав комбинацию клавиш Ctrl+Alt+F7. Процедура регистрации здесь будет совершенно аналогична регистрации в текстовом режиме. С той разницей, что после идентификации пользователя (правильно введённого имени пользователя и пароля) Вы увидите не приглашение командной строки, а графическую рабочую среду. Как именно она будет выглядеть — зависит от того, какую систему Вы используете, и как она настроена.

Кроме того, что несколько пользователей (или несколько «копий» одного и того же пользователя) могут работать параллельно на разных виртуальных консолях, они могут параллельно зарегистрироваться и работать параллельно в разных графических средах. Обычно в стандартно настроенной Linux-системе можно организовать не менее трёх графических консолей, работающих одновременно. Переключаться между ними можно при помощи сочетаний клавиш Ctrl+Alt+F7–Ctrl+Alt+F9.

Чтобы переключиться из графического режима в одну из текстовых виртуальных консолей, достаточно нажать комбинацию клавиш Ctrl+Alt+FN, где «N» — номер необходимой виртуальной консоли.

Источник

4 инструмента для одновременного выполнения команд на нескольких Linux-серверах

Статья, перевод которой мы сегодня публикуем, посвящена технологиям одновременного выполнения команд на нескольких Linux-серверах. Речь здесь пойдёт о нескольких широко известных инструментах, реализующих подобный функционал. Этот материал пригодится системным администраторам, которым, например, регулярно приходится проверять состояние множества удалённых систем. Предполагается, что у читателя уже имеется несколько серверов, к которым организован доступ по SSH. Кроме того, при одновременной работе с несколькими машинами весьма полезно настроить SSH-доступ к ним по ключу, без пароля. Такой подход, с одной стороны, повышает безопасность сервера, а с другой — облегчает работу с ним.

1. PSSH — Parallel SSH

PSSH — это опенсорсный набор инструментов командной строки, написанный на Python и предназначенный для параллельного выполнения SSH-команд на множестве Linux-систем. Он быстро работает и лёгок в освоении. PSSH включает в себя такие средства, как parallel-ssh , parallel-scp, parallel-rsync , parallel-slurp и parallel-nuke (подробности об этих средствах можно посмотреть в man).

Перед установкой parallel-ssh в Linux-системе сначала надо установить pip . Вот как это делается в разных дистрибутивах:

Затем parallel-ssh устанавливают с использованием pip :

Далее, нужно внести имена хостов или IP-адреса удалённых Linux-серверов и сведения о портах в файл hosts (на самом деле, назвать его можно как угодно). Тут нам пригодится такая команда:

Вот пример содержимого такого файла:

После того, как в файл будет внесено всё необходимое, пришло время запустить parallel-ssh , передав этой утилите имя файла с использованием опции -h , а также — команды, которые нужно выполнить на всех серверах, адреса которых имеются в файле hosts . Флаг -i утилиты используется для того, чтобы вывести на экран то, что попадёт в стандартные потоки вывода и ошибок после завершения выполнения команд на серверах.

Читайте также:  Парольная система защиты windows

Команда запуска parallel-ssh может выглядеть так:

На следующем рисунке показано использование утилиты при работе с тремя серверами.

Утилита parallel-ssh выполняет команды на нескольких серверах

2. Pdsh — Parallel Remote Shell Utility

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

Вот как установить pdsh в различных дистрибутивах:

Для того чтобы выполнять команды на нескольких серверах, адреса этих серверов, как и при использовании parallel-ssh , надо добавить в файл, который тоже можно назвать hosts . Затем нужно запустить pdsh в следующем виде:

Здесь флаг -w используется для указания файла со списком серверов, флаг -R применяется для указания модуля удалённых команд (среди доступных модулей удалённых команд имеются ssh , rsh , exec ; по умолчанию используется rsh ). Обратите внимание на значок ^ перед именем файла со списком серверов.

Вот как выглядит работа с этой командой.

Выполнение команд на нескольких серверах с использованием pdsh

Если вы, при вызове pdsh , не указали список команд, которые надо выполнить на серверах, эта утилита запустится в интерактивном режиме. Подробности о pdsh можно узнать на соответствующей странице man.

3. ClusterSSH

ClusterSSH — это инструмент командной строки, предназначенный для администрирования кластеров серверов. Он запускает консоль администратора и, для каждого сервера, отдельное окно xterm . После этого на всех этих серверах можно одновременно выполнять одни и те же команды.

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

Можно воспользоваться и такой конструкцией:

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

Работа с несколькими серверами с помощью clusterssh

Команды, введённые в консоли администратора, выполняются на всех серверах. Для выполнения команд на отдельном сервере нужно вводить их в окне, открытом для него.

4. Ansible

Ansible — это популярный опенсорсный инструмент для автоматизации IT-процессов. Он используется для настройки систем и для управления ими, для установки приложений и для решения других задач.

После этого надо добавить адреса серверов в файл /etc/ansible/hosts .

Вот пример фрагмента подобного файла с несколькими системами, объединёнными в группу webservers :

Теперь, для того, чтобы получить сведения команды uptime и узнать, какие пользователи подключены к хостам, входящим в группу webservers , можно воспользоваться следующей конструкцией:

Здесь опция -a используется для указания аргументов, передаваемых модулю, а флаг -u позволяет задать имя пользователя по умолчанию, применяемое для подключения к удалённым серверам по SSH.

Обратите внимание на то, что интерфейс командной строки ansible позволяет выполнять команды лишь по одной.

Взаимодействие с несколькими серверами средствами ansible

Итоги

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

Уважаемые читатели! Знаете ли вы о каких-нибудь полезных утилитах, упрощающих администрирование большого количества серверов?

Источник

Многопользовательская удалённая Linux-система с графическим окружением, как?

Требуется на удалённом сервере поставить нечто такое, что позволит работать одновременно нескольким разным пользователям с «тонким клиентом» в графическом рабочем окружении — например в Gnome или в другом — и запускать браузер, офисный пакет, почту и даже скайп! Точнее, видео скайпа не нужно, но звонки голосом — типа нужны позарез!

Читайте также:  Параметры удаленного рабочего стола windows 10

Подскажите, можно ли это осуществить? Если да, то как? Мне тут советовали поставить Windows и ходить по RDP, но это уже какой-то совсем унылый вариант и я оставил его на самый крайний случай, да и в Windows не сильно разбираюсь! Отцы, подскажите, как это в родном Linux’е осуществить? Через VNC? Так надо будет несколько иксов поднимать. А как ещё — ничего на ум не приходит! Да ещё чтоб и со звуком.

Один X сервер умеет это из коробки.

Один X сервер умеет это из коробки.

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

Не очень-то тонкий клиент получается.

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

есть 3.5, есть новая версия 4 — позволяет юзать в том числе через браузер.

Через VNC? Так надо будет несколько иксов поднимать.

Xvnc — одновременно X- и VNC-сервер. ЕМНИП, можно несколько сеансов. Но что делать со звуком? PulseAudio?

Источник

Linux несколько пользователей одновременно

Что такое Multiseat
Multiseat — это Многопользовательское, Мультерминальное или Терминальное решение позволяет организовать на базе одного компьютера несколько независимых мест — терминалов — с возможностью одновременной работы.

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

Преимущества терминальных решений
Низкий уровень шума
Экономия места
Снижение затрат на модернизацию
Простота использования
Экономия электроэнергии
Не требуется локальная сеть
Экологичность
Более низкая цена

Где используется
Библиотеки, музеи, читальные залы
Интернет-кафе
Выставки, семинары, конференции, презентации
Для применения в бухгалтерии (проверялось компанией 1С)
Рабочие места в офисах, банках, почтовых отделениях
Кассовые терминалы, регистрационные пункты в домах отдыха, отелях, больницах
Компьютерное тестирование и обучение
Школы и университеты
Для домашнего пользования

Предлагаю обсудить Multiseat и поделиться опытом и полезными ссылками.

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

Например берем материнку с видео выходами и энергоэффективный Core i5-2500T (TDP 45W). К встроенному Intel HD видео подключаем телевизор и встроенный в корпус дисплей. Встроенный дисплей будет использоваться для прослушивания музыки без включения ТВ. На ТВ и встроенный дисплей будет выводиться клонированное изображение. В идеале для HTPC будет автологиниться консольная X-сессия на которой будет прогружаться XBMC.
Далее вставляем пасивную GeForce GTS 530 и подключаем к ней 2 монитора. Тут у нас будет расширенный десктоп.
В итоге семья смотрит независимо телевизор управляя пультом, а я имею свое робочее место.

Есть у кого нибудь опыт Multiseat? Что скажите? Все кто захочет предложить отдельно собрать HTPC и рабочий компьютер, проходите мимо, у меня все это есть, тут обсуждаем Multiseat.

Сообщение отредактировал Crazand — 11.07.11, 05:09

Источник

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