LINUX.ORG.RU

Сложный, но критически важный вопрос

 , , ,


0

2

Имеется убитая Debian 8.6.0 На ней была установлена уникальная програма (написанная специально для заказчика, испульзующая различные узлы сети и устройства предприятия) Соответственно даже если найти инсталик - ситуацию это не спасет, т.к. настройки куда важнее. Попробовал решить следующим образом

  1. на другой диск накатил новую ОС (само собой тоже 8.6.0)
  2. скопировал все папки, кроме /boot, /dev, загрузка худо-бедно пошла, но падает в emergency mode в systemctl ругается:
    1. systemd-modules-load.service
    2. systemd-random-seed.service | Failed load kernel modules
    3. systemd-remount-fs.service | Failed load/save Random Seed
    4. systemd-update-utmp.service | Failed Update UTMP about system Boot/Shutdown

По ходу написания вспомнил, что разметил диск не так, как было на «родной» операционке,может ли это быть причиной и стоит ли заморочится, и накатить заново?

Очень прошу помочь

А что ты сделать-то хочешь? Перенести систему целиком? Или перенести приложение с настройками на новую машину?

Zhbert ★★★★★
()

Переноси нормально: ищи «инсталик», ввеовыривай только данные.

Копировать «убитую» непонятно как систему поверх здоровой это смелый неортодоксальный ход, результат можно сразу в утиль.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

смелый неортодоксальный ход, результат можно сразу в утиль

Как ты ловко заменил слово «тупак» =)

Zhbert ★★★★★
()

На ней была установлена уникальная програма (написанная специально для заказчика, испульзующая различные узлы сети и устройства предприятия)

Не одному мне так не повезло

