Непростой Gnome

Хотел получить файл с телефона через Bluetooth. Нажимаю соответствующую кнопку в диалоге настроек Bluetooth и вижу такое сообщение:
Не удаётся открыть параметры «Общего доступа к личным файлам»
Убедитесь, что программа «Общий доступ к личным файлам» правильно установлена.


Гугл на это запрос ничего не выдал. Пробуем обходной путь:
export LANG=C
bluetooth-properties


Видим:
Cannot start "Personal File Sharing" Preferences
Please verify that the "Personal File Sharing" program is correctly installed.


Снова спрашиваем гугл и узнаём, что нам нужен пакет gnome-user-share. А почему нельзя было сразу написать об этом в сообщении об ошибке? Зачем создавать трудности по поиску нужной программы на ровном месте?

Отправил баг: https://bugzilla.gnome.org/show_bug.cgi?id=643372

PMIO-V9T-0006S

Весь день ковыряюсь с этой картой (PCI-контроллер на 6 ком-портов) на чипе MCS9865.

Драйвер нашёл, собрал - порты появились, но не работаю. Половина не открывается, вторая - открывается и молчит. В соседней машине похожая карточка на чипе MCS9845 - работает без драйверов и без проблем, только 8550.nr_uarts=8 надо в параметры ядра дописать.

Печально...

Interstate 76 на современном компьютере

Interstate '76 - хорошая игра, которую мне не довелось пройти в то время, когда компьютеры были большими и медленными. Навёрстываю упущенное. Не без трудностей.

Проблема первая - игра зависает в главном меню при попытке начать поездку (Trip).
Решение - запустить dxdiag и полностью отключить аппаратное ускорение звука.

Проблема вторая - в сцене 5 не получается перепрыгнуть через каньон.
Решение - притормозить процессор. Да, в процессе гугления нашёл упоминание о том, что производительность процессора влияет на физику игры. И даже если набрать нужную скорость перед трамплином, машина всё равно упадёт в яму. Нам поможет CPU Grabber. Ставим ползунок на 80 и жмём Старт.

Пока всё.

Настройка простого Samba-ресурса

Понадобилось мне открыть доступ к сетевому диску для Windows-клиента. С Linux всё просто - NFS настраивается быстро. А вот с самбой сложнее выходит. Опишу здесь, чтоб в следующий раз не перекапывать весь интернет.

/etc/samba/smb.conf
[global]
workgroup = HOME
netbios name = Box
server string = Box
security = share
browseable = Yes

[files]
path = /mnt
readonly = Yes
guest ok = Yes


HOME - имя рабочей группы
Box - имя сервера
files - имя ресурса
/mnt - путь к файлам

Сразу отмечу, что имя рабочей группы лучше выбрать WORKGROUP, т.к. в противном случае придётся перенастраивать имя группы на машине с Windows.

Проверить работоспособность можно командой
$ smbclient -U guest -N -L 192.168.0.1
Domain=[HOME] OS=[Unix] Server=[Samba 3.5.6]

Sharename Type Comment
--------- ---- -------
files Disk
IPC$ IPC IPC Service (Box)
Domain=[HOME] OS=[Unix] Server=[Samba 3.5.6]

Server Comment
--------- -------
BOX Box

Workgroup Master
--------- -------
HOME BOX


Можно видеть ресурс files. Подключимся к нему:
$ smbclient -U guest -N //192.168.0.1/files
Domain=[HOME] OS=[Unix] Server=[Samba 3.5.6]
Server not using user level security and no password supplied.
smb: \> dir
. D 0 Sun Feb 6 18:40:59 2011
.. D 0 Tue Feb 15 00:13:26 2011
pictures D 0 Tue Feb 23 17:18:44 2010
download D 0 Sun Feb 6 20:06:14 2011
photos D 0 Sun Apr 4 22:06:57 2010
backup D 0 Sat Jan 15 17:00:15 2011
books D 0 Tue Jan 4 13:43:57 2011

58681 blocks of size 16777216. 28444 blocks available
smb: \> quit


Можно видеть, что содержимое нам доступно.

OTRS

Недавно осознал необходимость внедрения системы техподдержки пользователей, отличной от простой переписки по e-mail. Первое, что мне попалось на глаза - Request Tracker. Поковырял его немного и понял, что ничего не понимаю. Следующим стал OTRS. С ним дело пошло лучше - интерфейс приятнее и понятнее. Хотя система существенно сложнее в настройке, чем Redmine. Потихоньку разбираюсь. Важные моменты буду отмечать здесь.

Для начала, сравнение внешнего вида:

Request Tracker


OTRS


По мне, OTRS гораздо симпатичнее.

IPSec туннель с помощью ipsec-tools

Поднимал ipsec-туннель на роутере. Всё хорошо - роутеры друг друга нашли, о канале договорились, но вот пакеты почему-то мимо туннеля в сеть уходят. Долго ковырялся, потом понял: пакеты перехватываются ядром после прохождения iptables, а значит, должны сохранять адреса отправителя и получателя неизменными до самого конца. У меня же пакеты уходили в сеть с изменённым адресом отправителя - работал маскарадинг. Добавил в iptables следующее правило:

iptables -t nat -A POSTROUTING -o ppp0 -d $NETW/$MASK -j ACCEPT


Оно должно идти перед маскарадингом. $NETW/$MASK - адрес и маска удалённой сети. Например, 192.168.2.0/255.255.255.0. Далее, для корректной работы нужно разрешить входящие соединения на UDP порт 500 и протоколы esp/ah. Например, вот так:


iptables -t filter -N ipsec
iptables -t filter -F ipsec
iptables -t filter -A ipsec -p udp --dport 500 -j ACCEPT
iptables -t filter -A ipsec -p esp -j ACCEPT
iptables -t filter -A ipsec -p ah -j ACCEPT
iptables -t filter -A INPUT -j ipsec


Теперь туннель установится и будет работать.

Скрипт для wget

Написал маленький скрипт для автоматической закачки файлов сервером. Идея проста - кидаем файл со ссылкой в определённую папку, скрипт его находит и запускает wget. Запускается скрипт из крона.


#!/bin/sh
LOG=/mnt/download/download.log
cd /mnt/download
FILES=`ls -1d ./*.download 2>/dev/null`
for f in $FILES; do
if [ ! -f "${f}.log" ]; then
MSG=`wget -b -o ${f}.log --limit-rate=100k -nd -i $f`
MARK=`date '+%F %T'`
echo "$MARK $f ($MSG)" >> $LOG
fi
done