====== Fulltext vyhledávání v mailech přímo na mailovém serveru ====== [[notmuch_clanek]] ===== Zprovoznění syncthing ===== Ač debian/ubuntu může obsahovat přímo balíček syncthing. Může být dobré si přidat přímo repozitář projektu pro možnou aktualizaci na novější verze. https://apt.syncthing.net/ Instalaci provedeme pak příkazem. apt install synchting Abychom funkčnost syncthing otestovali, můžeme jej způstit přímo z konzole příkazem syncthing. Pozor ale, před spuštěním je nutné být přihlášen pod uživatelem, pod kterým synching poběží. Není dobré synchting provozovat jako root. su vmail # syncthing ==== Automatický start ==== https://docs.syncthing.net/users/autostart.html#linux Musí běžet jako system service, aby to fungovalo i bez nalogování uživatele vmail. vmail je login uživatele. systemctl enable syncthing@vmail.service # Created symlink /etc/systemd/system/multi-user.target.wants/syncthing@vmail.service → /etc/systemd/system/syncthing@.service. systemctl start syncthing@vmail.service systemctl status syncthing@vmail.service Že syncthing běží a synchronizuje můžeme zkontrolovat pomocí webové stránky na portu :8384 webové rozhraní je třeba zabezpečit jménem a heslem (lze nastavit na webu) + firewalem ===== Když v emailu chybí důležitá hlavička ===== Message-id Xnote++ jméno souboru vypočítá jako MD5. Ale, není úplně jasné z čeho se md5 počítá. Celý email, ani ta část s hlavičkama tonení. Soubor do kterého Xnote++ uloží poznámku v případě že email nemá hlavičku id najdou tak, že uložím poznámku XXXZZZXXX a pak najdu soubor, který tento řetězec obsahuje pomocí grepu. grep -rn XXXZZZXXX . #Binary file ./md5%3AlkjBoMJx4srtiCmVceL+lw%3D%3D.xnote matches Název souboru je ještě urlencoded po rozkódování https://www.urldecoder.org/ md5:lkjBoMJx4srtiCmVceL+lw== cat /var/vmail/odorik.cz/kontakt/cur/1567092346.M60666P12360.mail\,S\=741\,W\=756\:2\,RSao | openssl dgst -md5 -binary | openssl enc -base64 # x0oZhB9ebyVGC1/+nQpMEg== cat /var/vmail/jenhlavicky.txt | openssl dgst -md5 -binary | openssl enc -base64 # I8DFyyAgY0IRNAjj9h+EOw== ====== Ruční používáním notmuch ====== notmuch show --format=mbox from:ouku05@seznam.cz>result.mbox && mutt -R -f result.mbox notmuchm() { pocet_emailu=$(notmuch count "$@"); (($? != 0)) && { echo "máte chybu v zadaných parametrech. viz. 'man notmuch-search-terms' "; return; } if (($pocet_emailu > 1000)); then echo "notmuch našel $pocet_emailu emailů, což je příliš. Upřesněte dotaz."; return elif (($pocet_emailu == 0 )); then echo "notmuch nenašel žádý email. Změňte dotaz."; return fi # echo "notmuch našel $pocet_emailu emailů. Nyní spustíme mutt, aby jste si je prohlédl " # read -n 1 -s -r -p "Pro pokračování zmáčkněte libovolnou klávesu" temp_file=$(mktemp /tmp/notmuchm.XXXXXXXXX.mbox) notmuch show --format=mbox $@>$temp_file && mutt -R -f $temp_file rm $temp_file } Dokumentace k ruby-notmuch knihovně. https://dev.exherbo.org/~alip/notmuch/ruby/Notmuch.html Dokumentace k biding k pythonu - https://notmuchmail.org/doc/latest/python-bindings.html