А предположения где лежат данные и конфиги от этой уникальной программы есть?

  • Накатить голый 8.6.0,
  • Доустановить пакеты которые присутствуют в убитом ls /var/lib/dpkg/info/*list
  • Дальше собираешь свою софтину (бинарники, ресурсы, когфиги) и перетаскиваешь на новую систему
Kolins ★★★
()
Ответ на: комментарий от shoorpin

В идеале систему целиком

Перенести поломанную систему на новое железо?

Zhbert ★★★★★
()
Ответ на: комментарий от Kolins

Дальше собираешь свою софтину (бинарники, ресурсы, когфиги) и перетаскиваешь на новую систему

Это если софтина кошерная, и конфиги хранит как положено - в хомяке. А если она творит абы что и абы как - то тут уже очень легко потерять что-то в процессе.

Zhbert ★★★★★
()

Я бы склонировал весь старый диск на новый и на новом попробовал переустановить все пакеты:

for p in `dpkg -l | egrep '^ii' | awk '{print $2}'`; do apt-get install --reinstall $p ; done

Когда-то мне этот способ помог, когда полуживую систему с посыпавшегося диска вытащил.

ololoid ★★★★
()
Ответ на: комментарий от Zhbert

Его задача получить 2 системы с одинаковой версией и одинаковым набором пакетов, потом получает список файлов там и там, ищет чего на новой системе не хватает и смотрит относится к софтине или нет если относится то копирует.

Ну или тупо скопировать все на новый диск, поправить fstab, переустановить grub и по ходу загрузки решать косяки

Kolins ★★★
()

убитая Debian

Что под этим имеется в виду?

sin_a ★★★★★
()
Ответ на: комментарий от Zhbert

Ну всякие /dev /proc и /sys исключить естественно. Потом глазами отсеять явно не подходящие варианты, потом смотреть оставшиеся. Да решение топорно и выглядит туповато, но за 10-30 минут можно решить проблему. Конечно, это для одного хоста, если их тысячи, то решение так себе.

Kolins ★★★
()

Ну /boot наверное можно было бы и не исключать. А после этого попробовать еще раз.

slowpony ★★★★★
()

То есть про /etc/fstab ты конечно забыл?

Nastishka ★★★★★
()
Ответ на: Решено от shoorpin

проблема решилась

Надеюсь, ты помнишь про необходимость бэкапов, в том числе конфигурации. А то как решилась — так и возникнет.

hobbit ★★★★★
()
Ответ на: комментарий от hobbit

Более того, версионирование конфигов придумали мудрые люди :) А особенно для таких уникальных софтян актуально.

anonymous
()

Да, и для мимокрокодилов, на будущее (Мы когда-то даже скриптик для этого вроде делали, но не сохранили, по ходу ;D):

1) сформировать список всех файлов на ФС: find /mnt/deadbedian/|sed 's:^/mnt/deadbedian::'|sort > /tmp/list1.txt;

2) сформировать список файлов, подконтрольных ПМ: cat /mnt/deadbedian/var/lib/dpkg/info/*.list|sort|uniq > /tmp/list2.txt;

3) comm -23 /tmp/list1.txt /tmp/list2.txt — выведет список файлов, которые неподконтрольны ПМ — дальше решайте, чё с этим делать :P

Ну и если саму программу таки опакетили, то содержимое пакета в том же /var/lib/dpkg/info/ можно найти, название только надо знать.

mertvoprog
()
Последнее исправление: mertvoprog (всего исправлений: 1)
Ответ на: комментарий от Zhbert

Что тут непонятного? Мы вот 8 лет плавно обновляем основную систему, ставили 7-й бедиан, сейчас уже 12-й. И на новое железо с нуля ставить не собираемся, а переносить эту. Настроенные сервера также помогали людям обновлять без переустановки, хотя даже техподдержка хостера отказывалась. Продолжайте обзывать непереустановляторство «тупаком», чо :P

mertvoprog
()
Ответ на: комментарий от mertvoprog

Продолжайте обзывать непереустановляторство «тупаком», чо :P

Речь идет про «убитую» систему и предлагалось скопировать ее поверх здоровой. Что это, если не тупняк?

Zhbert ★★★★★
()
Ответ на: комментарий от Zhbert

«Скопировать поверх» тоже можно аккуратно. Попутно притащив ворох некрозависимостей, которые кроме как из полного образа старого дистрибутива, выковырянного из архива — уж и достать неоткуда, проще со старой системы.

mertvoprog
()
Ответ на: комментарий от mertvoprog

«Скопировать поверх» тоже можно аккуратно.

А теперь еще раз, но в контексте знаний ТСа, который пришел сюда об этом спрашивать.

Zhbert ★★★★★
()
Ответ на: комментарий от mertvoprog

ТС кретином-калишкольником не выглядят.

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

Zhbert ★★★★★
()

systemd-random-seed.service

похоже, что нет какого-то модуля ядра

systemd-remount-fs.service

похоже, что следствие первой проблемы

попробуй напиши в грабе init=/bin/bash, загрузись и посмотри, что конкретно пытаются делать эти сервисы

IvanR ★★★
()
Последнее исправление: IvanR (всего исправлений: 1)
Ответ на: комментарий от Siborgium

emergency-mode

В мои времена таких страшных слов не было

IvanR ★★★
()
Ответ на: комментарий от Siborgium

Разве мой способ не сработает? зайти в консоль, смонтировать корневую фс и посмотреть, что делают объявленные сервисы

IvanR ★★★
()
Ответ на: комментарий от IvanR

Разве мой способ не сработает?

Сработает – но отнимет куда больше времени. Это можно сравнить с запрыгиванием через окно вместо прохода через заботливо раскрытую для вас дверь.

В мои времена таких страшных слов не было

man 7 systemd.special

что делают объявленные сервисы

Вот что они делают:

$ systemctl status --no-pager systemd-modules-load.service
● systemd-modules-load.service - Load Kernel Modules
[...]

$ systemctl status --no-pager systemd-random-seed.service
● systemd-random-seed.service - Load/Save Random Seed
[...]

$ systemctl status --no-pager systemd-remount-fs
● systemd-remount-fs.service - Remount Root and Kernel File
[...]

$ systemctl status --no-pager systemd-update-utmp.service 
● systemd-update-utmp.service - Record System Boot/Shutdown in UTMP
[...]

Полегчало? Какие дальнейшие действия предполагается принять?

Siborgium ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.