Skip to content

VMelnikV/Logging-the-program-installation-process

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Опис та можливості

Призначення

Скрипт призначений для моніторингу змін у файловій системі під час встановлення програм різними способами на Linux (Debian/Ubuntu/Mint та похідні).
Він допомагає відстежити:

які файли були створені,

які файли були змінені,

і, для текстових файлів, показує diff до/після зміни.

Скрипт корисний для аудиту, налагодження, або контролю встановлення нових пакетів.


Основні можливості

Підтримка різних способів встановлення

--deb package.deb --- установка локального .deb файлу через dpkg.

--apt package-name --- установка пакету з репозиторіїв через apt-get.

--flatpak flatpak-app-id --- установка пакету через Flatpak.

--snap snap-name --- установка пакету через Snap.

--gui --- моніторинг установки через графічний інсталятор (Software Manager).

Моніторинг змін файлової системи

Скрипт використовує fatrace для реєстрації всіх подій файлової системи (створено, записано, видалено).

Лог змін зберігається у тимчасовий файл $LOG.

Diff для текстових файлів

Для текстових файлів визначає file.

Якщо файл змінено (W), скрипт зберігає його стан до/після і формує diff.

Звіт про зміни

Після завершення установки скрипт формує звіт у $FILES_REPORT, який включає:

список нових та змінених файлів,

diff для текстових файлів,

повний лог fatrace,

додаткову інформацію про користувача та моніторинг.

Перевірка середовища

Скрипт перевіряє, чи встановлені необхідні інструменти:

fatrace --- для моніторингу змін,

file --- для визначення текстових файлів,

diff --- для побудови diff змін.

Якщо будь-який інструмент відсутній, виводиться повідомлення, що потрібно встановити.

Перевірка root прав

Скрипт вимагає запуск від root (sudo) для моніторингу системних файлів.

Підтримка користувача

Скрипт визначає фактичного користувача ($SUDO_USER) і може запускати GUI програми від його імені.


Переваги

Підтримка всіх основних способів установки: deb, apt, flatpak, snap, GUI.

Повний аудит змін у файловій системі.

Простий і зручний звіт із новими та зміненими файлами.

Не втручається у систему, тільки читає події файлів через fatrace.

Приклад використання

Встановлення локального deb-пакету

sudo ./deb-watch-unified.sh --deb gimp.deb

Встановлення пакету через apt

sudo ./deb-watch-unified.sh --apt gimp

Встановлення Flatpak

sudo ./deb-watch-unified.sh --flatpak org.gimp.GIMP

Встановлення Snap

sudo ./deb-watch-unified.sh --snap vlc

Моніторинг установки через GUI

sudo ./deb-watch-unified.sh --gui

Використання скрипта на власний страх та ризик, робота скрипта не гарантується

About

A script that records changes during program installation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages