25 мая 2009 г.

Ошибка в модуле Invite для drupal 6

Взято здесь

находим в файле invite/invite.module строку 655 и правим -

function invite_get_role_limit($account) {
if (!isset($account->roles)) {
$account = user_load(array('uid' => $account->uid));
}

// localize roles
$roles_loc = array();
foreach($account->roles as $role) {
$roles_loc[] = t($role);
}


$role_limit = 0;
foreach (user_roles(0, 'send invitations') as $role) {
$role_no_space = str_replace(' ', '_', $role);
if (in_array($role, $roles_loc)) {

Вот и все! Наслаждаемся работой модуля!!!
Удачи!

php не хватает памяти

При работе с друпалом начали возникать ошибки, по типу:

Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 3270 bytes) in /var/www/vhosts/arsyscad/arsys.uz/httpdocs/includes/form.inc on line 2209

Это значит, что Php не хватает памяти.

1. Создаем файл info.php со следующим содержимым:

<_?_php
phpinfo_
() ;
?_>

Там, где стоит _ ничего быть не должно, удаляем подчеркивание. Просто движок блогов у гугла уродует код.

2. Запускаем его. Смотрим, сколько памяти выделено.
3. Если памяти мало, лезем в /etc/php5/apache2/php.ini, ставим лимит памяти побольше, скажем 128

memory_limit=128M

24 мая 2009 г.

http://www.solargate.ru/delaem-blog-na-drupal
http://habrahabr.ru/blogs/about_cms/18078/ (тоже самое, но с комментами)
http://www.solargate.ru/avtorizaciya-po-openid-v-drupal-5-x
http://shaman.asiadata.ru/node/89 - кросспост в ЖЖ
дабы не забыть почитать

23 мая 2009 г.

Web-server

Вот не дает мне покоя, что у меня поднят LAMP на домашнем серваке, а я его не использую ))
Сайт какой-нибудь сварганить, что ли? Вот только какую CMS поставить? Года три назад использовал Мамбу, потом как то смотрел на Друпал..
А вообще, зачем мне это? Есть же блоги )) Зуд в одном месте просто..

win server 2008 & antivirus

Ну чтож, есть и минусы в том, что у меня на домашней станции стоит windows web server 2008. Надоел mcAffee, решил поставить что-нибудь другое.
Итог:
  1. Антивирус Касперского 2009 меня послал.
  2. Dr. Web Security Space меня послал.
  3. Nod32 3.0 меня также послал.
  4. Avast! Home Edition тоже послал =)
А все почему? А потому, что они не хотят идти на серверной платформе ))
Поставил обратно mcAffee.

Deluge автозапуск

Иной раз сервер перезагружается.
Хочется, чтобы автоматом стартовал deluge-демон и deluge веб-морда, причем от нужного пользователя. На просторах российского форума по убунте найдено следующее решение:


#!/bin/sh
#
#Deluge daemon startup script

DAEMON=/usr/bin/deluged
WEBUI=/usr/bin/deluge
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/bin:/usr/sbin
NAME=deluged
DESC="Deluge daemon"

export LANG=ru_RU.UTF-8


test -x $DAEMON || exit 0

case $1 in
start)
echo -n "Starting $DESC: $NAME\n"
start-stop-daemon --background --chuid xxx --start --quiet --exec $DAEMON
start-stop-daemon --background --chuid xxx --start --quiet --exec $WEBUI -- --ui web
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME\n"
killall deluge
killall deluged
echo "."
;;
*)
echo "Usage: deluged {start|stop}"
exit 1
;;
esac

exit 0

Где xxx - имя нужного пользователя.
Скрипт засовывается в автозагрузку.

22 мая 2009 г.

Антивирус

McAffee стабильно жрет 117 метров памяти, и переодически до 40% проца. Зато лицензия ))
Но вот я подумал - каждый месяц я получаю на работе "Чип" с диском. А там есть - Касперский, Доктор Веб, Нод. И все с ключами.
Может попробовать какой-нибудь другой? Вот только какой? Что то я давно антивирусами не интересовался. Вроде бы и каспер стал не такой прожорливый как раньше, и остальные вроде неплохо себя зарекомендовали..

