Jump to content
Александр Рыжов

debian
Debian stable на кинетике

248 posts in this topic

Предлагаемое решение позволяет использовать среду Debian 8.11 "Jessie" или Debian 9.6 "Stretch" прямо на роутере.

Хороший пример использования этого решения — работающий сервер http://files.keenopt.ru/

 

Требования

  • кинетик с USB-портом,
  • draft-прошивка на основе kernel 3.x.
  • флешка, отформатированная в Ext2/Ext3/Ext4. В Windows для форматирования можно воспользоваться EaseUS Partition Master free.

 

Установка

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

[I] Jul 19 13:24:28 ndm: Opkg::Manager: disk is set to: fb4e34d1-3cab-fd19-b96d-4bb3a2d5ec84:
[I] Jul 19 13:24:28 ndm: Opkg::Manager: init script reset to default: /opt/etc/initrc.
[I] Jul 19 13:24:28 ndm: kernel: EXT4-fs (sda1): re-mounted. Opts: (null)
[I] Jul 19 13:24:28 ndm: Opkg::Manager: /tmp/mnt/FIT8GB/ mounted to /tmp/mnt/FIT8GB/.
[I] Jul 19 13:24:28 ndm: Opkg::Manager: /tmp/mnt/FIT8GB/ mounted to /opt/.
[I] Jul 19 13:24:28 npkg: inflating "debian-keenetic.tar.gz".
[I] Jul 19 13:24:28 ndm: Core::ConfigurationSaver: saving configuration...
[I] Jul 19 13:26:10 ndm: Opkg::Manager: /tmp/mnt/FIT8GB/ initialized.
[I] Jul 19 13:26:10 ndm: Core::ConfigurationSaver: configuration saved.
[I] Jul 19 10:26:10 root: Starting Debian services...
[W] Jul 19 13:26:11 ndm: kernel: Algorithmics/MIPS FPU Emulator v1.5
[I] Jul 19 13:26:11 ndm: Opkg::Manager: /opt/etc/initrc: Starting OpenBSD Secure Shell server: sshd.
[I] Jul 19 13:26:11 ndm: Opkg::Manager: /opt/etc/initrc: Done.
[I] Jul 19 10:26:11 sshd[448]: Server listening on 0.0.0.0 port 22.
[I] Jul 19 10:26:11 sshd[448]: Server listening on :: port 22.

 

Использование

Подключитесь с помощью SSH-клиента к роутеру:

  • хост: my.keenetic.net,
  • порт: 222
  • имя пользователя: root,
  • пароль: debian.

Перед вами user space среда Debian, использование которой ограничено лишь вашей фантазией и здравым смыслом. Вам доступны десятки тысяч пакетов репозитория и решения одного из самых крупных linux-комьюнити.

На Omni II среда ворочается довольно тяжело. На устройствах с 64МБ RAM рекомендуется в веб-интерфейсе включить Swap-файл.

 

Технические детали

При SSH-логине вы попадаете в chroot-среду, подготовленную по этому алгоритму. За пределами chroot-среды на роутере лишь busybox и скрипт /opt/etc/initrc, который запускает сервисы Debian при старте роутера и грациозно завершает их работу при перезагрузке и\или отмонтировании носителя:

[I] Jul 19 10:28:36 root: Stopping Debian services...
[I] Jul 19 10:28:36 sshd[448]: Received signal 15; terminating.
[I] Jul 19 13:28:36 ndm: Opkg::Manager: /opt/etc/initrc: Stopping OpenBSD Secure Shell server: sshd.
[I] Jul 19 13:28:36 ndm: Opkg::Manager: /opt/etc/initrc: Done.
[I] Jul 19 13:28:36 ndm: Opkg::Manager: disk unmounted.

В chroot-среде вы найдёте файл /chroot-services.list, в котором по одному на строчку перечислены те Debian-сервисы, что должны запускаться при старте роутера. Изначально там только ssh. Строчки в этом файле соответствуют именам стартовых скриптов из /etc/init.d.


Удачи в начинаниях.

deb.png

Edited by TheBB
new release 8.11/9.6
  • Thanks 8

Share this post


Link to post
Share on other sites
В 26.05.2018 в 09:59, alexsey bobrovitch сказал:

А как-то это можно пофиксить?

 

2 основных как варианта если раздел на диске один, то создать на диске под swap дополнительный раздел примерно на1/4 больше необходимого размера swap-файла (к примеру: если 256 мб swap - то раздел на 320 МБ) и отформатировать его в ext4 или ext3. В NTFS только если на диске всего 2 раздела (к примеру: ext4  - под OPKG и 2ой раздел  NTFS - отдан под хранение файлов - тогда этот же раздел используйте под создание swap - файла, но, мне показалось немного упала производительность) .  Не забывайте после подключения диска к Keenetic`у дать права на запись\чтение для доступа к разделам перед созданием включением swap. В Вашем случае просто создайте допраздел в ext4 и укажите его при включении swap.

Edited by Pesec

Share this post


Link to post
Share on other sites

На deb9 пароль debian не подходит, как можно решить? И порт ssh выставлен 22

Share this post


Link to post
Share on other sites

да-а у-уж, знатный фейл ))) залил, да не то (уже перезалито и перепроверено).

3 часа назад, iteelion сказал:

На deb9 пароль debian не подходит, как можно решить?

Надо добраться до debian/etc/ssh/sshd_config , раскомментировать `PermitRootLogin` и выставить `yes`

3 часа назад, iteelion сказал:

И порт ssh выставлен 22 

Раскомментировать `Port` и изменить его номер (или перекачать архив).

  • Thanks 1

Share this post


Link to post
Share on other sites

установил Debian 9.6 "Stretch" на роутере.

Подключаюсь по SSH на 222 - удачно.., но в логе:

pam_unix(sshd:session): session opened for user root by (uid=0)

pam_env(sshd:session): Unable to open env file: /etc/default/locale: No such file or directory
что бы это значило?
PS после обновления сгенерировался пустой вроде.
Edited by Pesec

Share this post


Link to post
Share on other sites

Обычно это означает нехватку RAM при генерации локалей. Можно решить установкой пакета:

apt-get install locales-all

 

  • Thanks 1

Share this post


Link to post
Share on other sites
dpkg-reconfigure locales

Как раз после этого упадёт при генерации выбранных локалей. Проверено на дешёвых VPS с малым количеством RAM.

  • Thanks 1

Share this post


Link to post
Share on other sites

На DSL (128 МБ) вполне себе нормально (вчера проверял)

  • Thanks 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×