четверг, 22 сентября 2011 г.

Claws-gmail

Второй раз настраивал claws-mail под гугль(на генте, до этого был дебиан), и второй раз всё не слава яйцам. Ни хрена не работало, а в логах было только гениальное: "** Ошибка IMAP в imap.gmail.com: ошибка потока".

Так что записываю, чтобы в третий раз(когда-нибудь я сменю ноутбук) не мудохаться ключевые моменты настройки гмыла по imap.

UPD. Конфиг был косячным, письма не отправлялись. Теперь дубль четыре рабочий конфиг в наглядном виде.




Всё. Так будет работать. Если на сервере гмыла уже есть указанные на последнем скрине папки, может понадобиться их удалить, затем в клавсе(ну называю его так, "клаус" как-то дебильно звучит) кликнуть в главном окне слева по имени аккаунта правым кликом и там "Перестроить дерево папок". Они сами создатутся заново.

Прошу прощения за своеобразные "рамочки" вокруг скринов, если они задевают чью-либо тонкую душевную организацию. Исправлять не буду.

P. s.. И вот какая ещё ситуация... У меня когда-то давно(ещё во времена палеолита, когда компьютеры были каменными, а интернет осуществлялся посредством выкрикивания двоичных кодов через цепочку людей) была настроена переадресация со всех ящиков в гугль. Потому что заходил в них только через браузер, а тут сразу всё в одном. И действий меньше, и рисков. С переходом на клавс появилась потребность отцепить эти ящики, дабы настроить по отдельности в клиенте. Ну чтобы можно было быстро проверять по отдельности, плюс последние амбиции "корпорации добра" мне совсем не по душе.

Проще всего отцепить было Рамблер. Настроить тоже(если надо, могу потом выложить настройки, они отличаются от гугля). Это единственный ящик, от которого у меня сохранился пароль и который при этом вообще не был нигде засвечен - только зарегистрирован. При смене пароля обнаружилось, что дизайн полностью спизжен у гугля. А после настройки в клавсе выяснилось, что самое важное спиздить забыли или поленились - пришло сразу пять спам-сообщений(ещё раз говорю, ящик нигде не был засвечен). Ну ебаный же пельмень, теперь придётся ещё и спамасассина ставить и настраивать.

вторник, 20 сентября 2011 г.

Доступ к Postgresql в Linux из Windows в VirtualBox'е на примере Holdem Manager

Как всё начиналось...

Сначала на десктопе было несколько убунт, потом, когда их глючность окончательно достала, Debian Squeeze, потом я купил новый Asus K73E и поставил туда уже Gentoo. Объединяла эти три системы, как ни странно, венда, установленная в VirtualBox, а ещё больше - установленные туда клиенты покеррумов и Holdem Manager. Собственно было создано два динамических виртуальных диска для венды - один системный на 12 Гб и для всяких там историй рук на 50 Гб.

В общем, занимался я покером, всё было хорошо, иногда не очень(особенно всякие Чёрные Тяпницы и навернувшийся в связи с этим Full Tilt), но в целом неплохо. Тем более, ноут как раз на эти деньги и куплен, на покерные. В какой-то момент случился алярм с Holdem Manager'ом. Если в двух словах, PokerStars изменили названия столов с fast на Fast, и после этого перестала автоматически вылезать статистика после посадки за стол и отыгрыша первой руки. Приходилось каждый раз лезть в TableFinder.

Слава разрабам HM'а, они довольно оперативно пофиксили бяку, выпустив обновление. Тут то я и встрял по самые помидоры. После установки обновления HM решил, что ему надо обновить базы. И давай обновлять. Минут через двадцать выдаёт ошибку, что месту на диске хана. И не запускается!

Тут то и обнаружилось, что хоть HM и был установлен на большом диске, пострег один хрен был на C:/(или как там они у вас обозначаются в винде). И сожрал нахрен там всё место, разумеется...


Ай што делать што делать!!!

Первым делом полез уменьшать размеры, да только вот уменьшилось всего на 1 Гб, может чуть больше. Затем вспомнил про совет в виде вот этого мануала, и решил перенести базу в хост, то есть, в Gentoo.

