LINUX.ORG.RU

История изменений

Исправление blexey, (текущая версия) :

Тут какое-то недопонимание задачи. Я хочу не вернуться в прошлое, а сравнить актуальное состояние системы с актуальным дефолтным (при том же наборе установленных пакетов).

Тогда тебе нужно:

  1. airootfs.sfs + pkglist.${ARCH}.txt из ISO
  2. содержимое всех установленных пакетов, отсутствующих в pkglist.${ARCH}.txt, разложенных по ФС
  3. выполнение всех установочных скриптов этих пакетов в какой-то песочнице с ФС (в пакетах встречаются не только тела файлов, но и выполняемые скрипты, модифицирующие систему)
  4. сравнение получившегося содержимого песочницы с реальной ФС

При этом из (2) и (3) выпадают все пакеты и их более не существующие версии, которые когда-то были установлены, снесены, но после которых, по каким-либо причинам, остались изменения в системе. Тут могла бы помочь история установки пакетов, например, из лога /var/log/pacman.log, но его содержимое также не является надёжным источником информации, да и упоминаемых там пакетов и их версий, опять-таки, может уже не существовать в природе.

Для (1) без (2) и (3), в принципе, хватило бы содержимого ISO образа, с которого ставилась система, или с которым ты хочешь сравнивать текущее состояние системы.

Исправление blexey, :

Тут какое-то недопонимание задачи. Я хочу не вернуться в прошлое, а сравнить актуальное состояние системы с актуальным дефолтным (при том же наборе установленных пакетов).

Тогда тебе нужно:

  1. airootfs.sfs + pkglist.${ARCH}.txt из ISO
  2. содержимое всех установленных пакетов, отсутствующих в pkglist.${ARCH}.txt, разложенных по ФС
  3. выполнение всех установочных скриптов этих пакетов в какой-то песочнице с ФС (в пакетах встречаются не только тела файлов, но и выполняемые скрипты, модифицирующие систему)
  4. сравнение получившегося содержимого песочницы с реальной ФС

При этом из (2) и (3) выпадают все пакеты и их более не существующие версии, которые когда-то были установлены, снесены, но после которых, по каким-либо причинам, остались изменения в системе. Тут могла бы помочь история установки пакетов, например, из лога /var/log/pacman.log, но его содержимое также не является надёжным источником информации, да и упоминаемых там пакетов и их версий, опять-таки, может уже не существовать в природе.
Для (2) без (3), в принципе, хватило бы содержимого ISO образа, с которого ставилась система, или с которым ты хочешь сравнивать текущее состояние системы.

Исходная версия blexey, :

Тут какое-то недопонимание задачи. Я хочу не вернуться в прошлое, а сравнить актуальное состояние системы с актуальным дефолтным (при том же наборе установленных пакетов).

Тогда тебе нужно:

  1. airootfs.sfs + pkglist.${ARCH}.txt из ISO
  2. содержимое всех установленных пакетов, отсутствующих в pkglist.${ARCH}.txt, разложенных по ФС
  3. выполнение всех установочных скриптов этих пакетов в какой-то песочнице с ФС (в пакетах встречаются не только тела файлов, но и выполняемые скрипты, модифицирующие систему)
  4. сравнение получившегося содержимого песочницы с реальной ФС

При этом из (2) и (3) выпадают все пакеты и их более не существующие версии, которые когда-то были установлены, снесены, но после которых, по каким-либо причинам, остались изменения в системе. Тут могла бы помочь история установки пакетов, например, из лога /var/log/pacman.log, но его содержимое также не является надёжным источником информации, да и упоминаемых там пакетов и их версий, опять-таки, может уже не существовать в природе.