Увімкнення SSH на RPi без екрана - натискання клавіш для raspi-config?


52

У мене немає екрана для мого Raspberry Pi. Я хочу в SSH в нього, але я отримую відмову в з’єднанні, тому я припускаю, що SSH не ввімкнено.

Як вказується в інших питаннях, я розглядав можливість включення сценарію boot_enable_ssh.rc на sd-картці. Однак у мене немає завантажувальної директорії в моїй ОС (або її не видно через кардрідер в моєму iMac) - 2012-12-16-wheezy-raspbian.img.

Я також спробував видати наступні команди за допомогою клавіатури usb:

pi [enter]
raspberry [enter]
sudo /etc/init.d/ssh start [enter]
raspberry [enter]

Але це не спрацювало. Зараз у деяких документах я бачу, що raspi-config - це перше, що з’являється у нещодавно завантаженому RPi. Може хтось скаже мені натискання клавіш, щоб включити SSH через raspi-config, будь ласка? Або якщо я на неправильному шляху, будь ласка, порадьте. Дякую.

РЕДАКТУЙ: намагаючись дотримуватися цієї поради https://raspberrypi.stackexchange.com/a/1706/4373 Я не бачу каталогів тощо при монтажі SD-карти на моєму iMac. Якщо я запускаю ls з терміналу, я отримую лише наступне:

bootcode.bin            fixup.dat               kernel.img            start.elf
cmdline.txt             fixup_cd.dat            kernel_cutdown.img      start_cd.elf
config.txt              issue.txt               kernel_emergency.img

Я накрутив зображення SD-картки?


Чи підключення екрана тимчасово не є варіантом?
Адам Холдсворт

Привіт Адам, у мене немає кабелю для цього.
Леммі

У мене немає мого RPI в моєму поточному місці, але, як я пам'ятаю, при першому завантаженні програми Raspian Wheezy він показує діалогове вікно налаштування ( sudo raspi-config), де можна включити SSH. Щоб побачити це, можливо, ви можете виконати кроки, показані на цьому відео: youtube.com/watch?v=nXvODj6YpAE ? Я знаю, що це трохи примітивний підхід, але я думав, що це згадаю :)
Lasse Christiansen

Відповіді:


22

ssh встановлюється, але не запускається за замовчуванням на runlevel 2, типовий для raspbian.
Перейменувати /etc/rc2.d/ssh/K??sshна/etc/rc2.d/ssh/S02ssh

РЕДАКТУВАННЯ
SD-карта поставляється з 2-х розділів. 1-й - vfat; 2-й є ext3. Вам потрібна деяка утиліта, щоб отримати доступ до неї з macosx.

1-й результат Google для ext2 macosx:
http://blog.applegrew.com/2011/12/access-ext3ext2-file-system-on-mac-osx-lion-10-7/

Також перевірте /var/log/auth.log

ОНОВЛЕННЯ 2016
За замовчуванням розповсюдження малини тепер є програмою малі, і systemdзамість цього використовується sysvinit. Тепер командний рядок systemctl enable ssh.socket(хоча ssh повинен бути включений за замовчуванням).

Примітка: я все ще маю /etc/rc2.d/ssh/S02sshі /var/log/auth.logпісля переходу з хрипкого до Джессі; це може бути, а може і не бути при встановленні свіжих джессі.


Дякую, за допомогою цього посилання я тепер бачу розділ. У мене немає папки ssh в rc2.d. У мене в корені rc2.d є файл S02ssh (схожий на посилання).
Леммі

Гаразд, файл S02ssh є посиланням на init.d / ssh, тому я припускаю, що SSH вже ввімкнено?
Леммі

K означає вбити; S означає початок. Файли init.d посилаються на "стоп" або "старт" як аргумент залежно від назви файлу. На моєму зображенні від 16 грудня IIRC це було K.
M Noit

