Меню Рубрики

Установка ubuntu server без монитора

Установка Debian на физически доступную систему без монитора и клавиатуры

Я долгое время имел на руках только ноутбук и вот недавно разжился системным блоком. Без монитора и клавиатуры, иначе говоря, headless-системой. Таким образом возникла задача:

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

А именно:

  1. целевая машина с уже выставленным в BIOS Setup «NO ERROR» или «ALL, NO KEYBOARD» порядком POST (иначе процедура упрется в невозможность даже начать загрузку хотя бы чего-нибудь*) и выставленной загрузкой сначала с одного sata-устройства, затем с другого (остальные детали порядка загрузки оказались не важны)
  2. ноутбук
  3. локальная сеть (в моем случае wi-fi-роутер с проводным соединением с целевой машиной и беспроводным — с ноутбуком. Но детали не принципиальны)
  4. доступ в интернет (недорогой и желательно быстрый)
  5. Полудохлый разборный внешний жесткий диск 2.5″ с внутренним sata-интерфейсом и внешним usb

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

Схема решения

Альтернативные варианты
Немного подробнее

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

Первый этап

Для начала подключим внешний диск (емкость 160 Гб, один раздел на весь диск, файловая система ext3) к ноутбуку с установленной системой Linux и проверим его на ошибки с автоматическим исправлением последних (здесь и далее будем считать команды с префиксом # выполняемые от имени root. Также будем считать, что внешний жесткий диск определяется ноутбуком как устройство sdc):

-f — проверять диск даже если он помечен как несодержащий ошибок
-y — отвечать «да» на все вопросы автоматически. То есть, просто исправлять все ошибки
-c — искать и помечать битые блоки диска. Для этих целей существует специальная утилита badblocks, но с помощью этой опции вы автоматически пересылаете ее отчет fsck.
Обратите внимание, что вы указываете не диск, а конкретный раздел на нем.
В моем случае проверка «умерла» на 20% выполнения из-за огромного числа ошибок, почему я и принял нехитрое решение создать в начале диска раздел объемом гигабайт 20 (этого более, чем достаточно для установки Debian). Для переразбивки диска удобно пользоваться утилитой cfdisk:

В интерактивном режиме вы просто нужным образом конфигурируете диск: я создал в начале диска primary-раздел размером 20 Гб, остальное место оставил пустым (а также заранее пометил его как bootable. Не забудьте перед выходом из программы записать изменения на диск). Затем создаем на нем файловую систему:

И снова проверяем, что все хорошо:

Второй этап

Теперь создадим новую виртуальную машину с именем «desktop»:

Выделим ей подходящий объем оперативной памяти:

Оборудуем контроллером для подлючения жестких дисков и CD/DVD-приводов:

И подключим наш внешний жесткий диск:

Для того, чтобы отключить диск (нам это еще не раз пригодится), нужно выбрать в качестве medium «ничто»:

Теперь пора задуматься, с чего мы будем ставить Debian. Я, при наличии нормального интернет-канала, выбрал «small installation image», вы, при желании, можете выкачать полноразмерный CD или даже DVD. Подробности здесь. Также из-за установки в виртуальной машине придется ограничиться i386-версией — 64-битные гости VirtualBox поддерживает только на хостах с поддержкой аппаратной виртуализации VT-x или AMD-V — этим могут похвастаться только не самые дешевые процессоры. Итак, пусть в текущем каталоге лежит iso-образ Debian, например, debian-6.0.5-i386-netinst.iso. Тогда по образу и подобию подключения жесткого диска подключим и его:

(часть этих действий можно выполнить и из графической оболочки VirtualBox. Только при ее запуске не забудьте, что машины по умолчанию создаются только для одного пользователя, потому запускайте графическую оболочку также от имени root. Под обычным пользователем выполнить все эти манипуляции вам удастся едва ли, поскольку для работы с жестким диском нужен привилегированный к нему доступ. Используйте sudo)
Теперь вам нужно пройти через все этапы инсталляции, указать пароли для root и пользователя, а также, и это критически важно, выбрать среди шаблонов инсталляции SSH-сервер. Из-за весьма шаткого состояния диска я при его разбивке минимизировал свои действия — примонтировал существующий раздел как / и не выделял swap-раздел — его можно подключить уже на целевой машине. После завершения установки можете еще поработать в системе, что-то настроить по вкусу, пока к ней есть доступ с клавиатуры и монитора, проверить, что все действительно загружается, отключив iso-образ и т.д.

Третий этап

На третьем этапе все, что нужно — это подключить внешний диск к целевой машине и включить ее. Мне на этом этапе помог роутер, потому что ip машины я подсмотрел на его статус-странице и открыл по этому адресу SSH-сессию с ноутбука:

У вас адрес машины скорее всего будет иным.

Четвертый этап

Если все получилось, осталось перенести систему с внешнего диска на внутренний. По поводу этого этапа существует особенно много мнений (в том числе не совсем верных), как его осуществлять, я предложу один. Во-первых, учитывая работу вслепую, будет очень полезно все, описанное в этом разделе, сначала проделать на ноутбуке в виртуальной машине. Следуя этому замечательному руководству и уже сделанным мной замечаниям, вы можете подключить к виртуальной машине «desktop» еще один, действительно виртуальный жесткий диск и, считая, что это внутренний диск целевой машины, потренироваться на нем. В конечном счете вы должны суметь отключить внешний диск и тем не менее загрузить с виртуального ваш Debian. Чтобы еще более приблизить обстановку к «боевой», можете из хост-машины (ноутбука) работать с виртуальной машиной по SSH. Для этого, например, можно оставить настройки сети (NAT) виртуальной машины по умолчанию, но перебросить порты:

Читайте также:  Установки и принципы в поведении

(подробности здесь)
Теперь любое обращение к 2222 (номер произволен, но желательно, чтобы он превышал 1024 — по меньшим портам может обращаться только root) порту вашего ноутбука будет пересылаться на 22 порт (стандартный SSH) виртуальной машины. Можете открыть с хоста сессию:

(скорее всего, localhost ведет по адресу 127.0.0.1). Во-вторых, не стоит весь диск копировать с помощью dd, потому что это долго и не пройдет гладко в большинстве практически реализуемых случаев. Для копирования файловой системы вы можете использовать cp, rsync, но более всего подойдет специальная утилита dump/restore (работает крайне быстро и надежно), да и для восстановления порядка загрузки вы уж точно не отделаетесь копированием с помощью dd записи MBR — современный Debian использует grub2, который любит адресовать диски по уникальным номерам UUID — вы оставите в системе все ссылки на внешний жесткий диск.
Итак, необходимо проделать следующее (целевая машина загружена с внешнего диска, пусть он есть /dev/sda, внутренний диск — /dev/sdb, вы работаете с ноутбука по SSH):
Разбить с помощью cfdisk внутренний диск так же (или почти так же — раздел, в который будете копировать должен вместить предназначенные ему данные):

Создать на нем файловую систему:

И скопировать в нее файловую систему внешнего диска:

Теперь нужно сконфигурировать grub2. Сначала выполним chroot в скопированную файловую систему:

Теперь мы фактически находимся в окружении Debian на внутреннем диске целевой машины. Обновим конфигурацию жестких дисков (сейчас там мусор, оставленный виртуальной машиной):

— она автоматически запишется в файл /boot/grub/device.map. Обновим конфигурацию grub2:

Выполним его инсталляцию на внутренний диск:

(обратите внимание, вы указываете диск, а не раздел на нем)
И снова стоит обновить конфигурацию:

Теперь отменим chroot и выключим систему:

Теперь отключите внешний диск и запустите целевую машину снова. Вы должны вновь получить доступ к ней по SSH с ноутбука.
Теперь можно создать и подключить swap-раздел: выделите ему место с помощью cfdisk, затем выполните

(sync сбрасывает системные буферы)
возможно, завести раздел home и пр. (можно посмотреть здесь).
Система готова к работе.

источник

Debian на сервер без монитора

Сейчас нужно накатить мой любимый дебиан ленни, который я юзаю на всех своих серверах, на сервер, не имеющий монитора. По сему вижу такое решение проблемы — вытаскиваю винт, тащу его на работу, подтыкаю к рабочему компу и вкатываю туда полный дебиан ленни без иксов и графики. Сразу же поднимаю на нем ssh, засовываю демон ssh в rc-update и несу винт со свежеустановленным дебианом домой, где доблестно втыкаю его в роутер (сеть настраивается автоматом, благо dhcp) и коннектюсь с ноута по ssh для дальнейшей настройки.

Собственно сабж — какие могут быть подводные камни? (не подхватится железо на домашнем сервере, не заработает что)

из подводных камней — почистите привязку ethX к мак адресу сетевой карты

иначе новая сетевая карта станет не eth0 а eth1

Спасибо. *ушел раскручивать сервак*

Я думаю, что Debian Linux не запустится без видеокарточки и монитора, подключенного к ней.

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

Видюшка есть, Nvidia 7600gs

Просто подключить ее не к чему =)

