Я искал ответ на несколько часов, но я все еще не уверен, как сравнивать два системы Linux друг с другом. У меня есть доступ к ним через SSH.
Что я пытался: ранее я думал, что лучшее представление о сравнении двух систем делает изображение этих систем, используя DD, а затем сравнивать их (но я пока не знаю, как, пока). Создание копии первой системы заняло несколько минут, но когда я пытался сделать то же самое на второй машине - ну я ждал 24 ч, а затем убил процесс. Sth пошло не так.
Команда:
ssh -v -i /path/to/key ubuntu@ipAddress "sudo dd if=/dev/sda | gzip -1 -" | pv | sudo dd of=image.gz
(- V был излишне, моя ошибка) показала мне:
debug1: Sending command: sudo dd if=/dev/sda | gzip -1 -
и день позже Афтир убил
debug1: channel 0: free: client-session, nchannels 1
64.0KiB 22:03:20 [ 845miB/s] [<=> ]
debug1: fd 1 clearing O_NONBLOCK
Killed by signal 2.
, я что-то не так?
Хорошо, это была первая проблема, но Дело в том, что я хочу сравнить две системы, и я даже не уверен, если этот метод прав. Могу ли я сравнить два файла / изображения .gz? Любое программное обеспечение для этого?
Я предполагаю, что вы не хотите, чтобы сравнение пакета, а фактическую разницу между 2 системами.
2 Опции, о которых я могу подумать:
Вы можете скопировать всю 2-я машина и поместить его в каталог на 1-й машине. Давайте предположим / opt /
пусто на вашей машине, вы можете поставить / etc /
в / opt / etc /
и сделать ...
diff -RU / etc / opt / etc
Используйте rsync
rsync
с вариантом сухого запуска из системы1:
rsync -navrc --delete / etc / * {system2}: / etc / ets /
-N (или --DRY-RUN), -V Verbose, -R Рекурсивный, -A-архивный режим, Checksum Checksum (должен иметь: он сообщит о ложных срабатываниях без него). - Действительно, чтобы он показать файлы, не присутствующие на System1.
Сделайте это для нормальных каталогов ( / var /
, /
, /
, , / etc /
etc), а не временные файловые системы, такие как / TMP /
, / proc /
.