1
Гаразд, я зараз зайнявся - я намагався підключитися до неправильної ip адреси. RPi не відображався з терміналу Mac, але я міг бачити це з конфігурації маршрутизатора. сторінки. Тож я позначу цю відповідь правильною, оскільки вона допомогла вказати мені на рішення та буде корисна іншим користувачам Mac, які дивляться на свої SD-карти. Як побічна проблема, здається, що поточний дистрибутив за умовчанням включив SSH.
Леммі

1
@Frankenstein: оновив свою відповідь, дякую за перезавантаження.
M Noit

117

Все, що вам потрібно, це помістити порожній файл з назвою 'ssh' на завантажувальний (FAT) розділ вашої SD-карти (не потрібно монтувати ext3). Тестовано з 2016-11-25-raspbian-jessie-lite.img.

Джерело: https://www.raspberrypi.org/documentation/remote-access/ssh/

Більше інформації про оновлення безпеки листопада '16: https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/


13
Це має бути прийнята відповідь станом на 16 грудня. Але , будь ласка , замініть посилання (яка не пояснює обезголовлене установку в будь-якому випадку) з допомогою відповідного запису в блозі raspberrypi.org/blog/a-security-update-for-raspbian-pixel
flaschbier

4
Завантажувальний розділ - це той, який має start.elfфайл. Пов’язаний пост у блозі мене збентежив, назвавши його /boot/каталогом
raphael

1
це працює, перевірені - 2017-04-10-raspbian-jessie
Divyanshu Jimmy

1
Можна підтвердити цю роботу з 2019-04-08-raspbian-stretch
Oenotria

1
Підтверджено 2019-07-10-raspbian-buster.
BrainStone

15

У мене були ті ж проблеми, що використовували зображення хрипів.

Мета повинна мати багажник Pi вгору , так що ви можете SSH в нього з іншої системи, без необхідності постійно підключати монітор і клавіатуру.

Проблема в тому , що в той час як служба SSH включена, як уже зазначалося вище, це ще не налаштований, так що ви не можете підключитися , навіть якщо мережа працює. Ось завдання, щоб налагодити це:

  1. Покладіть зображення на SD-карту. (Покрито в іншому місці.)

  2. Переконайтесь, що ви зможете визначити TCP / IP-адресу, як тільки ви завантажуєте Pi.

    підказка: Подивіться на свій маршрутизатор, щоб побачити, яким адресам призначено.

  3. Переконайтеся, що sshзапускаються та дозволять з'єднання . Ось як я це зробив:

    а. Змонтуйте другий розділ SD Card, великий - з etcкаталогом.

    б. Створіть файлetc/SSHFLAG

    c. Вставте наступний код etc/rc.localтрохи вище exit 0рядка.

    if [ -e /etc/SSHFLAG ]; then
      /usr/sbin/update-rc.d -f ssh defaults
      /bin/rm /etc/SSHFLAG
      /sbin/shutdown -r now
    fi
    

    Ідея полягає в тому, що коли ваші Pi завантажуються, файл SSHFLAG запускає його перенастроювати ssh (регенеруючи ключі та запускаючи послугу), видаліть файл прапора, щоб це відбулося лише один раз, і перезавантажте систему. Працював для мене, YMMV


Гарне рішення проблеми.
0xC0000022L

Після цього я повинен був додати /etc/init.d/ssh startв /etc/rc.localфайл, так запуску служби SSH.
Іван Перес

Іван: Не впевнений, чому моє рішення не вдалося для вас. Найбільш ймовірними поясненнями є а) помилка друку або b) зміни пакету rpi ssh. Напевно, не варто налагоджувати. Ваше рішення може не працювати, якщо служба ssh ще не налаштована (тобто, якщо ключі не були створені).
Нортально

Я мав точно такий же досвід, як Іван. ssh почав працювати.
Robert3452

7

Для безголівкових налаштувань SSH можна ввімкнути, розмістивши на завантажувальному розділі SD-карти файл з назвою "ssh" без будь-якого розширення.


1
Не "може бути", але повинно бути і з листопада 2016 року. Питання - з січня 2013 року.
techraf

3