ну и про /etc/fstab тоже не забудьте, еще загрузчик

Я в своё время подключил PCI-видеокарту и клавиатуру, и быстренько поставил систему на месте.

>как это так, Debian не может запусться при вынутой/нерабочей видюшке

Это бздуны-неосиляторы вынимали видюхи и дальше биоса дело не шло?

В принципе, все должно заработать.

> Я думаю, что Debian Linux не запустится без видеокарточки и монитора, подключенного к ней.

ты не задумывался как тогда все VPS-ы работают? Или на каждую виртуалку провайдеры по видео-карте держат?

>ну и про /etc/fstab тоже не забудьте, еще загрузчик

З.Ы. Монитора нет вообще, только ноутовый, к которому не поподключаешься особо, поэтому и спрашиваю, прокатит ли такая схема.

с ними? чтобы перед переносом системы на новое место они соответствовали,
хотя если переносится винчестер, то тут проще, стоит только обратить внимание на точное имя устройства или использовать uuid

>с ними? чтобы перед переносом системы на новое место они соответствовали,
хотя если переносится винчестер, то тут проще, стоит только обратить внимание на точное имя устройства или использовать uuid

Что-то у меня возникает ощущение, что проще оттарабанить комп на дачу, где стоит старый ЭЛТ-моник от него, поставить там сразу на него ось, поднять ssh и отнести обратно, без моника, конечно.

