четверг, мая 27

новинки/правки в Fedora 13

Перешёл с Russian Fedora 12 на Fedora 13.

Что из "плюшек", кроме уже широко озвученных заметил я:

1) Пропал баг с Madwimax для Yota при вытаскивании и повторной вставке модема. раньше приходилось ручками "прибивать" процесс и потом уже вставлять модем
2) После выключения и повторного включения Wi-Fi, NetworkManager нормально цепляется к Wi-Fi сети. раньше с этим у меня была проблема :(
3) наконец-то "из коробки" заработал Compiz на ATI карточке (ноут) и пока, тьфу-тьфу, без багов

и из минусов: как не умел ставить "из коробки" мой МФУ Samsung SCX-4300, так и не умеет. Не помогает даже заявленная фунциональность с "автоматический поиск драйверов для принтеров" (не_верю)


пока всё за 40 минут пользования новой ОС.


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

понедельник, мая 10

JSP и тег Script для JavaScript (решение)

Проблема: При использовании XML форматирования на JSP странице, тег Script "обрезается":

пишем:
< jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page" >
...
< script src="script.js" type="text/javascript" >
< /script >
...
< /jsp:root >

получаем:
...
< script src="script.js" type="text/javascript" />
...
решение: добавить внутрь тега SCRIPT точку с запятой, чтобы тег был валидным и не пустым
< ?xml version="1.0" encoding="UTF-8"? >
< jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page" >
...
< script type="text/javascript" src="script.js" >;< /script >
...


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

Spring Security + Sitemesh (решение)

Проблема: при совместном использовании Spring Security и Sitemesh, в файлах-декораторах не работают теги Security

Решение: в web.xml описание фильтра Sitemesh делать ПОСЛЕ описания фильтра Spring Security

источник помощи: http://black-rocky.blogspot.com/2008/07/spring-security-acegi-and-sitemesh.html


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

вторник, мая 4

авторизация в SSH без пароля (по ключу)

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

В качестве метода авторизации по SSH можно использовать пару RSA ключей (публичный и секретный). Сначала пара ключей создается на компьютере, который будет использоваться для входа по SSH, затем публичная часть ключа копируется на сервера, к которым нужен доступ. Ключ может быть без пароля, но это не очень безопасно, зато удобно. Можно же зашифровать секретный ключ паролем, при соединении к серверам будет запрошен пароль, и вы сможете использовать один пароль для доступа ко всем серверам.
Генерация SSH ключей

В первую очередь, нужно создать пару ключей, если их ещё нет. По умолчанию ключи хранятся в домашней директории пользователя, /home/имя пользователя/.ssh/id_rsa и id_rsa.pub. Итак:

ssh-keygen
Enter file in which to save the key (/home/igosha/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):<Пароль(или ничего), Enter>
Enter same passphrase again: <Тот же пароль, Enter>
Your identification has been saved in /home/igosha/.ssh/id_rsa.
Your public key has been saved in /home/igosha/.ssh/id_rsa.pub.
The key fingerprint is:
92:12:4c:сс:c8:36:ec:f6:60:50:c4:82:2a:01:39:20 igosha@igosha

Пара ключей готова.
Установка SSH ключей на сервера

Теперь, когда у нас есть ключ:
- нужно создать на серверах, к которым мы собираемся подключаться с использованием этого ключа, папку /home/имя пользователя/.ssh. И, конечно, на сервере должен существовать пользователь с тем же именем, что и на локальной машине, где мы делали ключ.
- копируем файл /home/имя пользователя/.ssh/id_rsa.pub на сервер, в файл /home/имя пользователя/.ssh/authorized_keys2:
scp ~/.ssh/id_rsa.pub hostname_of_server:.ssh/authorized_keys2

Важно: если файл authorized_keys2 уже существует, то его нужно просто дописать:
cat ~/.ssh/id_rsa.pub | ssh hostname_of_server "cat >> .ssh/authorized_keys2"

Это позволит использовать несколько ключей для авторизации под одним пользователем, например, если вы хотите авторизоваться с разных машин с разными же ключами.
Проверка авторизации по SSH ключу

Пробуем зайти по SSH на сервер. Если для ключа был задан пароль, он будет запрошен, иначе вы сразу же подключитесь к удаленному серверу.


Источник статьи: http://www.igosha.com/archives/41


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

воскресенье, мая 2

непонятка с logout в SpringFramework

Долго пытался понять, почему у меня не происходит c разлогиниванием - и так конфиги крутил и эдак... и форумы облазил... и куки сбрасывал в браузере и сервер приложений ребутал - а всё равно...
В итоге, простое закрытие браузера (точнее, его "падение") решило "проблему" избавив меня от оной напрочь - заработало ВСЁ, вплоть до редиректор при разлогинивании...

что это было?

