150 | | Ainda não escrito. Confira em breve .... |
| 150 | A função delay expunge habilita um recurso parecido com a tradicional "Lixeira" dos Desktops. |
| 151 | Ao deletar uma mensagem ou pasta as mensagens não são removidas imediatamente do disco. |
| 152 | Na realidade apenas o indice da caixa é atualizado ( ou seja o usuário não enxerga mais a mensagem em sua caixa ) |
| 153 | mas a mensagem permanece no disco, até que se rode a rotina "cyr_expire" para realizar o expurgo. |
| 154 | |
| 155 | O administrador do sistema pode retornar a mensagem com o comando "unexpunge" ou no caso de uma pasta removida simplesmente renomea-lá ao contexto do usuário. Isto facilita bastante já que você não tem que recorrer ao backup para restaurar as mensagens apagadas acidentalmente por um usuário. |
| 156 | |
| 157 | ==== Ativando o delay expunge: ==== |
| 158 | |
| 159 | Primeiro edite o '''/etc/imapd.conf''' e coloque os parâmetros abaixo |
| 160 | |
| 161 | No cyrus 2.4.X: |
| 162 | {{{ |
| 163 | deletedprefix: DELETED |
| 164 | delete_mode: delayed |
| 165 | expunge_mode: delayed |
| 166 | expunge_days: 90 <-- Este parametro define o número de dias que você quer manter na Quarentena antes de remover |
| 167 | }}} |
| 168 | |
| 169 | No cyrus 2.3.X: |
| 170 | {{{ |
| 171 | deletedprefix: DELETED |
| 172 | delete_mode: delayed |
| 173 | expunge_mode: delayed |
| 174 | expunge_days: 30 |
| 175 | }}} |
| 176 | |
| 177 | Depois edite o '''/etc/cyrus.conf''' e coloque o evento abaixo: |
| 178 | {{{ |
| 179 | EVENTS { |
| 180 | ......... |
| 181 | # Expira as mensagens e pastas do Cyrus começando as 23:00 |
| 182 | delprune cmd="/usr/cyrus/bin/cyr_expire -E 30 -X 30 -D 30" at=2300 |
| 183 | .......... |
| 184 | } |
| 185 | }}} |
| 186 | |
| 187 | Sendo que: |
| 188 | |
| 189 | {{{ |
| 190 | ............ |
| 191 | ?D delete-days |
| 192 | Remove previously deleted mailboxes older than delete-days (when using the "delayed" delete mode). |
| 193 | ?E expire-days |
| 194 | Prune the duplicate database of entries older than expire-days. This value is only used for entries which do not have a corresponding /vendor/cmu/cyrus-imapd/expire mailbox annotation. |
| 195 | ?X expunge-days |
| 196 | Expunge previously deleted messages older than expunge-days (when using the "delayed" expunge mode). |
| 197 | ............. |
| 198 | }}} |
| 199 | |
| 200 | Depois de colocar estas informações basta reiniciar o Cyrus IMAP. |
| 201 | |
| 202 | |
| 203 | ==== Restaurando as mensagens excluidas: ==== |
| 204 | |
| 205 | Para restaurar as mensagens excluídas de uma pasta você precisa ter acesso ao shell do servidor aonde está localizado a caixa. |
| 206 | Como o usuário '''root''' ou '''cyrus''' use o comando '''unexpunge'''. |
| 207 | {{{ |
| 208 | unexpunge -l user/joe -> Para listar as mensagens removidas mas não expiradas |
| 209 | unexpunge -ad user/joe -> Restaura todas as mensagens removidas e não expiradas |
| 210 | unexpunge -ud user/joe 515 --> Restaura uma mensagem específica que foi apagada |
| 211 | unexpunge -d -t 6h user/joe --> Restaura mensagens apagadas a 6 horas |
| 212 | unexpunge -d -t 1d user/joe --> Restaura mensagens apagadas a 1 dia |
| 213 | }}} |
| 214 | |
| 215 | |
| 216 | ==== Restaurando uma pasta removida: ==== |
| 217 | Para restaurar uma pasta removida basta usar o cyradm e renomear a pasta para dentro do usuário |
| 218 | {{{ |
| 219 | cyradm -u admin imap_server |
| 220 | imap_server> lm DELETED/user/joe/* |
| 221 | DELETED/user/joe/DITI-2010/4E08876B |
| 222 | DELETED/user/joe/WORK/4E08876B |
| 223 | imap_server> rename DELETED/user/joe/DITI-2010/4E08876B user/joe/DITI-2010 |
| 224 | }}} |