И снова появились проблемы. В первую очередь, мануал не совсем подходил к моим целям. В нём описывается доступ с компа с вендой к postgresql на компе с linux-системой по локальной сети(или не по локальной, по внешнему IP). А мне то надо было не через жопу локалку соединить VBox с Gentoo, а по-людски. Как я ни мудохался, порты какие-то пробрасывал, что-то где-то прописывал, ничего не получалось. Решение было найдено совершенно случайно.


А теперь за дело.

Для начала поставим пострег. Тут западло вот в чём. Установить полностью по мануалу у меня не получилось, так что в принципе можно его не читать, но не помешает ввиду полезной информации(да и небольшой мануал то). Дело в том, что редактирование параметра
DATA_DIR="/var/lib/postgresql/9.0/data"
 
в /etc/conf.d/postgresql-9.0 никак не влияло на последующие действия. То есть, при emerge --config dev-db/postgresql-server:9.0
система всё равно пыталась задействовать как папку для хранения баз именно /var/lib/postgresql/9.0/data, что меня ну никак не устраивало.

Так что алгоритм действий для установки пострега получился такой:
# emerge dev-db/postgresql-server
Затем я создал прямо в /home папку пострега и кинул на неё симлинк:
# mkdir /home/postreg
# ln -s /home/postreg /var/lib/postgresql
Вместо /home/postreg может быть в принципе что угодно. Плюс, симлинк добавляет гибкости. Например, можно куда-нибудь свободно перемещать эту инфу и затем снова кидать симлинк. Можно создать раздел xfs и кинуть это дело туда, как рекомендуется в оригинальном мануале, но мне это делать лень, и так всё отлично работает.

Теперь завершаем установку пострега:

# emerge --config dev-db/postgresql-server:9.0
Всё, пострег установлен. Запустим сервер:
# /etc/init.d/postgresql-9.0 start
Далее шаги снова частично из исходного мануала. Но у нас поменьше действий. Создадим нового пользователя:
# su postgres
$ createuser -P -s -R -d ballzofsteel
Enter password for new role: boobs
Enter it again: boobs
$ exit
 Теперь у нас есть новый пользователь с именем ballzofsteel и паролем boobs. На всякий случай перезапустим пострег:
# /etc/init.d/postgresql-9.0 restart
Теперь лезем в венду, запускаем там командную строку и перемещаемся куда надо(версия пострега может отличаться, у меня была 8.4:
cd "C:\Program Files\PostgreSQL\8.4\bin"
 И делаем дамп всех баз:
pg_dumpall.exe --username=postgres > holdem.dump
Поскольку, как я уже говорил ранее, у меня диск C был под завязку забит, у меня команда выглядела чуть иначе:
pg_dumpall.exe --username=postgres > D:\holdem.dump
Собственно holdem - это и есть имя HM'овской базы. Оно может быть и другим, если Вы его сделали не дефолтным. У меня было дефолтным и имя, и пароль. Пароль - postgrespass почему-то надо было ввести аж четыре раза: два раза в начале дампа и два в конце. Это нормально, как оказалось. Хотя я из-за этого стремался и раз пять этот дамп переделывал.

Если одолел склероз и не помним ни названия базы, ни пароля, идём в папку HM'а и чуть дальше: "...\Holdem Manager\Config\HoldemManager.config" - в этом файле смотрим и видим третью строчку:
SERVER=10.0.2.2;PORT=5432;UID=holdem;PWD=holdem
Где UID - название базы, а PWD - пароль от неё же.

Теперь переместим holdem.dump в хост-систему. Это уж описывать не буду, делается через "Общие папки". Затем развернём базу:
# su postgres
$ psql -f holdem.dump postgres
$ exit 
 Теперь делаем так: "Пуск >> Программы >> Postgresql >> Stop Server" или что-то типа того(а лучше сразу удаляем пострег в венде через "Панель управления"), после чего запускаем HM, который не сможет теперь соединиться с сервером и вылезет соответствующее окно. Либо можно просто напрямую его запустить, это DBControlPanel.exe в папке HM'a на диске. И там указываем:
Server Name: 10.0.2.2(вот она, главная хитрость!!!)
Port Name: 5432(оставляем прежним)
Login Name: ballzofsteel
Password: boobs
Затем жмём Connect, указываем  нашу базу базой по умолчанию(Set as Default) и Start Holdem Manager.

Готово! Теперь наши базы в гораздо большей безопасности, за пределами вражеской территории!