Читайте также:  Установка подогревателя боковых зеркал

ты не задумывался как тогда все VPS-ы работают?

На VPS’ы не ставят Debian, так как всё ПО из репозиториев очень старо.

А это идея. Хм, а сколько примерно он будет стоить? Видимо, мне один черт еще надо покупать винт ехать.

>На VPS’ы не ставят Debian, так как всё ПО из репозиториев очень старо.

Просто не вижу смысла ставить дома хреновину за 19 тыс.

iZEN> Просто на форуме раньше периодически стоны раздавались на тему: «как это так, Debian не может запусться при вынутой/нерабочей видюшке». Вопросы стонущих оставались без внятных ответов.

Без видеокарты не запустится ни одна ОС, так как в этом случае компьютер просто напросто не включится.

>Без видеокарты не запустится ни одна ОС, так как в этом случае компьютер просто напросто не включится.

Наглое 4.2. А как по-твоему тестят мать?

Так что там с Debian без монитора? Поднялся? Расскажи как.

Откуда вы такие специалисты беретесь ?
Несколько лет два сервера без видеокарты и клавиатур работают.

Ну как бы не все наверное в теме, что можно весь вывод направить на com порт. Цепляешь в нему бук, minicom и поехали.

>Откуда вы такие специалисты беретесь ? Несколько лет два сервера без видеокарты и клавиатур работают.