21 мая 2009 г.

Свободный софт на компе с виндой

Так получилось, что на домашнем компе у меня стоит винда. Мне просто жалко, что у меня более-менее неплохое железо, в том числе видеокарта простаивает. Все же игрушек под линукс пока маловато. Хотя я играюсь и редко, но все же сей факт для меня важен. Кстати, игрушки - это то немногое из нелецензионного ПО, что может стоять на моем компе. Кстати в качестве системы сейчас стоит Microsoft Web Server 2008, доставшийся по какой то рекламной акции от мелкомягких. Кстати, очень даже ничего. Остальное ПО я предпочитаю использовать свободное. Как то:
  1. Офисные приложения - естественно, OpenOffice
  2. Работа с изображениями - Gimp, мне много не надо, Photoshop мне точно без надобности
  3. Браузер - Firefox без никаких вопросов
  4. Почта - Thunderbird так же
  5. IM - Miranda
  6. Музыка - раньше использовал всегда winamp, бесплатную версию, сейчас решил попробовать Aimp. Пока вроде нравится. На самом деле обожаю Amarok, первой ветки, вторую пока еще не допилили. Хотя когда допилят кеды под винду, можно будет его заюзать все же!!
  7. Фильмы - всегда ставлю klite кодеки, там в коплекте идет windows player classic, очень меня устраивает - просто и удобно. Но переодически пробую ставить vlc ))
  8. Работа с CD/DVD - раньше использовал Nero. Надоело. Поставил ImgBurn.
  9. Архиватор - PeaZip. Очень даже ничего.
  10. Торрент - uTorrent, естественно. Но сейчас использую веб-морду к deluge, установленному на домашнем сервере =)
  11. Виртуальные диски - Daemon Tools Lite, кстати, уже умеет сам делать образы.
  12. Виртуальные машины - VirtualBox.
  13. Антивирус - использую корпоративный )) mcAffee, но вообще очень неплох Avast! для домашнего использования бесплатный.
Из нелицензионного ПО есть только игры )) качаются, ставятся, играются, сносятся )) играю вообще очень редко.
Как то так.

20 мая 2009 г.

еще кое-что о deluge

пропустил мимо глаз такую возможность - если мы качаем файло не заморачиваясь в одну папку, то и потом мы имеем удобную возможность рассортировать это так, как нам надо - фильмы налево, музыку направо - в меню торрента есть пункт "Переместить". Правда в ajax версии интерфейса почему то не работает, но там много чего еще пока не работает )) хоть и очень красиво. Подождем ))
Но а вообще, можно при скачивании выбирать папку, куда качаем. Хотя мне проще сохранять торрент-файлы в определенную папку, откуда deluge автоматом их запускает. Потом уже раскладываем так, как надо

19 мая 2009 г.

Невозможно залогиниться в веб-интерфейсе deluge

Чтож, расскажу еще об одном моменте, меня он заставил на какое-то время призадуматься.
Итак, пытаемся зайти в веб-интерфейс.. А нас не пускает. В терминале пишет что то в этом духе:

[ERROR ] 20:55:07 client:158 Socket or XMLRPC error: <Protocol Error for localclient:652eab1b71bbac1795f1706673646f1abefdfa8b@127.0.0.1:58846/RPC2: 401 Unauthorized>

(Возможно, написано не совсем верно, просто если копировать ошибку целиком, движок блогов гугла просто стирает ее =) )

Это говорит о том, что демон deluge запущен не от того пользователя, от которого мы запускаем веб-интерфейс. Убиваем процесс демона, запускаем его от нужного пользователя.
И сразу все хорошо.

16 мая 2009 г.

torrentflux

Попробуем теперь torrentflux.
Ставить будем по этой статье.

единственный момент - когда в настройках меняем язык, надо в файле /var/www/torrent/language/lang-russian.php поменять кодировку на "cp1251", дабы браузер корректно отображал русские символы.

