среда, 30 марта 2011 г.

Google Календарь + Lightning (дополнение к Thunderbird)

О Google Calendar
Календарь от Google - это органайзер с очень удобным web-интерфейсом выполненным в лучших вебдванольных традициях, выглядящий примерно вот так(картинка кликабельна):



Для того, чтобы получить доступ к календарю или любому другому сервису гугла, вам сначала необходимо завести учётную запись Google, сделать это можно перейдя по сылке. Если вы всё сделали как я сказал, то в результате окажетесь на странице календаря с названием состоящим из вашего имени и фамилии, которые были указаны при регистрации учётной записи в гугле.

Интерфейс приложения достаточно простой, думаю что в нём вы разберётесь без моей особой помощи(не зря дизайнеры гугла старались), скажу только, что календарь имеет несколько режимов просмотра: день, неделя, месяц, следующие 4 дня и повестка дня. Режимы просмотра переключаются голубыми закладками в правом верхнем углу окна, обычно я работаю с календарём в режиме "месяц". Создать новое событие можно кликнув в нужную область сетки календаря, откроется окно для ввода события. Чтобы переместить событие на другой день/час/итд достаточно перетащить его мышкой в соответствующую область.

По умолчанию, как я уже говорил, создаётся один календарь носящий ваше гордое имя, но никто не мешает вам создать несколько календарей, сделать это можно нажав кнопку "Добавить" в левой части страницы над названием вашего календаря выделенного красным фоном. У меня, как можно было заметить на картинке выше, создано два календаря: первый используется для планирования личных дел(они показываются красным) второй называется "Рекламные места"(показывается розовым). Дело в том, что я заведую популярным развлекательным сайтом, и, чтобы не запутаться в толпе рекламодателей вынужден вести строгий учёт. Когда рекламодатель бронирует рекламное место, я в соответствующий день календаря добавляю событие со ссылкой на рекламируемый сайт и названием рекламного места, например: "footbolka.ru обзор первым постом".

Thunderbird + Lightning
Даже отпетые технодауны давно знают, что Mozilla FireFox - лучший браузер на Земле. Сами технодауны любят его за закладочки, а особо продвинутые пользователи - за кучу разнообразных дополнений. Помимо удобного и бесплатного веб-броузера корпорация Mozilla выпускает такой же бесплатный и не менее удобный почтовый клиент Thunderbird, к которому тоже есть масса полезных дополнений, в частности Lightning(лайтнинг), которое расширяет ваш почтовик удобным органайзером, внешне очень похожим на Google календарь, что, согласитесь, очень удобно, поскольку вам не придётся изучать несколько разнородных интерфейсов, Thunderbird с установленным дополнением Lightning выглядит вот так:


Если у вас ещё не установлен Thunderbird, сделайте это перейдя по ссылке. После того как Thunderbird установлен, скачайте расширение Lightning. Кстати, если вы уже прикипели к какому-то другому почтовому клиенту можете вместо Thunderbird+Lightning установить SunBird - это тот же лайтнинг только не в виде плагина к почтовику, а в виде отдельного приложения.

Как установить дополнения в Thunderbird:
  1. Нажмите правой кнопкой мыши на ссылке "установить" и выберите «Сохранить ссылку как…» для того, чтобы сохранить *.xpi-файл на жёстком диске.
  2. В Mozilla Thunderbird откройте окно менеджера дополнений через меню «Инструменты|Дополнения».
  3. Нажмите кнопку «Установить…», найдите и выберите файл, который вы скачали и нажмите «OK».
Lightning + Google Calendar
Теперь давайте подружим Lightning с нашим гугл-календарём, если вы до сих пор не понимаете зачем это делается, постараюсь объяснить. Помните, я говорил, что развешиваю рекламу на одном популярном сайте? За размещение рекламы на этом сайте я получаю деньги, но жить на эти деньги можно разве что вместе с родителями, поэтому приходится работать ещё и на работе. Но рекламодатели этого не знают и в то время, когда я нахожусь на работе, стучатся ко мне в аську и спрашивают какие рекламные места свободны и на какие дни. Естесственно всего этого в своей большой, но дырявой голове удержать не могу, а потому и дома и на работе держу Thunderbird+Lightning подключенные к одному и тому же Google календарю. Теперь вы понимаете зачем необходимо подружить Lightning с гугл-калом? Google является всего лишь бесплатным сетевым хранилищем для наших очень полезных данных. Для того чтобы использовать Google в качестве источника данных календаря, необходимо установить ещё один плагин.

После того как плагин установлен, снова идём на http://calendar.google.com и открываем окно настроек:



В результате манипуляций изображённых на картинке выше, вылезает вот такое окно:


