25 02/15
14:56

Ubuntu 14.04 и exfat-nofuse

Exfat – это файловая система, придуманная компанией Microsoft специально для флешек. В отличии от FAT32, exfat умеет хранить файлы размером больше 4Gb, а в отличии от NTFS, exfat умеет “выравнивать износ” ячеек (что должно здорово продлевать срок жизни флешек). Поддерживается в Windows начиная с XP SP2, в OS X начиная с 10.6.5. В Ubuntu 14.04 так же поддерживается из коробки, для этого достаточно установить пакет exfat-fuse. Но как и все драйвера, работающие через fuse, этот драйвер медленнее, чем драйвер, выполненный в виде модуля ядра. Его мы и будем ставить. Чтобы этот модуль автоматически пересобирался при обновлении ядра, добавим его в DKMS.
(more…)

19 11/14
00:47

IPsec между Linux и Mikrotik.

Объединяем два офиса с помощью шифрованного туннеля. В первом офисе роутером является Mikrotik, во втором сервер с Linux. На сервере установлена Ubuntu 12.04, на которой будет установлен и настроен openswan. Поскольку IP на обоих концах фиксированные и дополнительных подключающихся по vpn клиентов не планируется, L2TP использовать не будем. Только чистый IPSec.
(more…)

14 10/14
12:00

Организация backup-сервера. Linux, ZFS и rsync

TL;DR:
Статья о настройке бекапа линуксовых серверов. В качестве хранилища используется раздел ZFS с включенными дедубликацией и компрессией. Ежедневно делаются снапшоты, которые сохраняются в течение недели (7 штук). Ежемесячные снапшоты хранятся в течение года (еще 12 штук). В качестве транспорта выступает rsync: на сервере он запущен демоном, на клиентах он запускается из crontab. Писалась для Хабра.

Так сложилось, что у меня есть пара серверов, на которых под KVM живут виртуальные машины. Хотелось бекапить образы этих машин в сеть, но так, чтобы выполнялись условия:

  • Хранить все бекапы за последнюю неделю.
  • Хранить в течении года ежемесячные бекапы.
  • Никакая активность на клиентах не должна повредить уже сделанные бекапы.
  • Никаких сторонних бекап-агентов. На клиентах только стандартное и проверенное
    поколениями админов ПО.
  • Экономно расходовать место в хранилище. Желательна компрессия и дедубликация данных.
  • Быстро получать доступ к бекапам. Все файлы должны быть доступны без дополнительных инструментов и оболочек. Идеальный вариант: каждый бекап в отдельном каталоге.

Можно ли всё это совместить? Да, и очень просто.
(more…)

17 08/14
20:37

Ubuntu 14.04 и отваливающийся xmodmap.

На моем thinkpad x220 около кнопок со стрелками есть кнопки для навигации вперед-назад. Вероятно, предполагается использовать их в браузере. Но куда удобнее использовать их как PgUp и PgDown. В ubuntu 12.04 для этих целей у меня лежал в домашнем каталоге файлик .Xmodmap такого содержания:

keycode 167 = Next
keycode 166 = Prior

Файл этот автоматически подхватывался при логине и всё работало именно так, как мне было надо. Но после обновления до 14.04 оказалось, что файл этот игнорируется, а если загрузить его руками (xmodmap ~/.Xmodmap), то его эффект сохраняется до первого переключения языка. Сменил раскладку – снова запускай xmodmap. Как оказалось, такая картина уже как минимум с 13.10 и теперь надо править файл с раскладкой. Ну, надо, так надо.

Смотрим текущее стостояние дел:

$ setxkbmap -print
xkb_keymap {
xkb_keycodes  { include "evdev+aliases(qwerty)"    };
xkb_types     { include "complete"    };
xkb_compat    { include "complete"    };
xkb_symbols   { include "pc+ru+us:2+inet(evdev)"    };
xkb_geometry  { include "pc(pc105)"    };
};

Интересует строка xkb_symbols. В ней перечислены используемые в текущей раскладке файлы, в которых хранится соответствие кода нажимаемой клавиши её названию. Это файлы pc, ru, us и inet. Лежат они в каталоге /usr/share/X11/xkb/symbols/.

Посмотрим, где там собака порылась:

$ cd /usr/share/X11/xkb/symbols/
$ grep '167\|166' pc ru us inet
inet:    key <I166>   {      [ XF86Back              ]       };
inet:    key <I167>   {      [ XF86Forward           ]       };

Ну вот. Действие по кодам 166 и 167 определяется в файле /usr/share/X11/xkb/symbols/inet. И поправить его надо так:

key <I166>   {      [ Prior                 ]       };
key <I167>   {      [ Next                  ]       };

Файл можно поправить прямо там, где он лежит, не забыть очистить кеш (удалив все xkm-файлы из /var/lib/xkb/) и перезапустить иксы.

При следующем обновлении пакета xkb-data изменения затрутся и процедуру придется повторять еще раз. Казалось бы, достаточно исправленный файл положить в /etc/X11/xkb/symbols/, файл из этого каталога будет иметь приоритет над одноименным файлом из /usr/share/X11 и не будет перезаписваться при обновлении. Хрен там. Похоже, что каталог /etc/X11/xkb вообще никак не используется.

15 08/14
14:19

Ubuntu 14.04 и SSTP-vpn

Для начала пару слов о том, что такое SSTP. Это относительно новый vpn-протокол, поддерживаемый в Windows начиная с Vista. От PPTP он отличается более простыми требованиями к каналу: SSTP работает везде, где работает обычное HTTPS-соединение. И больше не нужно никакого IP47.

SSTP-сервер есть на windows начиная с Windows Server 2008, совсем недавно был анонсирован SSTP-сервер для Linux, на микротиках SSTP-сервер тоже есть и прекрасно работает.

С виндовыми клиентами проблем нет. С ubuntu 14.04 теперь тоже:

1. Качаем с http://sstp-client.sourceforge.net/ и ставим два пакета:

2. Качаем по ссылкам оттуда же networkmanager-sstp и собираем, либо качаем и ставим от меня готовый:

Если будет желание собрать самостоятельно, то правильная строчка для configure вот такая:

./configure --libexecdir=/usr/lib/NetworkManager/ --prefix=/usr --sysconfdir=/etc

3. Создаем vpn-соединение точно таким же образом, как и обычно. В диалоге выбора протокола кроме PPTP и L2TP теперь появится и SSTP.