версии:
Tomcat: 6.0.20
SpringFramework: 2.5.6
Spring-Security: 2.0.5
Firefox: 3.5.9
OS: Fedora 12


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

суббота, апреля 17

Skype и "плюшка" - редактирование последнего сообщения

Сегодня рассказ пойдёт про "плюшку" в скайпе под названием "редактирование последнего сообщения"

Часто бывает так, что писал-писал что-то, отправил и видишь, что опечатался. И так и "подмывает" исправить ошибку...
обычно для этого пишут новое коротенькое сообщение по образцу "* текст_поправки". А в скайпе можно просто исправить ошибку ;)

Как это делается?


допустим мы написали фразу "ну могет быть" и решили её исправить на "ну может быть"

нажимаем стрелку вверх и видим, что в редакторе сообщения появилось наше последнее сообщения, а фон редактора стал желтым:

правим наше сообщение и отправляем его снова. В результате в логе разговора сообщение исправится и пометиться "карандашиком", что означает "исправленное":


Что нельзя сделать:
1) удалить сообщение (но можно написать точку и тогда в сообщении останется только точка ;) )
2) редактировать предпоследнее и более ранние сообщения

Что делать можно:
1) Редактировать своё последнее сообщение, даже если вам уже ответили :)
2) Прервать редактирование без внесения правок - достаточно нажать ESC в процессе редактирования (в Linux это работает точно. По слухам, в Windows вместо прерывания редактирования происходит закрытие чата)

ЗЫ: все скриншоты доступны в альбоме "Blogspot:003"



Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

четверг, апреля 15

логические ошибки

"Слепо" доверять интеллектуальным подсказчикам IDE - зло!

простой пример появления логической ошибки:


пишем код:
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length; i++) {
     isAuth = isAuth || cookies[i].getName().equalsIgnoreCase(paramCooikeAuth);
     break;
    }
   }
логическая ошибка - наличие break без условия прерывания. IDE (в данном случае, Eclipse) предлагает удалить "i++", как не требующуюся в цикле (всё равно не будет использована). "Слепо" соглашаемся Чуть позже замечаем ошибку про break и добавляем условие:
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length;) {
     isAuth = isAuth || cookies[i].getName().equalsIgnoreCase(paramCooikeAuth);
     if (isAuth) break;
    }
   }
Но следом получаем вечный цикл for, так как отсутствует счетчик, удалённый ранее! Следствие: прежде чем согласиться на то, что предлагает IDE - подумайте, ПОЧЕМУ он это предлагает, ведь может так оказаться, что ошибка-то совсем не в том месте, где её "видит" IDE! UPD: в конечном итоге код всё равно сократился до (см. ниже), но как говориться, "осадок остался" :)
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length; i++) {
     if (isAuth = cookies[i].getName().equalsIgnoreCase(paramCooikeAuth)) break;
    }
   }

Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

понедельник, апреля 12

Cisco VPN Client в windows 7. решение

Попытка с "наскоку" поставить клиента увенчалась ошибкой и нежеланием оного клиента ставиться...
Краткий сёрф в гугле привёл меня к сией статье, часть которой и приведу сюда в переводе:

Для установки Cisco VPN Client требуется произвести следующий ряд манипуляций:
  • Удалить (если у вас таки установился) Cisco VPN Client
  • Перезагрузиться
  • Установить Citrix DNE Update
  • Перезагрузиться
  • Установить Cisco VPN Client
  • Перезагрузиться

Данное решение рабочее, ибо проверено на себе :)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

воскресенье, апреля 11

Gnome. неправильная ассоциация для каталогов. решение

Так получилось, что решил сделать "как в Windows" - отправить каталог с видео через Nautilus в проигрыватель.
Отправить-то отправил, а вот после этого ВСЕ каталоги стали открываться в этом самом медиа-проигрывателе.

решение простое "до ужаса": в файле ~/.local/share/applications/mimeapps.list удалить строку, начинающуюся с inode/directory

описание файла можно найти на сайте "производителя": http://www.freedesktop.org/wiki/Specifications/mime-actions-spec


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

thunderbird 3 "ошибка при получении пароля". решение

При очередном запуске Thunderbird 3 в момент получения почты появляется сообщение "Ошибка при получении пароля"
Удаление в профиле файлов key3.db, signons.sqlite, signons.txt и signons3.txt не приводили к нужному результату - сбросу паролей.
В итоге, решение нашлось на Bugzilla.mozilla.org в виде переустановки Thunderbird.

Последовательность действий, которую делал я:
1) удалил Thunderbird 3
2) удалил вышеназванные файлы
3) установил заново Thunderbird 3

В итоге, после запуска программы, получаем "девственно чистый" менеджер паролей

ЗЫ: трабла была в Linux, но решение озвучивалось под Windows ;)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!