Эээ, да не вы чо не, запустится. Иксы на стандартных настройках не запустятся, а не ос.

А сервер странный какой-то, а как в настройки биоса залезть? Уж сколько лет на тех же пролиантах придумали как холодный старт делать по сети и систему удаленно ставить.

>Debian на сервер без монитора Сейчас нужно накатить мой любимый дебиан ленни, который я юзаю на всех своих серверах, на сервер, не имеющий монитора. По сему вижу такое решение проблемы — вытаскиваю винт, тащу его на работу, подтыкаю к рабочему компу и вкатываю туда полный дебиан ленни без иксов и графики. Сразу же поднимаю на нем ssh, засовываю демон ssh в rc-update и несу винт со свежеустановленным дебианом домой, где доблестно втыкаю его в роутер

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

>Так что там с Debian без монитора? Поднялся? Расскажи как.

Да у меня руки никак не дойдут новый винт купить.

vlb> Несколько лет два сервера без видеокарты и клавиатур работают.

Конечно — это же специальные серваки, а не персональные компьютеры. В обычном компьютере BIOS начинает пищать, когда видеокарты нет.

В обычном компьютере BIOS начинает пищать, когда видеокарты нет.

Прикинь! В обычном компе попищит и загрузится.

источник

Как настроить удаленный доступ к Ubuntu из Windows

В этой статье рассмотрим несколько способов удаленного подключения из Windows к Ubuntu.

Andrew E.

Andrew E.

Представьте, вы находитесь в одной комнате, сидя перед компьютером с Windows; данные, которые вам нужны, находятся в другой, на компьютере под управлением Ubuntu. Если оба компьютера находятся в одном доме, нет проблем; но что, если они находятся в одном офисном блоке?

Зачем удаленно подключаться к Ubuntu из Windows?

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

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

У вас есть два варианта установки удаленного соединения с компьютером Ubuntu: вы можете использовать Remote Desktop (RDP) или Virtual Network Computing (VNC).

Давайте рассмотрим каждый метод по очереди.

Узнайте IP-адрес вашего ПК Ubuntu

Прежде чем установить соединение с устройством Ubuntu, необходимо знать IP-адрес.

Первый способ самый простой. Физически подойдите к устройству Ubuntu, нажмите Ctrl + Alt + T, чтобы открыть терминал, и введите команду:

Ищите «inet addr» напротив соединения, которое вы в данный момент используете. Например, если вы пользуетесь Wi-Fi, ищите wlan0. Если компьютер подключен к сети для Ethernet, ищите eth0.

Другой способ найти IP-адрес — найти значок подключения на панели, щелкнуть правой кнопкой мыши и выбрать Сведения о подключении. Здесь вы найдете IP-адрес.

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

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

1. Подключение по SSH

Перед началом работы, возможно, вы захотите установить PuTTY на ваш компьютер (или просто попробовать встроенную функцию Windows SSH). Это позволит вам установить SSH-соединение, которое дает удаленный доступ к командной строке Ubuntu.

Читайте также:  Установка линукс на внешний hdd

Чтобы было понятно: это не опция удаленного рабочего стола, так как нет управления мышью. Но полезно иметь для удаленной установки инструменты, которые вы будете использовать. Однако SSH часто отключен по умолчанию, так что если он не установлен, вам придется это исправить.

Короче говоря, это зависит от того, какую версию Ubuntu вы используете и использовали ли вы SSH ранее.

После установки через терминал (sudo apt install openssh-server) вы сможете установить удаленное соединение (просто используя IP-адрес и имя пользователя и пароль Ubuntu) и использовать терминал для установки необходимых инструментов для RDP и для VNC.

2. Удаленный доступ с помощью протокола удаленного рабочего стола

