Jump to content
XPEnology Community

snfesh

Transition Member
  • Posts

    12
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

snfesh's Achievements

Newbie

Newbie (1/7)

1

Reputation

1

Community Answers

  1. Всем привет. Подскажите как на этом загрузчике обновлять DSM? Аналогично процессу установки (входить в режим конфигурации, выбирать билд, ждать пока пропатчит его, потом перезагружаться и устанавливать соответствующий билду pat через веб-морду установщика DSM) или есть более простой метод уже (типа просто обновиться через панель управления DSM)?
  2. DSM 7.1.1-42951 - Результат: УСПЕШНО - Загрузчик до обновления: JUN'S LOADER v1.03b - 3615xs - Версия DSM до обновления: DSM 6.2.3-25426 Update 3 - Загрузчик после обновления: Automated Redpill loader - Версия DSM: DSM 7.1.1-42951 - Дополнительные модули (addons): Нет - Аппаратное решение: Asus IPIBL LB, Intel Core i3-4130 - Пул хранения 2 x 8 ТБ RAID 1 - Сетевая карточка: встроенная RT8111C 100 Мбит/сек - Короткий комментарий: загрузчик установлен на USB-флешку, проводил обновление с сохранением файлов и конфигурации. После обновления DSM и всех пакетов конфигурация полностью сохранена, ничего перенастраивать не надо было. Единственное, что для виртуального окружения python3 пришлось перенаправить на путь истинный bin/python3 из-за того, что Python3 теперь встроен в систему, а не устанавливается отдельным пакетом.
  3. DSM: 6.2.3-25426 Update 3 - Результат: УСПЕШНО - Версия и модель загрузчика: JUN'S LOADER v1.03b - 3615xs - Версия DSM: 6.2.3-25426 Update 3 - Дополнительные модули extra.lzma: extra.lzma for loader 1.03b ds3615 DSM 6.2.3 v0.11_test - Аппаратное решение: Asus IPIBL LB, Intel Core i3-4130 - Пул хранения 2 x 8 ТБ RAID 1 - Сетевая карточка: встроенная RT8111C 100 Мбит/сек - Короткий комментарий: загрузчик установлен на SD-карту.
  4. Не нашёл в интернете простого решения вопроса, а именно: Запуск проекта Django на Synology в связке с пакетами Web Station, Apache 2.4 и модулем mod_cgid на последний. Поэтому решил написать свой метод решения данного вопроса. Начнём с того, почему это стало проблемой и почему нужна эта инструкция. Всё потому, что Django официально не поддерживает CGI, ему требуется WSGI, FastCGI, SCGI или AJP. Я не нашёл вменяемого способа как установить вышеуказанные модули на Synology и подключить их к Apache, который используется в Web Station. Если кто подскажет как это сделать без docker, виртуальных машин и установки каких-то неофициальных пакетов, прошу присоединяться к теме. Метод, описанный в данной теме, позволяет использовать CGI как прослойку для запуска встроенного в Django модуля WSGI, то есть дополнительная установка и подключение каких-либо модулей к Apache не требуется, запуск дополнительного веб-сервера через Python3 не требуется и так далее со всеми вытекающими. Но скорость запуска проекта может быть ниже из-за использования CGI вместо стандартного WSGI, надо учитывать. Итак, начнём установку и запуск первого проекта Django на нашем Synology. Для этого идем следующим образом: 1. Устанавливаем пакеты Python3, Apache 2.4 и Web Station из центра пакетов. 2. Подключаемся к серверу по SSH: ssh -l ЛОГИН -p НОМЕР_ПОРТА АДРЕС_СЕРВЕРА 3. Определяемся где у нас будет находиться проект. По умолчанию, Web Station создаёт папку /volume1/web/, куда можно сразу загружать проект. Но если у вас планируется хостить на сервере более 1 сайта на движках, то лучше создать новую папку внутри указанной выше папки, например, django-sites. mkdir /volume1/web/django-sites 4. Установим PIP - менеджер пакетов для Python. По умолчанию, он не установлен в DSM. sudo python3 -m ensurepip 5. Далее мы будем действовать уже в виртуальном окружении Python, чтобы исключить каких-либо конфликтов и не забивать системный Python ненужными ей пакетами. Для этого создадим виртуальное окружение внутри ранее созданной папки и активируем созданное виртуальное окружение python3 -m venv /volume1/web/django-sites/venv source /volume1/web/django-sites/venv/bin/activate 6. Если вы всё сделали верно, то увидите перед именем пользователя надпись (venv). Это означает, что вы находитесь в виртуальном окружении, которое мы создали. Теперь установим Django python3 -m pip install Django 7. Далее перейдём в каталог с проектами и создадим наш первый проект Django под названием, например, first_project cd /volume1/web/django-sites/ django-admin startproject first_project 8. Проект создан, должна была появиться папка /volume1/web/django-sites/first_project, внутри которой расположены файлы Django. Теперь нам необходимо заставить CGI запускать WSGI и наш проект Django. Знаю, что в PIP есть пакет django-cgi, который позволяет это делать, но моей задачей было запустить Django версии 2.2, а этот пакет требует Django версии 3. Зато нашёл на просторах Github другой проект django-cgi, который работает в теории с любой версией Django (тестировалось на версии 2.2 и 4.0). Так как мы использует Python3, то и файл django.cgi нам нужен именно от этой версии. Скачаем django.cgi и загрузим в наш проект. Я для его скрытности загрузил его чуть глубже, чем можно было бы. wget https://raw.githubusercontent.com/chibiegg/django-cgi/master/django-python3.cgi -O /volume1/web/django-sites/first_project/first_project/django.cgi 9. Далее отредактируем скачанный файл /volume1/web/django-sites/first_project/first_project/django.cgi любым удобным вам способом. Нам необходимо сделать следующее: В строке 1 поменять путь к python на python из нашего виртуального окружения #!/volume1/web/django-sites/venv/bin/python3 Раскомментировать строку 36 и прописать путь к нашему проекту Django sys.path.append("/volume1/web/django-sites/first-project") И в строке 97 изменить в переменной среды DJANGO_SETTINGS_MODULE наименование проекта на наше os.environ['DJANGO_SETTINGS_MODULE'] = 'first_project.settings' 10. Теперь в файле /volume1/web/django-sites/first_project/first_project/settings.py в строке 28 укажем, что сайт может быть открыт под любым доменом. При необходимости, укажите только нужный домен. ALLOWED_HOSTS = ['*'] 11. Далее создадим файл .htaccess в папке /volume1/web/django-sites/first_project/, в котором укажем, что любые запросы должны идти через django.cgi. Содержимое файла должно быть следующим: RewriteEngine On RewriteBase / RewriteRule ^(first_project/django\.cgi/.*)$ - [L] RewriteRule ^(.*)$ first_project/django.cgi/$1 [L] 12. На этом настройка Django закончена и осталось только настроить Web Station. Поэтому мы можем выйти из виртуального окружения и отключиться от SSH. deactivate exit 13. Теперь открываем DSM, далее Web Station, идём на вкладку "Виртуальный хост" и нажимаем Создать. Появится окно создания виртуального хоста. В имя хоста вводим доступный серверу домен, например, test.site.ru. В качестве Внутреннего сервера HTTP выбираем Apache 2.4. Должно получиться вот так: Далее нажимаем ОК и виртуальный хост должен быть создан. Если всё сделано верно, при переходе на свой домен, вы должны увидеть страницу приветствия Django.
  5. Я указываю VIP PID 0xf400 и 0xf400, система видит карт ридер под теми VIP PID, что сейчас указаны. То есть в любом случае эти разделы показывает.
  6. Только одна маленькая проблема появилась после этого всего. После загрузки DSM разделы загрузочной SD-карты автоматически монтируются в usbshare1-1 и usbshare1-2. При этом VID и PID карт-ридера изменяется на 0xf400 и 0xf400 соответственно, видимо поэтому и монтирует. Есть возможность запретить автоматически монтировать устройство по VID и PID?
  7. С флешки всё установилось и запустилось. Так что подтверждаю, что проблема была именно в VID PID SD-карты. Сейчас указал VID PID карт-ридера, который получил через сам DSM командой lsusb и загрузка заработала. То есть сейчас DSM 6.2.3 загружается с SD-карты. Спасибо за помощь.
  8. VID 0x0003 PID 0x0000 На данном форуме вычитал, что данное сочетание работает с SD-картами. И оно работало при установке 6.1.7 и 6.2.2. Почему-то именно на 6.2.3 не хочет работать. Я когда-то пробовал ставить VID PID картридера, но выдавало так же ошибку 13. Я попробую установиться с флешки, чтобы наверняка, но подозреваю, что получу тоже ошибку 13. VID PID SD-карты я не нашёл способ получить, всегда выдаёт данные картридера.
  9. Итак, решил, что обновление требуется, потому что нужны более свежие пакеты Synology Drive и PHP 7.4. После успешной установки DSM 6.1.7 перенёс boot загрузчик на SD-карту. Уточню, что уверен в её работе и правильности прописанных VIP/PID в grub.cfg, потому как удалось именно восстановить DSM без повторной установки после мигрировать до 6.2.2. Для обновления записал на SD-карту 128МБ загрузчик 1.03b, вытащил из DSM_DS3615xs_24922.pat файлы rd.gz и zImage и закинул их в загрузчик на SD-карте с заменой, также заменил extra.lzma на модифицированный v0.5_test. Таким загрузчиком удалось загрузиться и "мигрировать" до DSM до 6.2.2-24922 Update 6. Но на этом удача закончилась. Попытка проделать то же самое для "миграции" до версии 6.2.3-25426 не удалась. Также забросил в загрузчик модифицированный extra.lzma v0.11_test, rd.gz и zImage из DSM_DS3615xs_25426.pat в загрузчик на SD-карте, загрузился в Synology Web Assistant, но при попытке установки DSM_DS3615xs_25426.pat выдаёт ошибку 13 (файл возможно повреждён). В связи с этим вопрос: как подключиться в режиме установки по Telnet? Запрашивает логин и пароль, но не знаю какой вводить. Хочу в логах поискать что приводит к ошибке.
  10. Я просто через DSM обновил до Update 3 версию. Возникли другие теперь вопросы. Я установил на свою конфигурацию DSM 6.1.7, всё отлично работает. Но не могу установить PhpMyAdmin, потому что отсутствует PHP 7.4, который есть в DSM 6.2. Это особой проблемы не доставляет, из архива дёрнул более старую версию PhpMyAdmin и всё работает. Но душа требует обновления всей системы. Не думаю, что пока стоит замахиваться на DSM 7, хотя бы до 6.2.3. Если я обновлю систему до 6.2.3, то загрузчик 6.1.7 работать не будет, как я понимаю. А загрузчик от 6.2.3 работать не хочет. В связи с этим есть есть ряд вопросов: Есть ли смысл вообще дёргаться с версии 6.1.7 до 6.2.3 или лучше уже дождаться нормального загрузчика для 7 версии? Чтобы обновить саму систему до 6.2.3, достаточно обновиться через веб-интерфейс DSM и далее заменить загрузчик на новый? Что можно дёрнуть из старого загрузчика, чтобы загрузчик в 6.2.3 заработал? Может extra.lzma, но пишут, что должен быть соответствующий версии DSM.
  11. Спасибо за помощь. ПК появился в сети, но DSM не получается установить. Пишет ошибку "Не удалось установить файл. Возможно, файл повреждён. (13)". Брал загрузчик для DS3617 и DSM файл synology_broadwell_3617xs.pat Может попробовать другой загрузчик (для DS3615 или DS916+) и соответствующий файл DSM? DS3615 - аналогичная ситуация. DS916+ - не видно в сети, хотя на мониторе написано "Booting the kernel" (в более новой версии даже этой надписи не было). Загрузил файл DSM отсюда https://archive.synology.com/download/Os/DSM/6.1.7-15284 и нормально встало. В папках 1-3 видимо обновления. Ещё раз спасибо за помощь.
  12. Всем привет. Может кто подсказать что я делаю не так при попытке установить XPEnology на старенький ПК. Нашёл старые комплектующие и собрал заново ПК HP Compaq dx2400 Microtower PC со следующими характеристиками: Материнская плата Asus IPIBL LB Процессор Intel Core2 Duo E4600 2.4 ГГц ОЗУ 1 ГБ (пока не докидывал больше) На материнке сетевой чип RT8111C, судя по документации Согласно инструкции загрузил на флешку загрузчик (пробовал все версии: 1.03b для ds3615, ds3617 и 1.04b для ds918), прописал в grub.cfg данные флешки, серийник не менял, а mac адрес пробовал менять и оставлять какой изначально был. В общем, с флешки грузится, пишет "Happy hacking", но ни в браузере, ни в Synology Assistant, ни даже роутер не видит устройства. Пробовал брать из темы с драйвера файлы подсовывать разные extra.lzma, включая соответствующие rd.gz и zImage, но результат один и тот же всегда. Пробовал подкидывать дополнительно сетевую карту PCIe x1, но она тоже не помогла. Как можно понять что не нравится системе? Есть ли какой-то режим дебага при загрузке?
×
×
  • Create New...