W niektórych sytuacjach zachodzi potrzeba upewnienia się czy pliki które znajdują się w danej lokalizacji są tymi plikami którymi mają być. Najprościej rzecz ujmując.
Może to posłużyć weryfikacji np. plików DOCX z dokumentami umów (czy nikt nie wprowadził nieustalonych zmian w zapisie umów), sprawdzeniu czy pliki nie mają wirusów albo czy pliki strony internetowej nie mają złośliwego kodu. Potrzeby mogą być różne..
Skorzystać tutaj można z systemu kontroli wersji – np. Subversion (SVN). Poświęciliśmy mu dość sporo artykułów na naszym serwisie.
Jednak jest metoda znacznie szybsza i sprytniejsza 🙂 Dodatkowo nie wymaga instalacji żadnego dodatkowego oprogramowania i można to zrobić jedynie w konsoli Linuxa.
Posłużymy się tutaj sumą kontrolną pliku – MD5.
Już poruszaliśmy to zagadnienie na naszym serwisie:
[LIFEHACK] Jak w linux sprawdzić sumę kontrolną MD5 dowolnego pliku?
Najpierw musimy „zapisać” stan początkowy z przed modyfikacji. Będzie on zapisany w 1 pliku tekstowym, który możemy np. wysłać na e-mail albo zapisać na pendrive. Na podstawie tego pliku tekstowego będziemy potem porównywać czy nic się w danych plikach nie zmieniło. Czyli musimy mieć potem dostęp do tego pliku aby przeprowadzić weryfikację.
Wejdź do folderu gdzie znajduje się lista plików do (późniejszego) porównania i wpisz:
1 |
md5sum * > lista_plikow.chk |
Otrzymasz w ten sposób listę plików i odpowiadające im sumy kontrolne.
Przykład zawartości dla listy plików z CMS WordPress:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
b9142a5f513a565bcb15430f4982000e index.php 5c88f9b1e75f5db710c2dcfcdeab1d24 wp-activate.php f3f43bcb755e7599abfd0cb56b710e81 wp-blog-header.php 4a98c020baeb9e82f5f577e737234f56 wp-comments-post.php ec83713470bf87b026cfe4d446889c90 wp-config.php 3e42b983e0b6999d40027bada5f512e7 wp-config-sample.php 0f31e7fef84445fe4f4bf7c092ec6c10 wp-cron.php e5afa38ed5c796d43f301825975ab547 wp-links-opml.php b133347f6df56277b32a5405153bacb4 wp-load.php 0f216c7abc1bed25c99b17fa86a3da58 wp-login.php c25ef6fbf40fbc76be342d490c0e874b wp-mail.php edb6d70dc7dcdd73d2558ec8f7e528de wp-settings.php b7deb3dbd61d082b99db157ae02a5280 wp-signup.php d74b02cd709360ef78dc226cdbabce91 wp-trackback.php ec0319c65e8096c460fe78feee8b2288 xmlrpc.php |
W przyszłości jeśli będziesz chciał/chciała zweryfikować czy nic się nie zmieniło musisz się tym plikiem posłużyć poprzez komendę:
1 |
md5sum -c lista_plikow.chk |
Listing po pomyślnej weryfikacji:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
index.php: DOBRZE wp-activate.php: DOBRZE wp-blog-header.php: DOBRZE wp-comments-post.php: DOBRZE wp-config.php: DOBRZE wp-config-sample.php: DOBRZE wp-cron.php: DOBRZE wp-links-opml.php: DOBRZE wp-load.php: DOBRZE wp-login.php: DOBRZE wp-mail.php: DOBRZE wp-settings.php: DOBRZE wp-signup.php: DOBRZE wp-trackback.php: DOBRZE xmlrpc.php: DOBRZE |
Listing pokazujący, że w jednym pliku coś się zmieniło:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
index.php: DOBRZE wp-activate.php: DOBRZE wp-blog-header.php: DOBRZE wp-comments-post.php: DOBRZE wp-config.php: NIEPOWODZENIE wp-config-sample.php: DOBRZE wp-cron.php: DOBRZE wp-links-opml.php: DOBRZE wp-load.php: DOBRZE wp-login.php: DOBRZE wp-mail.php: DOBRZE wp-settings.php: DOBRZE wp-signup.php: DOBRZE wp-trackback.php: DOBRZE xmlrpc.php: DOBRZE md5sum: UWAGA: 1 policzona suma się NIE zgadza |
I tu może się zapalić dla Ciebie czerwona lampka – „wiedz, że coś się dzieje” 🙂
Powyższe komendy mają zastosowanie jedynie do plików z danego folderu. Jeśli chcesz zagłębić się we wszystkie podfoldery uruchom:
1 |
find -type f -exec md5sum "{}" + > lista_plikow.chk |
grafika: alphacoders.com