Root Commander

Как известно, у команды sudo есть не то чтобы недостаток, а особенность: она отказывается «видеть» ответственные системные команды, размещенные в каталоге /sbin, например ifconfig. Жаловаться не нужно, это сделано из соображений безопасности. Решить проблему помогает комбинация

sudo su

Если чуть-чуть добавить букаф

sudo su -c mc

то будет совсем красота: Midnight Commander, запущенный от имени root'а без всяких паролей, да еще и с возможностью выполнять системные команды. Ну и, наконец, можно прописать это в ~/.bashrc в качестве алиаса:

alias sumc='sudo su -c mc'

Прикольное получилось слово, — sumc, — запоминается легко.

Копейка рубль бережет, а такие вот нехитрые мелкие приятности в настройках — время и нервы программиста. Не забывайте только сделав всё необходимое от имени root'а своевременно выйти из режима суперпользователя.

Кстати, вышла новая версия Midnight Commander, в которой очень много доработано. Я уже установил, рекомендую.

Http'ед

Заголовок топика составлен из двух слов — http и велосипед. Дело в том, что ни в одной сфере веб-программирования не изобретено столько велосипедов, сколько в аутентификации пользователей при входе на сайт. Что ни «движок» — то своя система. Сам я грешен, написал нечто подобное и прекрасно представляю, сколько факторов нужно учесть при создании простенького, казалось бы, механизма с двумя полями (логин и пароль) и одной кнопкой.

Между тем, стандартный протокол HTTP предоставляет для этой цели готовые средства, поддерживаемые как на уровне любого уважающего себя браузера, так и на уровне любого уважающего себя веб-сервера. Причем на стороне сервера, как правило, предлагается широкий диапазон способов проверки корректности введенных пользователем учетных данных: от простого текстового файла до сервера LDAP.




( Читать дальше )

Lighttpd как средство подружить Java и PHP

В мире существует и активно используется десятка полтора веб-серверов. Среди них lighttpd занимает особое место. Ну, во-первых, он используется по прямому назначению. Этим малюткой не брезгуют такие монстры, как The Pirate Bay, FreeBSD.org и даже, если не ошибаюсь, YouTube. В раздаче статического содержимого веб-страниц он может превзойти даже Apache, не уступая при этом в безопасности и гибкости настроек. Однако основная прелесть lighttpd не в этом, а в возможности интеграции содержимого различных веб-серверов, написанных, возможно, на разных языках и базирующихся на разных платформах. Конечно, для этого используется еще и nginx, но о нем пусть расскажет кто-нибудь другой.




( Читать дальше )

Криптоустойчивый пароль? Одной левой!

Подписавшись на новости ресурса "All commands", о существовании которого на днях сообщил камрад Mihael, не перестаю удивляться могуществу возможностей командной строки. Думаю, на Мтааламу время от времени стоит перепечатывать оттуда некоторые фрагменты, оснащая комментариями для начинающих. Вот, например, очень доступная для понимания, хотя и не самая короткая, команда для генерации криптоустойчивых паролей:

</dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8; echo


Для тех, кто не успел испугаться — пояснения под катом.



( Читать дальше )

Sakura: терминал в стиле бонсай

Сегодня сменил стандартный терминал Xfce на программу Sakura. Преимуществ несколько.




( Читать дальше )

Последний бастион Windows близок к "падению"

… и это «падение» пойдет на пользу как миру Windows, так и миру *NIX. Речь идет о готовности проекта Samba4 к стабильным релизам. Правда, долгожданное слияние случится официально лишь в 2011 году, но полноценно стыковать Linux-компьютеры c AD Windows можно, говорят, уже пользуясь версией 3.6.0. И не только стыковать, но и производить, например, репликацию. Об этом шла речь на мероприятии SambaXP-2010. Работа над обновленной Samb'ой ведется при активном участии Microsoft, так что скорее всего времена неполной совместимости между Windows и *NIX сетями меньше чем через год останутся в прошлом.

Новость чужая, но мимо пройти не мог. Честно пересказал своими словами .

PS: У Samba еще и новый логотип. Может это и не новость, но я на их сайт давно не заглядывал, был приятно удивлен, стало гораздо солиднее.

Устройства для юзверей

Сегодня решил проблему с подключением сканера простой командой:

chown uzwer -R /dev/bus/usb


Где uzwer — имя пользователя.
И это не впервые:


( Читать дальше )

Есть кто живой в локалке? (Пингуем всех подряд)

На редкообновляемом, но полезном сайте Tips4Linux.com опубликован полезный скрипт, позволяющий «пробежаться» по IP-адресам локальной сети и определить какие компьютеры к ней подключены:

for ip in $(seq 1 254); 
do 
    ping -c 1 192.168.1.$ip>/dev/null; [ $? -eq 0 ] && echo “192.168.1.$ip UP” || : ; 
done


Выведет информацию примерно в таком виде:

192.168.1.1 UP
192.168.1.17 UP
192.168.1.24 UP
. . .


Сам не проверял, но, вроде, должно работать

Автомонтирование флэшек: hald vs udevd?

У Slackware, как НЕ десктопориентированной системы есть недостаток: под Xfce не работает автомонтирование съемных носителей. Вроде в правилах (/etc/udevd/rules.d/99-yababay.rules) прописал всё как надо:

ACTION="add",    KERNEL="sdc",     RUN+="/bin/mount -o utf8 /dev/%k /mnt/flash"
ACTION="remove", KERNEL="sdc", RUN+="/bin/umount /mnt/flash"

(То, что монтируется устройство /dev/sdc — гарантирую).

Результат нулевой. Есть подозрение, что автомонтировать флэшки пытается HAL, но у него у самого не получается и UDEV'у не позволяет.

Просьба atp-get'ы и смену Xfce на KDE не предлагать. Решение хотелось бы услышать такое, чтобы работало даже в серверных, а не десктопных условиях.

Ускоряем Firefox

Недавно на Хабре мелькала заметка о том, что Firefox, при всей своей продвинутости, имеет существенное упущение в «скорострельности»: когда его базы данных после длительного использования существенно распухают, начинаются тормоза в поиске по History и т.п. Для преодоления этого следует произвести переиндексацию баз данных:

find ~/.mozilla/ -name '*.sqlite' -print -exec sqlite3 {} "VACUUM; REINDEX;" \;


Происходит примерно следующее:

/home/belka/.mozilla/firefox/qufjpu7f.default/content-prefs.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/webappsstore.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/downloads.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/formhistory.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/search.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/yandex/yasearch-storage.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/yasearch-xb/xbcache.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/urlclassifier3.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/cookies.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/permissions.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/signons.sqlite
/home/belka/.mozilla/firefox/qufjpu7f.default/places.sqlite