Скопируйте ссылку на которую ведёт выделенная кнопка в буфер обмена(правый клик по кнопке->скопировать ссылку). Далее идём в уже запущенный Lightning и проделываем манипуляции как на картинке:



На самом деле, окно на которое показывает длинная стрелочка откроется не сразу, перед ним выпрыгнет ещё одно окошко в котором надо сказать, что календарь находится в сети. Кстати, более поздние версии Lightning могут выглядеть несколько иначе, но общий смысл написанного сохраняется. После создания нового сетевого календаря Lightning полезет на гугл, в результате чего вы увидите приглашение ввести пароль, введите пароль от учётной записи Google, на этом всё! Ваш теперь ваш Lightning будет синхронизироваться с сетевым гугл-календарём.

Google calendar + Мобильный телефон
Практически все современные телефоны(даже моя дубовая Motorola L7e) имеют опцию "Календарь" и способны синхронизировать его с удалённым сервером по протоколу SyncML, однако, на момент написания данной статьи гуглкал не поддерживает этот протокол... Слава богу, нашлись добрые люди и написали Google Calendar<->SyncML транспорт, которым можно воспользоваться зарегистрировавшись, перейдя по ссылке: http://www.goosync.com/ Регистрация на момент написания статьи - бесплатна. В процессе регистрации вас бросит на страницу гугла, где будет задан вопрос "хотите ли вы разрешить сервису goosync лезть в ваш календарь, необходимо ответить утвердительно. После успешной регистрации вам будет дана инструкция по настройке вашего телефона, приводить здесь эти настройки не имеет смысла поскольку для разных моделей они разные. Единственный момент который раздражает меня в моём телефоне, это отсутствие возможности синхронизировать календарь с заданной периодичностью, т.е. я должен явно выбирать в меню телефона пункт "синхронизация" после чего телефон меняется данными с сервером. Пользуясь случаем хочу спросить: может кто-нибудь подскажет модель телефона который умеет синхронизироваться по SyncML периодически?

В итоге мы совершенно бесплатно получили один сетевой календарь доступный из трёх приложений:
  1. Через веб-интерфейс гугла которым можно пользоваться из любой точки земного шара при наличии доступа в Интернет
  2. Из почтового клиента с функциями органайзера
  3. Из мобильного телефона
Для дырявых голов типо моей, все эти штучки очень полезны, прежде всего тем, что вы будете получать кучу напоминаний на одно и то же событие: дома и на работе вам будет напоминать Lightning, в дороге - мобильный телефон, с утра гугел будет слать вам в почтовый ящик повестку дня и уведомлять вас по SMS.

пятница, 25 марта 2011 г.

Настройка vsftpd

Я думаю каждый понимает о необходимости ftp сервера. И меня не миновало :) Свой выбор я остановил на vsftpd.

Основные фичи

  • Виртуальные ip.
  • Виртуальные пользователи.
  • работает как через [x]inetd так и отдельно.
  • мощная система настройки для каждого(!) пользователя.
  • увеличение полосы пропускания.
  • настройка для каждого ip.
  • лимиты для каждого ip.
  • поддержка протокола IPv6

На данный момент vsftpd используется на большинстве серверов под управлением linux. Среди них ftp.redhat.com, ftp.suse.com, ftp.debian.org, ftp.gnu.org, ftp.gnome.org, ftp.kde.org. Думаю, тут комментарии излишни :)

Я ставил vsftpd из пакета, из сырцов было лень, но сложностей там не должно быть.

# apt-get install vsftpd

Если вы собираете vsftpd из сырцов , перед установкой надо выполнить несколько обязательных действий.

Для дефолтной конфигурации:

# useradd nobody
# mkdir /usr/share/empty
# mkdir /var/ftp
# useradd -d /var/ftp ftp
# chown root.root /var/ftp
# chmod og-w /var/ftp

Далее обычно создаются /var/ftp/pub и /var/ftp/icoming

# mkdir /var/ftp/pub
# chmod 2775 /var/ftp/pub
# chown root.psycho /var/ftp/pub

Объясню последнюю строчку. Владельцем каталога является root а группа к которой принадлежит каталог /var/ftp/pub это psycho т.е моя группа, это сделано для того чтоб я под своим юзером мог менять содержимое. Ибо, делать это под рутом плохой признак :)

Каталог под аплоад.

# mkdir /var/ftp/incoming
# chmod 3773 /var/ftp/incoming
# chown psycho.psycho /var/ftp/incoming

Ну с владельцами я думаю все ясно а права я выставил чтоб анонимные пользователи могли писать но не могли просматривать содержимое :)

После выполнения этих действий можно начинать инсталляцию.

