суббота, 24 ноября 2007 г.

Настройка Samba (расшаривание папок и принтеров)

Недавно на работе мне потребовалось быстро настроить доступ к своему компьютеру по протоколу Samba. А именно - расшарить несколько папок и один принтер. Раньше никогда подобными вещами не занимался, поэтому пришлось разбираться, хотя в итоге оказалось, что это совсем не сложно - думал, будет гораздо хуже.

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

понедельник, 19 ноября 2007 г.

Несколько небольших советов

1. Отображение русских имен файлов на Samba ресурсах
Чтобы konqueror и nautilus нормально отображали файлы с русскими именами, когда вы просматриваете расшаренные на Windows машинах папки, нужно в /etc/samba/smb.conf в секцию [global] прописать следующие строки:
dos charset = 866
unix charset = utf8
display charset = LOCALE
Примечание: изменения могут не сразу вступить в силу. К примеру в случае с nautilus'ом мне для этого пришлось убить gnome-vfs-daemon.

2. Поиск строки в большом количестве текстовых файлов
У меня довольно часто бывает ситуация, когда в какой-то папке (или в целом дереве папок) лежит куча текстовых файлов, и нужно найти, где и в каких файлах встречается нужная мне строка. В качестве файлового менеджера я использую rox, который не предоставляет таких возможностей.

Поэтому в ~/.bashrc у меня есть следующая строка:
alias my_search='grep -EHnr --color'
И теперь, если я, к примеру, хочу найти в куче исходных файлов, находящихся в дирректории src, все строки, в которых используется функция lstat, то я выполняю команду
my_search lstat src
которая просмотрит все файлы в дирректории src и во вложенных в нее папках и выдаст примерно следующий вывод:
Как видите, команда выдала мне имя файла, номер строки, в которой встречается искомая подстрока и еще плюс ко всему подсветила найденную подстроку. Также в качестве искомой строки может выступать регулярное выражение. Что еще может быть нужно от подобной команды? :)

3. Раскрашивание вывода gcc
Вам знакома следующая ситуация? Вы компилируете свое приложение, make выдает на экран кучу информации, и вдруг - ошибка. Не всегда ошибка выводится последней, а если говорить о предупреждениях, которые вы хотите устранить, то для того, чтобы их отловить, вам придется прочесывать весь вывод make.

Выход есть! :) И имя ему colorgcc. Это perl скрипт, который пропускает через себя вывод gcc и окрашивает его разными цветами (ошибки одним цветом, предупреждения - другим), которые, естественно, можно настроить под себя.
Для работы данного скрипта необходимо прописать в $PATH дирректорию, которая будет содержать символические ссылки с именами gcc, g++ и т. д., ссылающиеся на /usr/bin/colorgcc. Причем необходимо, чтобы эта дирректория упоминалась в $PATH раньше /usr/bin/, в которой лежат "настоящие" gcc и g++. Если вы это сделаете, то теперь при запуске, g++ у вас фактически будет запускаться colorgcc. По имени программы (gcc, g++ и т. п.) она оперделит, какой компилятор требуется запустить, запустит его и раскрасит его вывод.

суббота, 10 ноября 2007 г.

potwiki

Хочу познакомить вас с одним плагином для Vim, который я совершенно недавно открыл для себя. Называется он potwiki. Суть его работы заключается в следующем: у вас есть своя "домашняя страница" (по умолчанию это ~/Wiki/HomePage), являющаяся обычным текстовым файлом, в котором вы можете писать все что угодно, учитывая одну особенность: если вы напишете какое-нибудь слово так, что оно будет начинаться с заглавной буквы и содержать в себе еще одну заглавную букву, то оно станет восприниматься как ссылка (например, МояСсылка, ЕщеОднаСсылка).

Как только вы напишете такое слово, Vim сразу же его подсветит. И если теперь переместить на него курсор и нажать клавишу Enter, то Vim перейдет к редактированию файла ~/Wiki/МояСсылка. Этот файл в свою очередь может содержать другие ссылки. Т. е. вы получаете в свое распоряжение довольно удобный инструмент для ведения каких-либо записей, связанных между собой.

Я, к примеру, теперь пишу записи для этого блога именно при помощи potwiki. :) Хотя, на этом использование мной данного плагина не ограничивается - недавно решил попробовать вести на работе различные идеи, замечания и TODO списки именно через него - думаю, будет удобно.

пятница, 2 ноября 2007 г.

Mutt HOWTO

"All mail clients suck. This one just sucks less."

После того, как я перешел на Linux, в качестве почтового клиента я долгое время использовал Mozilla Thunderbird. Потом, посмотрев на своего друга, я решил попробовать Mutt. В итоге Thunderbird был удален, и с тех пор почту я читаю только при помощи Mutt.