ну что ж, посмотрим на него, но пока мне что то не очень нравится ))
кстати, есть расширение для firefox, которое позволяет быстро открывать страницу управления TorrentFLux, а также добавляет в контекстное меню ссылок возможность отправки их в TF, но на большинстве моих торрент-трекеров надо скачивать торрент-файл - https://addons.mozilla.org/ru/firefox/addon/7876

При добавлении торрента, в случае, если скачиваемое файло названо по-русски, в TF отображаются закорючки... Но само файло скачивает нормально, русские имена остаются неизменными..

Да, еще - в списке закачек отображается исключительно название торрент-файла, что не есть удобно.
После перезагрузки раздачи не стартуют автоматически.

13 мая 2009 г.

Продолжение истории с deluge..

Ну чтож, я рано радовался.
То, ради чего я старался.. не работает. ну или не все работает.
К примеру, захожу я на свой любимый трекер, щелкаю по кнопочке "скачать", выбираю в диалоговом окне firefox`a "открыть с помощью Deluge".. файл скачивается.. и фсё. В deluge он не появляется.
Нет, конечно, можно скачать этот файл, а потом открыть его в deluge. Но тогда мне было бы проще сразу же сохранить его в сетевую папку, откуда демон берет торренты автоматом.
Но все же, возможно, управлять текущими торрентами, удобнее из веб-морды.
Второй момент, который мне не нравится. В конфигурации указывается папочка, куда по умолчанию качается файло. Но для каждого отдельного файла можно путь изменить. Просто к примеру я никогда не качаю файло в одну большую папку. Я их сразу раскидываю по видам, ну там видео, музыка и тп. Так вот, тут надо ручками прописывать путь к папке, куда ты хочешь положить скачиваемое файло, нет волшебной кнопочки "Обзор".. =)
В принципе, тоже не очень напряжно. Но все же..
И третий момент.
Вот перетащил я винт с фильмами на этот домашний сервер. Некоторые фильмы очень рейтинговые на трекере, я с них имею хороший рейтинг. Хочу возобновить раздачу. Качаю торрент-файл с трекера, или же беру его из кеша uTorrent, подсовываю deluge, указываю ему, где лежит файло, на которое указывает этот торрент-файл и.. Если при скачивании с помощью uTorrent я переименовал файло, то я не смогу указать на это файло deluge. Он начнет скачивать с тем именем, которое файлу присвоил создатель раздачи. Соответсвенно я не смогу дораздать. Да и при сохранении я предпочитаю сразу переименовывать в более удобоваримые имена, чем те, что зачастую фигурируют на трекерах..
В четвертых. Контекстное меню в ГУИ-морде работает хуже чем в веб-морде. К примеру, через контекстное меню я не смог понизить скорость скачивания для определенного трекера, пришлось лезть во вкладку Options. Не то, чтобы очень неудобно, но раздражает.
В общем, пока я не в восторге. Поюзаю пока эту связку, дальше видно будет, либо попытаюсь улучшить ее, либо пойду еще каким-либо путем.
Засим откланиваюсь, устал я что то, пойду спать.

torrent клиент на файл сервере под убунтой

Собственно, а почему файловый сервер у нас простаивает?
Да и откуда на нем должно браться файло?
Непорядок.
Поставим ка мы на него torrent клиент.
Привык в винде к uTorrent. В kubuntu в свое время юзал kTorrent.
Но в данном случае нас интересуют клиенты, которые могут работать без ГУИ и у которых есть веб интерфейс.
Варианты:
  1. Связка rTorrent + wTorrent. Описаний настройки в сети довольно много, но процесс меня пугает =)
  2. TorrentFlux и по ходу его форк Torrentflux-b4rt. Созданны как веб интерфейс и ничего больше. Можно подумать над настройкой.
  3. Deluge. Изначально планировался как torrent клиент под gtk. Но начиная с какой-то версии он умеет работать как демон, к которому уже можно подключать нужный интерфейс - либо графическую морду, либо веб-морду, либо управлять через консоль.
Пока думаю попробовать заморочиться с третьим вариантом.
Опачки - оказывается к нему можно подцеплять виндовую морду! Буду гуглить дальше.
Просто довольно удобно было бы как обычно - сидишь в браузере, щелкнул на закачку torrent файла и открываешь его с помощью виндовой морды. А та уже передает закачку демону на сервер.

Ставим deluge (вообще советуют ставить версию с оф.сайта, но я поставил из репозиториев)

sudo aptitude install deluge-core
sudo aptitude install deluge-webui
sudo aptitude install deluge-console

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

sudo apt-get -f install

Запускаем

deluged

Запускаем web морду

deluge --ui web

Кстати, выполняем эту команду от имени своего пользователя, не от рута. Ибо в таком случае веб-интерфейс не будет работать. Почему, не разбирался пока.
Но после запуска этого одна консоль у нас пропадет, ибо там выполняется эта команда.
Для того, чтобы команда выполнилась и осталась висеть в фоне, пишем

deluge --ui web&

Если надо, чтобы веб-интерфейс был доступен всегда, запихайте эту команду куда-нибудь в автозапуск, но так, чтобы она выполнялась с правами обычного пользователя.
Кстати, рекомендую в автозапуск же запихать запуск демона deluged.

Web интерфейс работает по порту 8112.
Заходим через браузер на нужный сервер по этому порту.
Пароль по умолчанию - deluge.
Настраиваем.
Предложено несколько вариантов оформления. Ajax вариант самый красивый. Но в нем нет всех возможностей. К примеру, нельзя указать для конкретного торрента, куда ему скачивать файл. Можно только указать общую папку для всех торрентов. В остальных шкурках эта возможность присутствует.

Идем далее.
Существует возможность использовать ГУИ-оболочку к deluge, запускаемую на любом отличном от сервера (да и на сервере, если там установлено графическое окружение) компе. ГУИ-оболочки есть и под Linux и под Windows.
Но перед использованием ГУИ-морды надо разрешить это демону.
Делаем это любым из двух способов:
  1. Через веб-интерфейс. в настройках - Deluge - Сервис - Разрешить удалённое соединение (ставим галочку)
  2. Через консольный интерфейс. Пишем deluge --ui console. Затем config allow_remote True.
Веб-интерфейсом часто пользоваться неудобно. Но это сугубое ИМХО.
Так как на десктопе у меня винда (Windows Web Server 2008), поставим клиент под винду.
Идем на официальный сайт проекта, качаем версию для винды. Рекомендуется качать туже версию, что и у демона, установленного на сервере.
Скачали, ставим. Программа установки также предложит поставить GTK+ Runtime. Соглашаемся.
После того, как клиент был установлен, лезем в его настройки:
  1. Запускаем клиент
  2. Зайти "Preferences -> Interface" и снять галку с "Classic Mode".
  3. Рестартовать клиент. Должно появиться окно Connection manager'а
  4. Удалить строчку с localhost. Нажав кнопку "Add", ввести IP сервера (в нашем случае коробки). Порт оставить тот же.
Тут я на некоторое время завис.
Помимо IP адреса надо было ввести имя пользователя и пароль.
Пароль, предположим, я мог через веб-интерфейс установить.
А какого пользователя писать? Писал своего и пароль, установленный через веб-интерфейс.
Нифига.
Писал своего и его пароль в системе. Нифига..
Покопался.
Значит, делаем так:
  1. Идем на сервере в домашний каталог нашего пользователя (от которого мы запускаем deluge)
  2. Далее идем в каталог /.config/deluge
  3. Открываем файл auth
  4. Во второй строчке пишем имя пользователя и пароль в формате user:password (причем замечу, что эту информацию мы пишем от балды)
  5. Рестартим deluge - deluged restart
  6. На компе с виндой идем Менеджер Соединений, в настройках соединения забиваем этого пользователя и его пароль.
  7. Жмякаем "Коннект"
  8. Вуаля, клиент подключился.
Таким образом, мы получили привычный способ обработки торрент-файлов - открываем их торрент-клентом (ГУИ-мордой) и выбираем, что нам делать.
Но можно и по другому.
Я пробовал и такой метод:
  1. Создаем папочку на сервере, скажем /home/user/torrents
  2. Расшариваем ее в самбе.
  3. В настройках deluge через туже веб-морду ставим, чтобы он автоматом брал торренты из этой папочки.
  4. А далее, мы просто сохраняем торрент-файлы в эту папочку.
Все, буду тестить.

Кириллица в консоли

кстати, что радует - в ubuntu-server 9.04 нет проблем с кириллицей в консоли =)

12 мая 2009 г.

Изменить размер иконок на рабочем столе. уж больно большие.
Делаем активным рабочий стол, зажимаем "Ctrl" и крутим колесо мыши...

9 мая 2009 г.

Домашний сервер на Ubuntu

Была старенькая машинка, решил ее использовать.
Конфигурация примерно такая - селерон на 2 гигагерца, ddr первый память две планки 512 и 256 и винт идешный на 80 гигов.
Сначал решил поставить убунту с графикой, типа чтобы попроще было.
Посмотрел - жрет примерно 180 метров памяти. Да и зачем мне на нем графика, если он тихо мирно будет стоять в углу?
Поставил серверную версию - ubuntu-server 9.04.
Вдаваться в подробности установки не буду, все просто.
Были выбраны роли - LAMP, OpenSSH, Samba.

После установки сервера памяти уходит порядка 80 метров =))

После этого было решено добавить в систему несколько жестких дисков, которые все равно валялись просто так. Использовать их предполагается в качестве временного хранилища файлов, ибо я им уже не доверяю )) Также был добавлен sata винт на 160 гигов с фильмами, который до этого висел на основном компе.

Устанавливаем дополнительный жесткий диск.

С помощью команды

fdisk -l

мы увидим информацию об установленных в нашей системе дисках.


Выполним команды следующего вида:

mkdir /media/multimedia
chmod 777 /media/multimedia
mount /dev/hdb /media/multimedia

Т. е. наш винт, как устройство будет находится в папке multimedia, которая в свою очередь будет монтироваться в папке multimedia.
Эта команда сделает наш диск доступным для всех пользователей сети (дадим им полные права на этот диск).
И теперь смонтируем его с помощью еще одной команды.


Сейчас мы наш диск смонтировали как бы на время нашего сеанса работы. Чтобы в дальнейшем наш винт монтировался автоматически при загрузке системы отредактируем файл fstab:

nano /etc/fstab


Редактор откроет вам содержание этого файла, где вы увидите примерно следующее:

# /etc/fstab: static file system information.
#
#

proc /proc proc defaults 0 0
/dev/hda1 / ext3 defaults,errors=remount-ro 0 1
/dev/hda5 none swap sw 0 0
/dev/hdb1 /media/hdb1 ext3 defaults 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

Теперь добавим еще одну строчку про наш жесткий диск:

/dev/hda /media/multimedia ntfs defaults 0 0


Что бы не перезагружаться, можно выполнить команду- монтировать все:

mount -a


Теперь сконфигурируем Samba

Это нужно для того, чтобы наш файловый сервер был виден в домашней сети.
Выставляем в конфигурационном файле smb.conf нужную рабочую группу:

nano /etc/samba/smb.conf


Находим и правим строчку:

workgroup = WORKGROUP


Что бы диск был виден а так же читался и писался для всех пользователей сети отредактируем файл smb.conf:

[hda public hard disk]
comment = Public Folder
path = media/multimedia
public = yes
writable = yes
create mask = 0777
directory mask = 0777
force user = nobody
force group = no group

(На самом деле хватит
path = media/multimedia
writable = yes)

С остальными параметрами можно разобраться по мере необходимости.

Сохраняем изменения в файле и перезагружаем пакет Samba:

/etc/init.d/samba force-reload


Для домашней сети будет достаточно одного пользователя samba (думаю секретов внутри семьи нет).
Например я добавил пользователя- home:

smbpasswd -a home

Самба спросит, какой пароль установить для этого пользователя. Два раза его вводим.

Предварительно надо создать пользователя home. Я для этого использовал webmin. Хотя проще командами.

При настройке иногда сверялся со статьей http://liski.vsi.ru/ubuntu/index.php?page=95
Она же использована для написания этого поста.

Далее в планах - настройка торрент-клиента на этой машине.