RU EN

Обновление баз DrWeb 9

 

Архивы с базами можно скачать по ссылке ftp://4local.ru/Antivirus/DrWeb/v9. Распаковать lzma-архивы можно с помощью 7z-архиватора:

find . -type f -name '*.lzma' -exec 7z e {} \;

Базы находятся в папке:

C:\Documents and settings\All Users\Application Data\Doctor Web\Bases\

Перед тем, как скопировать туда распакованные обновления баз, надо отключить модуль самозащиты: ЛКМ -> Инструменты -> Настройки -> Самозащита.

Комментариев: 0
16.08.2015 18:48


Бэкап баз данных

 

В обычном случае для бэкапа оптимально использовать команду:

mysqldump -uroot -qRB db_name > db_name.sql

Для бэкапа с архивацией:

mysqldump -uroot -qRB db_name | bzip2 -9c > db_name.sql.bz
mysqldump -uroot -qRB db_name | gzip -9c > db_name.sql.gz

Просмотреть архивы можно командами:

bzcat db_name.sql.bz | less
zcat db_name.sql.gz | less

Возможен бэкап с удалённого сервера используя ssh (предполагается, что используется ssh-config):

ssh server 'mysqldump -uroot -qRB db_name' | bzip2 -9c > db_name.sql.bz
# или сразу залить в локальную базу
ssh server 'mysqldump -uroot -qCRB db_name' | mysql -uroot

Для дампа таблиц больших объёмов под текущей нагрузкой нужно использовать:

mysqldump -uroot --single-transaction --skip-lock-tables -qRB db_name

Полный дамп таблиц, включая сервисные, можно сделать командой:

mysqldump -uroot --events -qRA

Дамп только 10000 строк из определённой таблицы:

mysqldump -ntB db_name --tables tbl_name --where='1 order by id desc limit 10000'

Дамп базы без данных:

mysqldump -dB db_name
Комментариев: 0
16.08.2015 08:09


Использование единого файла паролей для KeePassX

 

Для удобства использования файла паролей из различных устройств и мест, можно разместить файл на удалённом сервере и маунтить папку с файлом на текущее устройство. Вот пример скрипта, который подключает и отключает удалённую папку:

#!/bin/bash

sshfs remote_host:/home/user/.keepassx /home/user/.keepassx && \
/usr/bin/keepassx && \
fusermount -u /home/user/.keepassx

В Debian требуется чтобы пользователь находился в группе fuse:

sudo gpasswd -a user fuse
Комментариев: 1
04.06.2015 15:58


SASL authentication failure: could not verify password

 

Для исправления ошибки надо подготовить патч для файла lib/checkpw.c:

--- lib/checkpw.c       Sat Jan 28 03:31:36 2012
+++ lib/checkpw.c       Thu Mar  5 18:49:35 2015
@@ -587,16 +587,14 @@
            /* Timeout. */
            errno = ETIMEDOUT;
            return -1;
-       case +1:
-           if (FD_ISSET(fd, &rfds)) {
-               /* Success, file descriptor is readable. */
-               return 0;
-           }
-           return -1;
        case -1:
            if (errno == EINTR || errno == EAGAIN)
                continue;
        default:
+        if (FD_ISSET(fd, &rfds)) {
+            /* Success, file descriptor is readable. */
+            return 0;
+        }
            /* Error catch-all. */
            return -1;
        }

Для этого надо установить из портов пакет cyrus-sasl2, отредактировать файл, сделать патч, перекомпилить пакет с патчем:

cd /usr/ports/security/cyrus-sasl2
make install
cd /usr/ports/pobj/cyrus-sasl-2.1.26/cyrus-sasl-2.1.26
cp lib/checkpw.c lib/checkpw.c.new
# руками редактируем файл
nano lib/checkpw.c.new
# делаем патч
diff -u lib/checkpw.c lib/checkpw.c.new > fix.patch
mv fix.patch /usr/ports/security/cyrus-sasl2/patches/patch-lib_checkpw_c
cd /usr/ports/security/cyrus-sasl2
make clean=dist
make clean=packages
make install

После этого надо переустановить postfix из портов:

cd /usr/ports/mail/postfix/snapshot
env FLAVOR="mysql sasl2" make install
# рестартануть сервисы
/etc/rc.d/saslauthd restart && /etc/rc.d/postfix restart
Комментариев: 0
05.03.2015 19:11


Создание коммита с заданной датой

 

Для того, чтобы сделать коммит с произвольной датой, можно воспользоваться специальным параметром --date команды git commit:

git commit -m 'Commit with yesterday date' --date="$(date -R --date='1 days ago')"
Комментариев: 0
20.01.2015 19:02