Если вы используете стандартный “inetd” вам надо отредактировать /etc/inetd.conf и добавить такую строку

ftp stream tcp nowait root /usr/sbin/tcpd /usr/local/sbin/vsftpd

Если у вас не установлены tcp_wrappers и вы не собираетесь их использовать то уберите из строчки /usr/sbin/tcpd

Ну и соответственно рестартнуть inetd.

Если вы используете не inetd а xinetd то в каталоге ../vsftpd/EXAMPLE/INTERNET_SITE/ лежит пример файла конфигурации.

Если у вас на машине запущен PAM то вам необходимо создать файл /etc/pam.d/ftp Пример можно взять в ../vsftpd/RedHat/vsftpd.pam Если вы этого не сделаете то локальные юзеры не смогут залогиниться.

Настройка vsftpd.conf

Пример файла конфигурации с комментариями

# Примерный конфиг /etc/vsftpd.conf
#
#
# разрешить вход дядюшке anonymous'у?
anonymous_enable=YES
#Не запускать через inetd
#listen=YES
# разрешать вход локальным пользователям.
local_enable=YES
#
# Разрешить любую форму команды записи FTP.
write_enable=YES
#
# umask по умолчанию для локальных юзеров 077. Возможно хочется
# изменить на 022, (022 используется в большинстве ftpd's)
#local_umask=022
#
# Разрешить аплоад для анонимусов.
# Имеет смысл когда разрешена запись (write_enable=YES)
# кроме того каталог должен быть доступен для записи FTP юзером.
anon_upload_enable=NO
#
# Разрешить анонимусу создавать каталоги
#anon_mkdir_write_enable=YES
#
# Разрешить мессаги каталогов - сообщения которые выдаются при
# входе в определенную директорию.
dirmessage_enable=YES
#
# логить аплоад/даунлоад
xferlog_enable=YES
#
# убедиться что PORT коннекты вылазят из порта 20 (ftp-data).
connect_from_port_20=YES
#
# Можно изменять автоматически владельца на аплоадных файлах
# естественно использовать тут root'а я не советую
chown_uploads=YES
chown_username=psycho
#
# в какой файл пишем логи
xferlog_file=/var/log/vsftpd.log
#
# можно увидеть лог и в формате xferlog
#xferlog_std_format=YES
#
# таймаут на открытую && неиспользующуюся сессию.
idle_session_timeout=600
#
# таймаут на коннект по порту data.
#data_connection_timeout=120
#
# рекомендуется создать в системе пользователя, которого
# ftp стервер будет использовать как конкретно униженного в своих
# правах юзверя.
#nopriv_user=ftpsecure
#
# Это для распознования асинхронных ABOR запросов.
# не рекомендуется по соображениям безопасности (этот код довольно
# сложный (и проверять его разработчикам видимо влом Demige)).
# А если его не включить то возможно старые FTP клиенты вас не поймут.
#async_abor_enable=YES
#
# По-умолчанию сервер будет разрешать ASCII режим, но фактически
# игнорировать реквест. Здесь можно разрешить использовать ASCII.
# Есть ппасность при вкл. ascii_download_enable что некоторые нехорошие
# юзеры будут тормозить вашу машину командой "SIZE /большой/файл" в
# ASCII режиме.
# Эти ASCII опции разбиты на аплоад и даунлоад т.к. вы можете возжелать
# разрешить ASCII-аплоады (для работы аплоад скриптов), без
# разрешения даунлоада из-за DoS риска по командам SIZE и ASCII.
# Поддержка ASCII на стороне клиента должна быть.
#ascii_upload_enable=YES
#ascii_download_enable=YES
#
# Баннер при входе
ftpd_banner=Welcome to Psycho FTP.
#
# файл неразрешенных email адресов.
# юзабельно для защиты от DoS атак.
deny_email_enable=YES
# (умолчальный файл)
banned_email_file=/etc/vsftpd.banned_emails
#
# можно разрешить некоторым юзерам chroot()ится в их домашний каталог
# если chroot_local_user=YES, тогда это будет листинг юзеров, которые
# не могут chroot()ится.
# если chroot_local_user=NO то в ftp_chroot_list прописывается какого
# виртуального юзера куда chroot`ить

chroot_list_enable=YES
chroot_list_file=/etc/ftp_chroot_list
# для локальных юзверей
chroot_local_user=YES
# можно разрешить опцию "-R" для встроенного ls.
# по умолчанию запрещена т.к. сильно загружает систему на больших сайтах
# Тем не менее некоторые FTP-клиенты такие как "ncftp" и "mirror" предпологают
# ее наличие. Так что лучше ее включить.
#ls_recurse_enable=YES

