Ito ang command offlineimap na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
offlineimap - I-synchronize ang mga mailbox at Maildirs
SINOPSIS
offlineimap (mga pagpipilian)
DESCRIPTION
I-synchronize ang mga account na na-configure sa configuration file sa pamamagitan ng IMAP. Ang bawat account ay may
dalawang panig.
Ang isa sa panig ay dapat na isang IMAP server. Ang kabilang panig ay maaaring maging isang Maildir o iba pa
IMAP server.
Opsyon
-h, --tulong
Ipakita ang buod ng mga opsyon.
--bersyon
Bersyon ng output.
--dry-run
Patakbuhin sa dry run mode.
Huwag aktwal na baguhin ang anumang tindahan ngunit suriin at i-print kung anong mga aksyon sa pag-synchronize
kukunin kung may gagawing pag-sync. Hindi ito tiyak na magbibigay ng eksaktong
impormasyon kung ano ang mangyayari. Kung halimbawa kailangan nating lumikha ng isang folder, ito ay naglalabas lamang
gusto lumikha folder X, ngunit hindi kung gaano karami at aling mga mail ang ililipat nito.
--impormasyon
Output ng impormasyon sa na-configure na mga imbakan ng email.
Kapaki-pakinabang para sa pag-debug at pag-uulat ng bug. Gamitin kasabay ng opsyong -a para limitahan
ang output sa isang account. Pipigilan ng mode na ito ang anumang aktwal na pag-sync na mangyari at
lalabas pagkatapos nitong ilabas ang impormasyon sa pag-debug.
-1
Limitahan ang mga pagpapatakbo ng multithreading at magpatakbo lamang ng isang single-thread sync.
Ito ay epektibong nagtatakda ng maxsyncaccounts at lahat ng maxconnections configuration file
variables to 1. Ito ay 1, ang numero.
-P
Itakda ang OfflineIMAP sa profile mode.
Ang programa ay lilikha ng DIR (dapat hindi pa ito umiiral). Habang tumatakbo ito, ang pag-profile ng Python
ang impormasyon tungkol sa bawat thread ay naka-log in sa profiledir. Pakitandaan: Ang pagpipiliang ito ay
naroroon para sa pag-debug at pag-optimize lamang, at HINDI dapat gamitin maliban kung mayroon kang a
tiyak na dahilan para gawin ito. Ito ay makabuluhang bawasan ang pagganap ng programa, maaaring
bawasan ang pagiging maaasahan, at maaaring makabuo ng malaking halaga ng data. Ang pagpipiliang ito ay nagpapahiwatig ng -1
pagpipilian.
-a
Ino-override ang seksyon ng mga account sa config file.
Binibigyang-daan ang isa na tumukoy ng partikular na account o hanay ng mga account na isi-sync nang hindi nagkakaroon
para i-edit ang config file.
-c
Tumutukoy ng configuration file na gagamitin.
-d
Pinapagana ang pag-debug para sa OfflineIMAP.
Ito ay kapaki-pakinabang kung gusto mong subaybayan ang isang malfunction o malaman kung ano ang nangyayari
sa ilalim ng talukbong. Nangangailangan ang opsyong ito ng isa o higit pang mga debugtype, na pinaghihiwalay ng mga kuwit.
Tinutukoy nito kung ano ang eksaktong ide-debug, at sa ngayon ay may kasamang dalawang opsyon: imap,
thread, maildir o LAHAT. Ang opsyon sa imap ay magbibigay-daan sa pag-stream at pag-parse ng protocol ng IMAP
pag-debug. Tandaan na ang output ay maaaring maglaman ng mga password, kaya mag-ingat na alisin iyon
mula sa output ng pag-debug bago ito ipadala sa iba. Ang pagpipiliang maildir ay
paganahin ang pag-debug para sa ilang partikular na operasyon ng Maildir. Ang paggamit ng anumang opsyon sa pag-debug (maliban kung
sinulid ay kasama), ay nagpapahiwatig ng single-thread na opsyon -1.
-l
Magpadala ng mga log sa .
-s
Magpadala ng mga log sa syslog.
-f
I-sync lamang ang mga tinukoy na folder.
Ang mga pangalan ng folder ay ang hindi naisalin na mga pangalan ng folder ng malayuang imbakan. Ito
Ino-override ng opsyon sa command-line ang anuman folderfilter at folderkasama ang mga pagpipilian sa
configuration file.
-k <[section:]option=value
I-override ang anumang opsyon sa configuration file.
Kung ang "seksyon" ay tinanggal, ito ay magiging default sa "pangkalahatan". Anumang underscore sa pangalan ng seksyon
ay pinalitan ng mga puwang: halimbawa, upang i-override ang opsyon na "autorefresh" sa
Ang seksyong "[Account Personal]" sa config file ay gagamit ng "-k
Account_Personal:autorefresh=30". Ulitin ang opsyong ito hangga't kinakailangan upang muling tukuyin
maramihang mga pagpipilian.
-o
Isang beses lang tumakbo.
Huwag pansinin ang anumang setting ng autorefresh sa configuration file.
-q
Patakbuhin lamang ang mga mabilisang pag-synchronize.
Huwag pansinin ang anumang mga update sa flag sa mga IMAP server. Kung magbabago ang isang flag sa remote IMAP, at tayo
magkaroon ng mensahe nang lokal, ito ay maiiwan na hindi nagalaw sa isang mabilis na pagtakbo. Ang pagpipiliang ito ay
hindi pinansin kung nakatakda ang maxage.
-u
Tumutukoy ng alternatibong user interface na gagamitin.
Ino-override nito ang default na tinukoy sa configuration file. Ang UI na tinukoy sa
-u ay mapipilitang gamitin, kahit na matukoy ng mga pagsusuri na hindi ito magagamit. Maaari
ang mga pagpipilian sa interface ay: tahimik, basic, syslog, ttyui, blinkenlights, machineui.
--column[= ], --walang-column
Ipakita ang listahan ng sangay sa mga hanay. Tingnan ang configuration variable column.branch para sa opsyon
syntax.--column at --no-column na walang mga opsyon ay katumbas ng palagi at hindi kailanman
ayon sa pagkakabanggit.
Naaangkop lamang ang opsyong ito sa non-verbose mode.
PAGHAHANAP PAGGANAP
Bilang default, gumagamit kami ng medyo konserbatibong mga setting na ligtas para sa pag-sync ngunit maaaring iyon
hindi ang pinakamahusay na gumaganap. Kapag nai-set up mo na at tumatakbo na ang lahat, baka gusto mo
upang tingnan ang pagpapabilis ng iyong pag-synchronize. Narito ang ilang mga pahiwatig at tip kung paano
upang makamit ito.
1. Gumamit ng maxconnections > 1.
Bilang default, isang koneksyon lang ang ginagamit namin sa isang IMAP server. Gumagamit ng 2 o kahit 3 bilis
ang mga bagay ay malaki sa karamihan ng mga kaso. Pupunta ang setting na ito sa [Repository XXX]
seksyon.
2. Gumamit ng mga folderfilter.
Ang pinakamabilis na pag-sync ay isang pag-sync na maaaring balewalain ang ilang mga folder. Inaayos ko ang aking inbox sa buwanan
folder, at huwag pansinin ang bawat folder na higit sa 2-3 buwang gulang, ito ay nagbibigay-daan lamang sa akin
siyasatin ang isang bahagi ng aking Mga Mail sa bawat pag-sync. Kung hindi mo pa nagagawa ito, gawin mo na :).
Tingnan ang seksyong folderfilter ang halimbawang offlineimap.conf.
3. Ang cache.
Ang default na cache ng katayuan ay isang plain text file na magsusulat ng kumpletong file
para sa bawat isang bagong mensahe (o kahit na binago ang bandila) sa isang pansamantalang file. Kung mayroon kang
maraming file sa isang folder, ito ay ilang daang kilo hanggang megabytes para sa bawat mail at
ay tiyak na gawing mas mabagal ang mga bagay. Inirerekomenda kong gamitin ang sqlite backend para doon. Tingnan mo
ang status_backend = setting ng sqlite sa halimbawang offlineimap.conf. Kakailanganin mo
magkaroon ng python-sqlite na naka-install upang magamit ito. Makakatipid ito sa iyo ng maraming disk
aktibidad. Tandaan na ang sqlite backend ay itinuturing pa rin na eksperimental tulad ng mayroon ito
isinama lamang kamakailan (bagaman ang pagkawala ng iyong cache ng katayuan ay hindi dapat a
trahedya dahil ang file na iyon ay maaaring awtomatikong itayo muli)
4. Gumamit ng mabilis na pag-sync.
Ang isang regular na pag-sync ay hihiling ng lahat ng mga flag at lahat ng mga UID ng lahat ng mga mail sa bawat folder na kung saan
medyo tumatagal. A mabilis ang sync ay inihahambing lamang ang bilang ng mga mensahe sa isang folder
sa gilid ng IMAP (makikita nito ang mga pagbabago sa bandila sa gilid ng Maildir ng mga bagay bagaman). A
ang mabilis na pag-sync sa aking maliit na account ay tatagal ng 7 segundo kaysa sa 40 segundo. Hal, ako
magpatakbo ng cron script na gumagawa ng regular na pag-sync isang beses sa isang araw, at mabilis na nagsi-sync (-q) lang
pag-synchronize ng "-f INBOX" sa pagitan.
5. I-off ang fsync.
Sa seksyong [pangkalahatan] maaari mong itakda ang fsync sa True o False. Kung gusto mong maglaro ng 110%
ligtas at maghintay para sa lahat ng mga operasyon na pindutin ang disk bago magpatuloy, maaari mong itakda ito
sa Totoo. Kung itatakda mo ito sa False, mawawala sa iyo ang ilan sa kaligtasang iyon, ipagbibili ito para sa bilis.
Pag-upgrade MULA SA PLAIN TEXT SA SQLITE CACHE FORMAT
Gumagamit ang OfflineImap ng cache upang iimbak ang huling alam na katayuan ng mga mail (mga flag atbp).
Ang ibig sabihin noon ay mga plain text file, ngunit kamakailan ay ipinakilala namin ang sqlite-based
cache, na tumutulong sa pagganap at paggamit ng CPU sa malalaking folder. Narito kung paano mag-upgrade
umiiral na plain text cache installation sa sqlite based one:
1. I-sync upang matiyak na ang mga bagay ay makatwirang magkatulad.
2. Baguhin ang seksyon ng account sa "status_backend = sqlite".
3. Magpatakbo ng bagong pag-sync.
Iko-convert nito ang iyong plain text cache sa isang sqlite cache (ngunit iwanan ang lumang plain
text cache sa paligid para sa madaling pagbabalik). Ito ay dapat na mabilis at walang kasamang anumang mail
pataas/nagda-download.
4. Tingnan kung ito ay gumagana! :-)
5. Kung hindi ito gumana, bumalik sa lumang bersyon o itakda ang "status_backend = plain"
6. Tanggalin ang lumang text cache file.
Kapag natitiyak mong gumagana ito, maaari mong tanggalin ang ~/.offlineimap/Account-foo/LocalStatus
folder (ang bagong cache ay nasa LocalStatus-sqlite folder)
SEGURIDAD AT SSL
Bilang default, kokonekta ang OfflineIMAP gamit ang anumang paraan na iyon openssl sumusuporta, iyon ay
SSLv2, SSLv3, o TLSv1.
Tandaan na ang SSLv2 ay kilalang-kilala na hindi secure at hindi na ginagamit. Sa kasamaang palad, ang python2 ay hindi
nag-aalok ng mga madaling paraan upang huwag paganahin ang SSLv2. Inirerekomenda na subukan mo ang iyong setup at tiyaking iyon
ang mail server ay hindi gumagamit ng SSLv2 na koneksyon. Gamitin ang hal. "openssl s_client -host
mail.server -port 443" upang malaman ang koneksyon na ginagamit bilang default.
· Pagsusuri ng sertipiko
Sa kasamaang palad, bilang default ay hindi namin ibe-verify ang certificate ng isang IMAP TLS/SSL server
kumonekta kami sa, kaya ang pagkonekta sa pamamagitan ng SSL ay walang garantiya laban sa man-in-the-middle attacks.
Habang bini-verify ang isang server certificate na sinusuri ang fingerprint ay inirerekomenda. meron
kasalukuyang isang ligtas na paraan lamang upang matiyak na kumonekta ka sa tamang server sa isang
naka-encrypt na paraan: maaari mong tukuyin ang a sslcacertfile setting sa iyong seksyon ng imbakan
ng offlineimap.conf na tumuturo sa isang file na naglalaman (kabilang sa iba pa) ng CA Certificate
sa PEM format na nagpapatunay sa iyong server certificate. Sa kasong ito, susuriin namin
na:
1. Ang server SSL certificate ay napatunayan ng CA Certificate.
2. Ang pangalan ng host ng server ay tumutugma sa SSL certificate.
3. Ang sertipiko ng server ay hindi lumampas sa petsa ng pag-expire nito.
Ang FAQ ay may entry kung paano gumawa ng sarili mong certificate at CA certificate.
· StartTLS
Kung hindi mo pa na-configure ang iyong account upang kumonekta sa pamamagitan ng SSL, gagawin ng OfflineImap
sinusubukan pa ring mag-set up ng SSL na koneksyon sa pamamagitan ng STARTTLS function, kung sakaling ang imap
Sinusuportahan ito ng server.
Walang kasamang certificate o fingerprint checking, kapag gumagamit ng STARTTLS
(hindi pa ito sinusuportahan ng pinagbabatayan na library ng imaplib). Nangangahulugan ito na gagawin mo
maprotektahan laban sa mga pasibong nakikinig at hindi nila magagawa
tingnan ang iyong password o mga nilalaman ng email. Gayunpaman, hindi ka nito mapoprotektahan mula sa pagiging aktibo
mga pag-atake, gaya ng mga pag-atake ng Man-In-The-Middle na nagdudulot sa iyo na kumonekta sa mali
server at magpanggap na iyong mail server.
HUWAG UMAASA SA MGA STARTTLS BILANG LIGTAS NA KONEKSIYON NA NAGGAGARANTIYA SA KATOTOHANAN NG IYONG
IMAP SERVER!
UNIX Mga TANDA
Nakikinig ang OfflineImap sa mga unix na signal na SIGUSR1, SIGUSR2, SIGTERM, SIGINT, SIGHUP,
SIGQUIT.
· Kung nagpadala ng SIGUSR1 ay aabort nito ang anumang kasalukuyang (o susunod na hinaharap) na pagtulog ng lahat ng mga account
na naka-configure sa "autorefresh". Sa epekto, ito ay magti-trigger ng isang buong pag-sync ng lahat
mga account na gagawin sa lalong madaling panahon.
· Kung nagpadala ng SIGUSR2, ititigil nito ang "autorefresh mode" para sa lahat ng account. Ibig sabihin, mga account
aabort ang anumang kasalukuyang pagtulog at lalabas pagkatapos ng kasalukuyang tumatakbong pag-synchronize
ay tapos na. Maaaring gamitin ang signal na ito para maganda ang paglabas sa isang tumatakbong offlineimap
"demonyo".
· Ang SIGTERM, SIGINT, SIGHUP ay tinatrato ang lahat upang maayos na wakasan sa lalong madaling panahon.
Nangangahulugan ito na matatapos nito ang pag-sync ng kasalukuyang folder sa bawat account, malapit na panatilihing buhay
mga koneksyon, alisin ang mga kandado sa mga account at lumabas.
Maaaring tumagal ng hanggang 10 segundo, kung gagamitin ang opsyong autorefresh.
· Kung nagpadala ng SIGQUIT, nagtatapon ng mga stack na bakas para sa lahat ng mga thread at sinusubukang i-dump ang core ng proseso.
KILALA MGA ISYU
· Nakabinbin ang pagsulat ng SSL3.
Ang mga user na nagpapagana ng SSL ay maaaring makatama ng bug tungkol sa "SSL3 write pending". Kung gayon, ang (mga) account
mananatiling hindi naka-synchronize mula sa oras na lumitaw ang bug. Ang pagpapatakbo ng OfflineIMAP muli ay maaari
tulong. Ginagawa pa rin namin ang bug na ito. Ang mga patch o detalyadong ulat ng bug ay magiging
pinahahalagahan. Pakisuri na pinapagana mo ang huling stable na bersyon at padalhan kami ng ulat
sa mailing list kasama ang buong log.
· Ang suporta sa IDLE ay hindi kumpleto at eksperimental. Maaaring makatagpo ng mga bug.
· Walang hook na umiiral para sa "run after an IDLE response".
Lalabas ang email, ngunit maaaring hindi maproseso hanggang sa susunod na ikot ng pag-refresh.
· nametrans ay maaaring hindi suportado ng tama.
· IMAP IDLE <→ IMAP IDLE ay hindi pa gumagana.
· Maaaring huminto ang IDLE sa pag-sync sa isang pagsususpinde/pagpatuloy ng system.
· Ang IDLE ay maaari lamang gumana "isang beses" bawat pag-refresh.
Kung nakatagpo ka ng bug na ito, mangyaring magpadala ng ulat sa listahan!
· Suporta sa Maildir sa Windows drive.
Gumagamit ang Maildir ng colon caracter (:) sa mga pangalan ng file ng mensahe. Gayunpaman, ipinagbabawal ang colon
character sa mga windows drive. Mayroong ilang mga solusyon para sa sitwasyong iyon:
1. Paganahin ang pagsasalin ng character ng pangalan ng file sa windows registry (hindi nasubok).
· http://support.microsoft.com/kb/289627
2. Gumamit ng cygwin managed mount (hindi nasubok).
· hindi na magagamit mula noong cygwin 1.7
3. Gamitin ang "maildir-windows-compatible = yes" account OfflineIMAP configuration.
· Ginagawa nitong OfflineIMAP na gumamit ng tandang padamdam (!) sa halip na colon para sa
pag-iimbak ng mga mensahe. Ang ganitong mga file ay maaaring isulat sa mga partisyon ng windows. Pero ikaw
ay malamang na maluwag compatibility sa iba pang mga programa sinusubukang basahin ang parehong
Maildir.
· Napili ang tandang padamdam dahil sa tala sa
http://docs.python.org/library/mailbox.html
· Kung mayroon kang ilang mga mensahe na nakaimbak nang wala ang opsyong ito, kakailanganin mo
muling i-sync ang mga ito muli
· Nalilito ang OfflineIMAP pagkatapos masuspinde ang system.
Kapag ipinagpatuloy ang isang nasuspinde na session, hindi malinis na pinangangasiwaan ng OfflineIMAP ang nasira
(mga) socket kung hindi nakatakda ang opsyon sa socktimeout. Dapat mong paganahin ang opsyong ito na may halaga
tulad ng 10.
· Nalilito ang OfflineIMAP kapag nagbabago ang mga mail habang naka-sync.
Kapag nagsi-sync ang OfflineIMAP, nangyayari ang ilang kaganapan mula noong invocation sa remote o
ang lokal na panig ay hindi maganda ang paghawak. Hindi susubaybayan ng OfflineIMAP ang mga pagbabago sa panahon ng pag-sync.
· Pagbabahagi ng maildir sa maraming IMAP server.
Sa pangkalahatan, isang salita ng pag-iingat ang paghahalo ng mga imbakan ng IMAP sa parehong ugat ng Maildir. Ikaw
dapat mag-ingat ka hindi kailanman gamitin ang parehong maildir folder para sa 2 IMAP server. Sa
ang pinakamahusay na kaso, ang folder na MD5 ay magiging iba, at makakakuha ka ng isang loop kung saan ito mangyayari
i-upload ang iyong mga mail sa parehong mga server sa turn (walang hanggan!) bilang sa tingin nito ay inilagay mo
mga bagong mail sa lokal na Maildir. Sa pinakamasamang kaso, ang MD5 ay pareho (malamang) at
Ang mga mail UID ay nagsasapawan (malamang din!) at mabibigo itong i-sync ang ilang mga mail gaya ng iniisip nito
ay umiiral na.
Gagawa ako ng bagong lokal na Maildir Repository para sa Personal na Gmail at gagamit ng a
ibang ugat para maging ligtas dito. Maaari mong hal. gamitin
`~/mail/Pro` bilang ugat ng Maildir para sa ProGmail at
`~/mail/Personal` bilang ugat para sa personal.
Kung itinuro mo ang iyong lokal na mutt, o anumang MUA na ginagamit mo ~/mail/ bilang ugat, ito
dapat pa ring makilala ang lahat ng mga folder.
· Mga Edge case na may maxage na nagdudulot ng napakaraming mensahe upang ma-sync.
Lahat ng mensahe mula sa pinakamaraming araw na nakalipas (+/- ilang oras, depende sa mga timezone)
ay naka-sync, ngunit may mga kaso kung saan maaari ding i-sync ang mga mas lumang mensahe. Ito
nangyayari kapag ang UID ng isang mensahe ay mas mataas kaysa sa iba pang mga mensahe
katulad na mga petsa, hal kapag ang mga mensahe ay idinagdag sa lokal na folder sa likod ng offlineimap's
pabalik, na nagiging sanhi upang maitalaga sa kanila ang isang bagong UID, o kapag ang offlineimap ay unang nagsi-sync ng a
dati nang Maildir. Sa huling kaso, maaari itong lumitaw na parang isang kapansin-pansin at
naka-sync ang random na subset ng mga lumang mensahe.
Pangunahin MGA AUTHORS
John Goerzen, Sebastian Spaetz, Eygene Ryabinkin, Nicolas Sebrecht.
Gamitin ang offlineimap online gamit ang mga serbisyo ng onworks.net