Я имею привычку часто обновлять свою систему. Когда система становится стабильнее, а в программах устраняются ошибки и появляются новые возможности - это не может не радовать. Но обновление, к сожалению, может нести как приятные сюрпризы, так и не очень.
После очередного обновления моей системы Debian Lenny (testing) с KDE 3.5 на борту у меня появилась проблема с часами - стандартным аплетом панели KDE. Они перестали отображать текущую дату. К тому же, на них зачем-то стал светиться часовой пояс. Мелочь, а неприятно. Попытка настроить часы не увенчалась успехом. Часовой пояс никуда не исчезал, а дата упорно не хотела появляться.
Решение проблемы оказалось очень простым, но, почему-то, пришло в голову самым последним :-) Для того, чтобы часики заработали как надо, достаточно просто удалить их с панели, а затем снова добавить.
Как ни странно, но даже такая мелочь, как настройка панели и аплетов, оказывается нетривиальной задачей для простых пользователей, осваивающих Linux и KDE. Поэтому специально для непосвященных описываю, как это сделать.
1. Слева от каждого аплета на панели должна отображаться "полосочка" для управления аплетом. Внизу нее расположена маленькая кнопочка в виде стрелки вниз. Если такого нет, попробуйте навести мышку на аплет. Если при наведении мыши кнопка все равно не появляется, нажмите правой кнопкой мыши в свободной части панели и выберите пункт "Разблокировать панели".
2. Нажмите кнопку слева от аплета "Часы" и выбирите пункт "Удалить Часы".
3. Нажмите правой кнопкой мыши в свободной части панели и выберите "Добавит панель на аплет..."
4. В открывшемся списке доступных аплетов выберите "Часы" и нажмите кнопку "Добавить на панель".
5. Нажатием на кнопку слева от вновь добавленного аплета "Часы" можно переместить их в другую часть панели или настроить внешний вид по своему вкусу.
вторник, 5 февраля 2008 г.
пятница, 1 февраля 2008 г.
cron, MAILTO и exim. Получаем результат выполнения команд по электронной почте
cron имеет простую и замечательную возможность направлять вывод выполняемых команд на почту. Вот сижу я, работаю, а cron занимается своими делами: обновляет библиотеки из svn, делает резервные копии баз данных, отсылает уведомление моим друзьям, чтоб они не забыли поздравить меня с Днем рождения... И все это происходит тихо и неслышно. Иногда просто забываешь о том, что у тебя бэкапится база данных, которая уже сто лет как переименована, а потому уже вовсе и не бэкапится. Еще хуже, если во время рассылки уведомления о ДР произошел тотальный и фатальный сбой. И тогда ты сидишь один, с тортом из крема и энного количества свечек, и недоумеваешь: почему же так вышло??? А вышло так потому, что вывод команды, содержащий в себе уведомление об ошибке, в лучшем случае остался только в логах, прочитать которые приходит мысль только после того, как День рождения был безвозвратно испорчен :-)
Итак, настраиваем отправку вывода команд на свой почтовый ящик!
Берем cron. Лучше его, конечно же, брать за crontab. Поэтому мы набираем в консоли:
$ crontab -e
Далее вверху файла добавляем такую строчку:
MAILTO = email@inter.net
Понятно, что адрес мы заменяем на свой собственный. Потому как лично мне ваши отчеты о выполненных кроном задачах почему-то совершенно не интересны. Для того, чтобы убедиться, что все работает, добавляем тестовую ежеминутную задачу для крона:
* * * * * echo 'Вот и наступило долгожданное время: ' ; date
Сохраняем файл, засекаем время (пару минут хватит), выкуриваем сигарету/чупа-чупс/печенюшку, целуем жену/ребенка/начальника и возвращаемся к любимому и ненавистному компьютеру, дабы проверить электронную почту.
Но... Писем нет! Если Вы продолжили читать, то, наверное, таки нет :-) Вероятно, причина в том, что наш sendmail любезно отправил письмо в папку /var/mail. Толку от такого письма не намного больше, чем от лог-файла. Что же делать? Настраивать систему пересылки писем.
В моем Debian Lenny (testing) утилиту sendmail заменяет exim4. Если у вас та же ситуация, то его, родимого, мы и будем настраивать. Но, для начала, давайте все-таки убедимся. Набираем в консоли:
$ stat /usr/sbin/sendmail
Если в первой строчке вывода команды вы видите следующее:
File: `/usr/sbin/sendmail' -> `exim4'
то приступаем к настройке exim.
Загвоздка вся в том, что exim у нас настроен так, что работает только с локальным хостом, и во внешний мир не суется. Нам же нужно отправлять письма на внешний адрес. В конфиги сегодня лезть не будем - упростим себе жизнь. Набираем в консоли:
$ sudo dpkg-reconfigure exim4-config
И поэтапно отвечаем на вопросы.
- На странице "Общий тип почтовой конфигурации" выбираем "интернет-сайт; прием и отправка почты напрямую, используя SMTP".
- Далее вводим "Почтовое имя" - введите имя свое компьютера.
- В поле "IP-адреса, с которых следует ожидать входящие соединения SMTP", вводим свой локальный адрес: 127.0.0.1. Если только вы не собираетесь организовывать публичный почтовый сервер. И ни в коем случае не оставляйте поле пустым. А то мало ли кто к вашему серверу подключится и что Вам пришлет ;-)
- В качестве имени домена назначения опять же введите название своей машины.
- Если у вас модемное подключение к интернету, то согласитесь с сокращением DNS-запросов до минимума.
Остальные поля оставляем незаполненные или выбранные по умолчанию.
Закончили настройку exim. Засекаем время (пару минут хватит), выкуриваем сигарету/чупа-чупс/печенюшку, целуем жену/ребенка/начальника и возвращаемся к любимому и ненавистному компьютеру, дабы проверить электронную почту. Пришла - поздравляю! Не пришла - примите мои соболезнования, а лучше напишите мне и попробуем разобраться вместе ;-) Кроме того, можно найти полезную информацию в статье о настройке различных MTA для отправки через внешний SMTP.
Итак, настраиваем отправку вывода команд на свой почтовый ящик!
Берем cron. Лучше его, конечно же, брать за crontab. Поэтому мы набираем в консоли:
$ crontab -e
Далее вверху файла добавляем такую строчку:
MAILTO = email@inter.net
Понятно, что адрес мы заменяем на свой собственный. Потому как лично мне ваши отчеты о выполненных кроном задачах почему-то совершенно не интересны. Для того, чтобы убедиться, что все работает, добавляем тестовую ежеминутную задачу для крона:
* * * * * echo 'Вот и наступило долгожданное время: ' ; date
Сохраняем файл, засекаем время (пару минут хватит), выкуриваем сигарету/чупа-чупс/печенюшку, целуем жену/ребенка/начальника и возвращаемся к любимому и ненавистному компьютеру, дабы проверить электронную почту.
Но... Писем нет! Если Вы продолжили читать, то, наверное, таки нет :-) Вероятно, причина в том, что наш sendmail любезно отправил письмо в папку /var/mail. Толку от такого письма не намного больше, чем от лог-файла. Что же делать? Настраивать систему пересылки писем.
В моем Debian Lenny (testing) утилиту sendmail заменяет exim4. Если у вас та же ситуация, то его, родимого, мы и будем настраивать. Но, для начала, давайте все-таки убедимся. Набираем в консоли:
$ stat /usr/sbin/sendmail
Если в первой строчке вывода команды вы видите следующее:
File: `/usr/sbin/sendmail' -> `exim4'
то приступаем к настройке exim.
Загвоздка вся в том, что exim у нас настроен так, что работает только с локальным хостом, и во внешний мир не суется. Нам же нужно отправлять письма на внешний адрес. В конфиги сегодня лезть не будем - упростим себе жизнь. Набираем в консоли:
$ sudo dpkg-reconfigure exim4-config
И поэтапно отвечаем на вопросы.
- На странице "Общий тип почтовой конфигурации" выбираем "интернет-сайт; прием и отправка почты напрямую, используя SMTP".
- Далее вводим "Почтовое имя" - введите имя свое компьютера.
- В поле "IP-адреса, с которых следует ожидать входящие соединения SMTP", вводим свой локальный адрес: 127.0.0.1. Если только вы не собираетесь организовывать публичный почтовый сервер. И ни в коем случае не оставляйте поле пустым. А то мало ли кто к вашему серверу подключится и что Вам пришлет ;-)
- В качестве имени домена назначения опять же введите название своей машины.
- Если у вас модемное подключение к интернету, то согласитесь с сокращением DNS-запросов до минимума.
Остальные поля оставляем незаполненные или выбранные по умолчанию.
Закончили настройку exim. Засекаем время (пару минут хватит), выкуриваем сигарету/чупа-чупс/печенюшку, целуем жену/ребенка/начальника и возвращаемся к любимому и ненавистному компьютеру, дабы проверить электронную почту. Пришла - поздравляю! Не пришла - примите мои соболезнования, а лучше напишите мне и попробуем разобраться вместе ;-) Кроме того, можно найти полезную информацию в статье о настройке различных MTA для отправки через внешний SMTP.
Подписаться на:
Сообщения (Atom)