Вобщем это мой рабочий конфиг, ничего сложного в настройке нет.

Проверим работоспособность

# ftp 192.168.5.13
Connected to 192.168.5.13.
220 Welcome to FTP.
Name (192.168.5.13):
331 Please specify the password.
Password:
230 Login successful. Have fun.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> bye
221 Goodbye.

В ../vsftpd/EXAMPLE лежат разнообразные примеры файла конфигурации уже заточенные под конкретные цели, можно выбрать из готового.

При написании этой статьи использовалось официальное руководство и собственный опыт :) Документацию и последнюю версию vsftpd можно найти на http://vsftpd.beasts.org/

четверг, 10 марта 2011 г.

Установка Remote Server Administration Tools (RSAT) на Windows 7 SP1

RSAT — Remote Server Administration Tools для меня лично стали незаменимыми с момента их выпуска компанией Microsoft. После того, как я наткнулся на проблему невозможности установки их на Windows 7 с предустановленным Service Pack 1 — пришлось уточнить в гугле, действительно ли Microsoft не сделали их поддержку в этом крупном обновлении? Официальный ответ — «ждите апреля». Тогда я наткнулся на статью об интеграции этого полезного набора средств — примечание переводчика.

Эта статья представляется как черновая. Используйте ее только для экспериментов. Никаких гарантий, что у вас заработает все то, что тут написано
Когда вы пытаетесь установить RSAT на Windows 7 SP1 — вы получаете ошибку:

"This update is not applicable to your computer"



В Microsoft это комментируют следующим:
Еще рано!

Я нашел способ как это обойти на блоге MS и напишу об этом:

Если у вас x64 Windows, замените в командах «x86» на «amd64».

1. распаковываем установщик RSAT x86fre_GRMRSAT_MSU.msu в каталог d:\rsat
2. Запустим распаковщик CAB:

expand -f:* "D:\RSAT\Windows6.1-KB958830-x86.cab" "D:\RSAT\expand"


3. Скачиваем Service Pack 1 для Windows 7
4. Распаковываем его командой:

windows6.1-KB976932-X86.exe /X:D:\Sp1

в каталог D:\Sp1
5. Распаковываем CAB сервис-пака:

expand -f:* "D:\Sp1\windows6.1-KB976932-X86.cab" "D:\RSAT\sp1"


в каталог D:\RSAT\sp1.
6. Устанавливаем компоненты RSAT следующими командами по одной (смотрим в TaskManager окончание процесса pkgmgr):

pkgmgr /ip /m:"D:\RSAT\expand\microsoft-windows-remoteserveradministrationtools-package~31bf3856ad364e35~x86~~6.1.7600.16385.mum"


pkgmgr /ip /m:"D:\RSAT\expand\microsoft-windows-remoteserveradministrationtools-package~31bf3856ad364e35~x86~en-us~6.1.7600.16385.mum"


(заменив en-us на язык нашей системы — для русской — ru-ru)

pkgmgr /ip /m:"D:\RSAT\expand\microsoft-windows-remoteserveradministrationtools-package-minilp~31bf3856ad364e35~x86~en-us~6.1.7600.16385.mum"


(заменив en-us на язык нашей системы — для русской — ru-ru)

pkgmgr /ip /m:"D:\RSAT\Sp1\microsoft-windows-remoteserveradministrationtools-package~31bf3856ad364e35~x86~~6.1.7601.17514.mum"


7. Перезагружаем систему (если попросит) и открываем «Добавление компонентов Windows», после чего отмечаем галочками нужные нам компоненты

Ошибка обновления Windows 7 SP1 fatal error c0000034

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

Ошибка возникает при установке Sp1 на windows7, после перезагрузки машина перестает грузится c ошибкой

Fatal Error C0000034 applying update operation (Update 282 of 103814)

К счастью уже есть решение этой проблемы.

1) При начальной загрузки Windows нажимаем F8 и выбираем «Устранение неполадок компьютера»

2) Запускаем «Командная строка»

3) Запускаем блокнот «notepad.exe»

4) В блокноте «Файл > Открыть», переходим в каталог «C:\Windows\winsxs\» (скорее всего буква диска будет D:)

5) выбираем «Тип файлов» — «Все Файлы»

6) Ищем файл «pending.xml»

7) Поиском «CTRL+F» ищем «0000000000000000.cdf-ms»

8) Находим и удаляем

i54.tinypic.com/adzpzp.png

9) Перезагружаем компьютер, он, может, попытаться доустановить обновления, это нормально.

Решение взято отсюда: clck.ru/852f

Хорошего всем дня.

UP: Непроверенное: есть подозрение, что через определенное время (около часа) машина в итоге загружается.