Графический интерфейс в bash скриптах

Сегодня приведу небольшой пример того, как можно сделать графический интерфейс выбора из списка с помощью bash и т.н. zenity (gtk).

Окно выбора представляет собой список из 2х организаций, например (названия замазаны квадратиками)



Если нажать «Отмена» скрипт просто прекратит работу, если нажать «ОК» выбрав филиал, или просто 2 раза щелкнуть на названии филиала — сработает та или иная часть скрипта.

Сам скрипт:

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

Slax: снова в строю

После трех лет молчания Томаш Матейчек допилил-таки до современного состояния свой портативный дистрибутив Slax.

Появление нового дистрибутива воспринимается нынче как явление обыденное, с ними как с полетами в космос: сначала каждому радовались, а потом и со счету сбились. Но Slax — случай особый. За ним кроется не только подбор ПО и подгонка ОС под определенные нужды, но и оригинальная методология создания живых дистрибутивов, т.е. работающих без установки. На ее основе развилось немало вполне зрелых пректов (Salix, Porteus, тот же Superb Mini Server, например). Только вот сам Slax в какой-то момент пропал с радаров… Ан нет, оказывается, не пропал!



Про сам дистрибутив сказать пока не могу ничего, кроме того, что прочитал в новостях, но на нетбук его обязательно установлю, после чего поделюсь впечатлениями. Нисколько не сомневаюсь, что их будет много.

Вышла Samba 4.0

Хорошая новость для всех кто работает в гетерогенных сетях — вышла Samba 4.0.

В пресс-релизе опубликованном Samba Team указывается на следующие новшества:
1. Реализация поддержки Active Directory 2000, а не только домена NT.
2. Добавлена поддержка NTVFS, которая соответствует требованиям контроллера AD.
3. Поддержка двух DNS для корректной интеграции с AD. Простейший DNS -сервер и клиент к bind9.
4. Поддержка интеграции с сервером ntpd и трансляция данных на рабочие станции для синхронизации времени.
5. Новый интерфейс к Python для написания скриптов, расширяющих возможности samba

Xen Server 6.1 - создаем локальное хранилище.

Понадобилось мне обновить Xen Server с версии 6 до версии 6.1. К сожалению, сервер использовал программный raid по вот этому мануалу. Или из-за этого, или по другой причине, установщик Xen Server предлагал только чистую установку, что и было сделано.

После установки обнаружил что локального хранилища нет. Просто нет и все.

Создаем локальное хранилище сами, для этого нам нужен uuid хоста, смотрим его командой:

xe host-list


uuid ( RO): 55f2b31c-194e-4399-b603-3f0000a78ba2
name-label ( RW): virtual2
name-description ( RW): Default install of XenServer


Пытаемся создать локальный storage на разделе /dev/sda3 с типом lvm и именем local:

xe sr-create host-uuid=55f2b31c-194e-4399-b603-3f0000a78ba2 content-type=user name-label="local" shared=false device-config: device=/dev/sda3 type=lvm


На что получаем вот что:

Error code: SR_BACKEND_FAILURE_55
Error parameters:, Logical Volume partition creation error [opterr=error is 5]


Пытаемся создать физический том для lvm вручную:

pvcreate /dev/sda3


И вот что видим:

WARNING: software RAID md superblock detected on /dev/sda3. Wipe it? [y/n] y


Теперь причина ясна — остались старые воспоминания от предыдущей установки, использовавшей raid, соглашаемся на создание физического тома для lvm:

Wiping software RAID md superblock on /dev/sda3.
Physical volume "/dev/sda3" successfully created


Ну и повторяем команду для создания локального хранилища — теперь будет работать.

Инструменты для исследования сетей

Каждый системный администратор в своей каждодневной работе сталкивается с ситуациями при которых необходимо исследование сети.

На эту тему есть 2 цикла статей.

1. Исследование сетей с помощью программы Wireshark (бывшая Ethereal)
  • 1. Использование Wireshark для исследования сетей
  • 2. Использование фильтров в Wireshark
  • 3. Подробнее о фильтрах в Wireshark


2. Инструменты для исследования сетей с интерфейсом командной строки Ping, Telnet, DIG, Traceroute, Whois, Netstat, Mtr

Удаляем информацию о координатах GPS из JPG файлов

Иногда нужно чтобы в JPEG файлах не осталось информации о том, где они ыли сделаны, т.е. не было GPS координат. Просмотреть дополнительную информацию о файле можно с помощь утилиты jhead. В ubuntu уже есть собранный пакет:

apt-get install jhead


Пример информации о фото:

jhead ФАЙЛ.JPG


File name: ФАЙЛ.JPG
File size: 1529011 bytes
File date: 2012:10:26 08:28:58
Camera make: Apple
Camera model: iPod touch
Date/Time: 2012:10:25 21:28:58
Resolution: 2592 x 1936
Flash used: No (auto)
Focal length: 3.3mm (35mm equivalent: 33mm)
Exposure time: 0.0008 s (1/1318 )
Aperture: f/2.4
ISO equiv.: 6400
Whitebalance: Auto
Metering Mode: pattern
Exposure: program (auto)

Убрать лишнее можно командой:

jhead -purejpg ФАЙЛ.JPG

Поиск файлов в Linux при помощи команды locate

Оригинал — Find files on Linux with the command locate

Перевод — Поиск файлов в Linux при помощи команды locate

Статья про одну из команд используемых в командной оболочке Linux: locate.

Эта программа принимает в качестве параметра имя файла (или часть имени) и моментально выводит список путей до этого файла в файловой системе; альтернативой этой программе является find, но разница между ними заключается в том, что find производит поиск по файловой системе и требуется значительный период времени для получения результата, а отличие в работе этих программ состоит в том, что locate использует собственную базу данных для хранения имен файлов в то время, как find исследует директории в поисках заданного параметром командной строки имени файла.

Подробнее по ссылкам.

Mikogo - альтернатива TeamViewer'у

В последнее время тимвивер стал ну очень подозрительным — всюду ему мерещется коммерческое использование и сессия обрывается через 5 минут.

Нашел альтернативу — www.mikogo.com. Вобщем, рекомендую.



И естественно, есть версии для всех платформ.

GBeers: сообщество GNOME предлагает заманивать новичков пивом

GBeers — интересная инициатива сообщества GNOME — знакомить новичнов с данным окружением рабочего стола во время ежемесячных застолий.

Пока что 5 человек в Европе готовы проводить подобные встречи)
https://live.gnome.org/GBeers

pdfgrep - поиск по содержимому pdf файлов

Есть куча книг и нужно проверить их на наличие в них определенной фразы, естественно открывать каждую и смотреть оглавление — это не unix way, так что нам поможет консольная утилита pdfgrep (к слову для OpenSUSE 11.4 я нашел пакет здесь).

Ну что ж, поищем рекурсивно в директории torrents в pdf файлах абривиатуру VFT:

find /torrents/ -iname '*.pdf' -exec pdfgrep VFT {} +


/torrents/ophthalmology-books-1/Comprehensive Ophthalmology.pdf: (VFTF)’.
/torrents/ophthalmology-books-1/Comprehensive Ophthalmology.pdf: Vision for the future (VFTF)
/torrents/ophthalmology-books-1/Comprehensive Ophthalmology.pdf: Vision for the future (VFTF).
/torrents/ophthalmology-books-1/Comprehensive Ophthalmology.pdf: VISION FOR THE FUTURE (VFTF)


Удобно, что видна строка в которой встречается искомое слово.