З мого вчорашнього досвіду: 2012-12-16-wheezy-raspbian.img (пропонований як "офіційний дистрибутив") SSH увімкнено за замовчуванням. Отримайте його з http://www.raspberrypi.org/downloads

Вам не потрібно нічого редагувати на картці або запускати raspi-config у «сліпому режимі».

Просто переконайтеся, що ви використовуєте правильну IP-адресу. Використовуйте веб-інтерфейс маршрутизатора DHCP, щоб отримати IP з таблиці; використовувати кабельний, а не WiFi; переконайтеся, що SD-карта в порядку (ви можете спробувати іншу SD-карту); переконайтеся, що файлова система SD карт у порядку (спробуйте написати зображення ще раз і не забудьте правильно "вийняти" карту).


Хоча суть правдива, деталей немає. sshне включено за замовчуванням Натомість regenerate_ssh_host_keysувімкнено, що потім увімкне sshпісля генерації ключів хоста та відключить себе. Звичайно, чистий ефект такий же.
0xC0000022L

2

Перейшов на цю сторінку через Google після того, як пару місяців не використовував pi. Після останнього оновлення ssh відключається за замовчуванням.

На користь тому, хто робить безглузду установку Джессі:

пі

малина

sudo nano / boot / ssh

тест [або будь-який інший текст]

[натисніть ctrl-x]

у

sudo shutdown -r зараз

Готово! Все найкраще.

Не забудьте змінити свій пароль та відключити користувача 'pi' через ssh.


1
Навіщо комусь це робити, коли /boot/sshїх можна створити за допомогою того самого комп’ютера, на якому ви використовували флеш-карту SD? Крім того, якщо ви відключили користувача за замовчуванням, як зробити вхід?
Дмитро Григор’єв

1

На вашій SD-картці є декілька розділів, а файли, які ви бачите на своєму Mac, - це файли з розділу, який встановлений як /boot/на Raspberry.

У вас повинен бути інший розділ на SD-картці, який би зберігав кореневий (ака /) розділ із усіма /etc/...речами в ньому. Обов’язково ввімкніть підтримку файлової системи EXT3 на вашому Mac, щоб отримати цю доступну в Mac OS X.


1

Ще я поставив цей файл на свій завантажувальний розділ і SSH запустився автоматично. Посилання на boot_enable_ssh.rc

Насправді я щойно знайшов модифікацію Debian для RPi в мережі, в якій SSH був включений за замовчуванням. Я перевірив завантажувальний розділ і знайшов цей файл!


1
tib20 відповідає за включення SSH, якщо ви його втратили. Просто опустіть файл, який він зв'язав, прямо у завантажувальний розділ, і він прекрасно працює! Дякую тобі за це. Я втратив SSH після зміни імені хоста на пі.

1

Я чую багато питань "не вдалося знайти в мережі". Я запропоную запустити цю програму, щоб знайти всі машини з відкритим портом ssh.

nmap 192.168.0.1/24 -p 22
# change the 192.168.0.1 part to match the first 3 octets of your ip address
# as seen via: ifconfig

Це було дуже важливо для мене, оскільки у мене немає пароля адміністратора для маршрутизатора, до якого я підключаюся. Тепер я скажу, що навіть коли я ідентифікував ip адресу свого малинового пі, я все ще не міг з'єднатися, хоча nmap каже, що порт був відкритим. Я негайно отримую повідомлення про ...

Connection closed by 192.168.0.116

Я досі цього не зрозумів.


1

Тільки для оновлення існує набагато простіший спосіб зробити це.

Станом на листопад 2016 року в Raspbian за замовчуванням відключений сервер SSH. > Вам потрібно буде ввімкнути це вручну. Це робиться за допомогою raspi-config:

Введіть sudo raspi-config у термінал, спочатку виберіть Параметри взаємодії, потім> перейдіть до ssh, натисніть Enter та виберіть Увімкнути або відключити ssh-сервер.

Для безголівкового налаштування SSH можна ввімкнути, розмістивши на завантажувальному розділі SD-карти файл з назвою 'ssh' без будь-якого> розширення.

Джерело

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.