Самым простым вариантом является использование протокола Remote Desktop Protocol или RDP. Встроенный в Windows, этот инструмент можно использовать для создания подключения к удаленному рабочему столу в вашей домашней сети. Все, что вам нужно, это IP-адрес устройства Ubuntu.

В то время как необходимое программное обеспечение предустановлено на Windows, вам нужно будет установить инструмент xrdp на Ubuntu. Для этого откройте окно терминала (Ctrl + Alt + T) и введите:

Подождите, пока он установится, затем запустите приложение Remote Desktop в Windows с помощью меню «Пуск» или «Поиск». Введите rdp и нажмите на Remote Desktop Connection (Подключение к удаленному рабочему столу). Когда приложение будет открыто, введите IP-адрес в поле Компьютер.

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

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

Устранение проблем с RDP

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

Таким образом, простой способ обойти это — просто выйти из пользователя.

Если это невозможно, попробуйте переключить RDP-соединение с использования сервера Xorg на использование X11rdp, подождите, пока это не сработает, а затем снова попробуйте Xorg.

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

3. Удаленный доступ с помощью виртуальной сети (VNC)

Другой вариант с полной функциональностью удаленного рабочего стола — VNC (Virtual Network Computing). Для этого требуется клиентское приложение на ПК с Windows и сервер на Ubuntu.

На удаленном ПК установите компонент TightVNC Server после проверки обновлений:

На этом этапе вам будет предложено установить пароль для подключения. Вам также будет присвоен номер рабочего стола, обычно :1. Запишите это.

Теперь, когда TightVNC Server настроен на Ubuntu, вам нужно будет установить клиент на Windows. Его можно скачать с сайта www.tightvnc.com/download.php — убедитесь, что вы выбрали правильную версию, так как она доступна в 32-битном и 64-битном варианте.

Инструменты TightVNC доступны только в комплекте, поэтому после установки ищите TightVNC Viewer в поиске Windows.

После запуска просмотрщика введите IP-адрес Ubuntu в хост, а затем номер рабочего стола. Это может выглядеть следующим образом:

Введите пароль при запросе и начните работу на удаленном рабочем столе!

Делаем TightVNC более безопасным

По умолчанию TightVNC зашифрует ваш пароль, но больше ничего. Это делает его небезопасным для подключений через интернет. К счастью, его можно сделать более безопасным, благодаря SSH и Xming.

Для этого скачайте и установите инструмент Xming для Windows из Sourceforge. После этого найдите ярлык рабочего стола, щелкните правой кнопкой мыши и выберите Properties (Свойства).

Ищите вкладку Shortcut, а в поле Target введите следующее:

Нажмите кнопку Применить, чтобы сохранить изменения, затем OK. Дважды щелкните значок, чтобы запустить Xming, затем откройте PuTTY. Здесь разверните меню слева до Connection > SSH > X11.

Установите флажок Включить переадреcацию X11, затем вернитесь к сеансу (Session) в верхней части меню.

Введите IP-адрес удаленного устройства и нажмите кнопку Открыть. Через несколько секунд будет доступно защищенное соединение с удаленным рабочим столом Ubuntu.

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

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

Доступны три основных варианта:

  • RDP: Он использует протокол Windows Remote Desktop Protocol, через реализацию xrdp с открытым исходным кодом.
  • VNC: Виртуальные сетевые вычисления являются альтернативой RDP, но менее безопасны.
  • VNC через SSH: смешивание VNC с SSH повышает безопасность соединения.

Вы также можете использовать SSH для управления терминалом на вашем компьютере Ubuntu.

Мы показали вам три способа установить удаленное соединение с вашим компьютером Ubuntu или сервером из Windows. Каждый из них имеет свои преимущества и недостатки. Но если вы просто хотите быстро окунуться в Ubuntu, почему бы не попробовать подсистему Windows для Linux, доступную в Windows 10?

источник

Добавить комментарий