четверг, 28 декабря 2006 г.

Монтирование образов дисков в Linux.

В одной из предыдущих заметок - Монтирование ISO-образа в Linux, я описал как примонтировать обычный .iso-образ в Linux. Но как быть с образами других форматов - Nero, Alcohole 120%, Clone CD, ...?
Здесь все немного сложнее. Но, как правило, все сводится к двум действиям:

  • 1. конвертирование образа отдельного формата в .iso, используя специализированные для этого утилиты
  • 2. стандартное монтирование iso-образа
Рассмотрим в отдельности некоторые популярные форматы и утилиты конвертирования их в iso.

Nero .nrg. Программа - nrg2iso


Эта программа есть в репозиториях Debian (Ubuntu). Поэтому ставим с помощью apt-get:

$ sudo apt-get install nrg2iso

RPM можно скачать здесь.
Исходники - здесь.

Использование:

$nrg2iso image.nrg image.iso

Теперь монтирование iso.

1. создайте точку монтирования /mnt/iso/iso-file командой:

$sudo mkdir /mnt/iso/iso_file

2. монтирование:

$sudo mount -o loop -t iso9660 iso_file.iso /mnt/iso/iso_file

Теперь можно зайти и просмотреть файлы, находящиеся в iso_file:

$ cd /mnt/iso/iso_file

Эта процедура стандартна для всех iso-образов. Поэтому я не буду приводить ее в следующих примерах.

Альтернатива:
$sudo mount -o loop,offset=307200 myfile.nrg /media/cdimage

.bin/.cue. Программа bchunk.

Конвертирует из .bin/.cue (иногда .raw/.cue) в iso/cdr.

У меня она стояла по умолчанию (Kubuntu 6.04). Если у Вас ее нет, то ставим (Debian (Ubuntu)):

$ sudo apt-get install bchunk

Для пользователей других дистрибутивов - исходники и RPM.

Использование:

$bchunk binfile.bin cuefile.cue myisofile.iso

Монтирование .iso описано выше.

Альтернатива: bin2iso.


Alcohol 120% .mdf. Программа mdf2iso.

Конвертирует стандартные Alcohol 120% .mdf в iso / cue / toc форматы.

В Debian(Ubuntu) ставим:

$ sudo apt-get install mdf2iso

RPM и исходники для различных систем здесь.

Использование:
$mdf2iso myfile.mdf myfile.iso

Монтируем myfile.iso.

Clone CD (.ccd/.img/.sub). Программа ccd2iso.

Эта программа относится к extremely unstable. Поэтому в репозиториях Ubuntu ее нет. Скачать deb-пакет можно здесь или качаем исходники.

Установка:

sudo dpkg -i ccd2iso_0.2-0.1_i386.deb

Использование:

$ccd2iso myfile.img myfile.iso

Монтируем myfile.iso.

Альтернатива: Isodump(img2iso).


Blindwrite .b5i.Программа b5i2iso
Скачать RPM и исходники можно здесь.

DiscJuggler .cdi. Программа cdi2iso
RPM и исходники.

InstantCOPY .pdi. Программа pdi2iso.
RPM и исходники.

Xbox .xbx. Программа extract-xiso
Исходники и программа для Windows и Mac здесь.

(z-lib) dmg. Программа dmg2iso.

В качесте альтернативы к приведенным выше программам можно попробовать kiso (программа входит в Debian(Kubuntu) репозитории) или использовать Windows программы из под Wine (Cedega).

Читать дальше...

среда, 27 декабря 2006 г.

Система управления пакетами APT.

Debian отличается от других дистрибутивов Linux очень удобной работой с пакетами. Для этих целей в Debian существуют два удобных менеджера пакетов: apt и dpkg. В данной статье я опишу лишь работу с менеджером пакетов APT.
APT - это Advanced Packaging Tool, система управления пакетами, то есть набор программ для установки, удаления, поиска бинарных пакетов определенных форматов. В набор входят следующие утилиты:

  • apt-get - утилита для установки и удаления пакетов;
  • apt-cache - утилита для работы с кэшами пакетов (например, поиса пакетов по ключевым словам);
  • apt-cdrom - утилита управления CDROM ;
  • apt-file утилита поиска по содержимому пакетов
  • apt-config - инструмент для чтения конфигурационного файла APT;
  • apt-setup - утилита для легкого доступа и управления sources.list;
  • apt-move - утилита для создания локального зеркала пакетов
  • apt-key - управление ключами пакетов;
  • apt-sortpkgs - утилита сортировки index-файлов (файлов, которые содержат информацию о всех доступных пакетах сайта);
  • apt-ftparchive - утилита для создания index-файлов (создается на сайте);
  • apt-extracttemplates - утилита для извлечения DebConf конфигов и шаблонов из пакетов Debian;
  • и другие.



Рассмотрим подробней работу некоторых из приведенных утилит.

apt-get и apt-cache



Утилита apt-get используется для установки и удаления пакетов. Всю информацию она берет с файла /etc/apt/sources.list. Структура этого файла следующая:

#это комментарий
deb http://host/debian distribution раздел1 раздел2 раздел3
deb-src http://host/debian distribution раздел1 раздел2 раздел3

Живой пример с моего компьютера:

# Line commented out by installer because it failed to verify:
deb http://kr.archive.ubuntu.com/ubuntu/ dapper main restricted
# Line commented out by installer because it failed to verify:
deb-src http://kr.archive.ubuntu.com/ubuntu/ dapper main restricted
...................................................

Каждая строка начинается либо с deb либо с deb-src. Эти строки указывают на адреса, где хранятся пакеты. Причем deb указывает на то, что по данному адресу находятся бинарные .deb пакеты, т.е. уже скомпилированные на компьютере разработчика, а deb-src - на то что здесь хранятся архивы исходных текстов плюс управляющие файлы. Обычно после установки многие источники закомментированы. Поэтому многие пакеты недоступны. Для решения этой проблемы надо зайти в файл /etc/apt/sources.list и удалить знак # перед нужным источником.
Также на сайте http://www.apt-get.org/ можно найти список доступных источников.
После изменений в указанном выше файле нужно запустить утилиту:

apt-get update

которая обновит список репозиториев и запишет его в базу данных доступных пакетов. Теперь информация о доступных пакетах указанных репозиториев хранится у Вас на компьютере. Даже без доступа к Интернету можно посмотреть доступные пакеты. Это делается командой:

apt-cache search имя_пакета(часть имени, свойство, присущее данному пакету...)

Если пакет доступен, устанавливаем его:

# apt-get install имя_пакета

Здесь начинается вся прелесть утилиты apt-get. Программа проверит все зависимости пакета, скачает и установит их и уже после этого установит сам пакет. Это называется автоматическим разрешением зависимостей.
Если нужно удалить пакет:

# apt-get remove имя_пакета.

Если нужно обновить всю систему, то запускаем утилиту
apt-get update - она обновляет информацию о новых версиях пакетов
и после этого
apt-get upgrade - устанавливает доступные обновления для всех пакетов системы

И в дополнения к теме обновлений:
apt-get dist-upgrade - используйте для обновления всего дистрибутива до более новой версии.

Apt-get закачивает все архивы пакетов в папку /var/cache/apt/archives/. Для удаления всех архивов с этой папки, используйте утилиту:

apt-get clean - удалит все архивы с указанной выше папки, или
apt-get autoclean - удалит только те файлы пакетов, которые больше не могут быть получены и использованы.

Утилита apt-cache уже упоминалась выше. Рассмотрим другие ее полезные возможности:

apt-cache show имя_пакета - просмотр детальной информации о пакете.
apt-cache showpkg имя_пакета - выводит более общую информацию о пакете.
apt-cache depends имя_пакета - просмотреть лишь зависимости пакета.
apt-cache rdepends имя_пакета - показать все пакеты, которые нуждаются в указанном.

apt-cdrom

Для добавления CD-ROM(DVD) в список доступных репозиториев ( в файл /etc/apt/sources.list) есть утилита:

apt-cdrom add

Если дисков несколько, то вставляем все по очереди.

apt-file

Использование.
Сначала надо обновить информацию о файлах:
apt-file update
После этого можно пользоваться некоторыми полезными функциями данной программы. Для примера найдем какому пакету принадлежит файл libkipi.so.0.

apt-file search libkipi.so.0

libkipi0: usr/lib/libkipi.so.0
libkipi0: usr/lib/libkipi.so.0.1.0

Просмотрим все содержимое этого пакета:

apt-file list libkipi0

libkipi0: usr/lib/libkipi.so.0
libkipi0: usr/lib/libkipi.so.0.1.0
libkipi0: usr/share/apps/kipi/data/banner_left.png
libkipi0: usr/share/doc/libkipi0/AUTHORS
libkipi0: usr/share/doc/libkipi0/README
........................

В отличие от apt-cache, apt-file может искать файлы в пакетах и выводить полный список файлов данного пакета, даже если он не установлен.

apt-setup

apt-setup - это утилита для удобного добавления дополнительных репозиторев в файл /etc/apt/sources.list.
Запускаем apt-setup , после чего должно появиться меню с вопросами о конфигурации файла /etc/apt/sources.list. Вопросы вида: выбрать с чего ставить (CD-ROM, http, ftp...), выбрать страну, выбрать с какого зеркала ставить, указать прокси (если надо). Если у Вас нет данной утилиты, то надо поставить пакет base-config. Альтернатива: править все вручную.

apt-config

Все настройки APT прописаны в конфигурационном файле /etc/apt/apt.conf. Утилита apt-config может отобразить этот файл на экран, используя

apt-config dump

APT "";
APT::Architecture "amd64";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Periodic "";
..................

Более полезным будет использование этой утилиты в скриптах.

apt-move

С помощью этой утилиты можно создать локальное зеркало пакетов. Для этого достаточно указать путь к архивам файлов и место, где должно находиться зеркало.

apt-move update - переносит из /var/cache/apt/archives пакеты в директорию локального зеркала (указывается в /etc/apt-move.conf как переменная LOCALDIR=path_to).
По сути apt-move update является выполнением последовательности команд:

apt-move get - формирует мастер-файл;
apt-move move - переносит пакеты из кэша apt в локальное зеркало;
apt-move delete - удаляет устаревшие пакеты;
apt-move packages - создает Packages.gz и Sources.gz дерева локального зеркала.

apt-key

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

sudo apt-key list

pub 1024D/437D05B5 2004-09-12
uid Ubuntu Archive Automatic Signing Key
.............

Если Вы добавили некоторый неофициальный репозиторий в файл /etc/apt/sources.list, то могут возникнуть проблемы с ключами. Чтобы их решить, нужно добавить ключи этого пакета в файл списка связок ключей (/etc/apt/trusted.gpg), используя команду

apt-key add файл_содержащий_ключ

Более подробно о службе безопасности утилиты APT можно почитать здесь.


Помощь.

APT - предоставляет хорошую документацию - пакеты apt-doc и apt-howto-ru. Устанавливаем их. Для того, чтобы прочитать apt-doc, набираем в браузере следующее usr/share/doc/apt-doc/guide.html/index.html. Хороший справичник HOWTO на русском языке смотрим здесь - /usr/share/doc/Debian/apt-howto/apt-howto.ru.html.

Литература:

1. ATP-HOWTO
2.http://linuxhelp.blogspot.com/2005/12/concise-apt-get-dpkg-primer-for-new.html
3.
http://wiki.debian.org/SecureApt
4.http://citkit.ru/articles/130/

(продолжение - менеджер пакетов DPKG)

Читать дальше...

понедельник, 25 декабря 2006 г.

Anatomy Of A Debian Package

Очень хорошее видео о пакетах Debian (Ubuntu).



Jonathan Oxer - нынешний президент Linux Australia и один из авторов O'Reilly's Ubuntu Hacks - рассказывает о внутренней структуре пакетов Debian/Ubuntu, о том, как такие пакеты создавать, используя бинарные файлы и некоторые скрипты для автоматизации процесса...

Язык: английский;
Длительность: 56 min 16 sec.
Ссылка: http://video.google.ca/videoplay?docid=-6726522426109060914

Читать дальше...

EasyTag. Работа с тегами.

Сегодня я хочу познакомить Вас с программой для работы с mp3 тегами - EasyTag.
EasyTag - это программа просмотра и редактирования тегов музыкальных файлов форматов MP3, MP2, MP4/AAC, FLAC, Ogg Vorbis, MusePack и Monkey's Audio.
На данный момент существует две версии программы - для GTK библиотек 1.2 и 2.4.

Некоторые функции этой программы:

  • Просмотр,редактирование,запись тегов в файлы форматов MP3, MP2 (ID3 тег и изображения), FLAC (FLAC Vorbis тег), Ogg Vorbis (Ogg Vorbis тег), MP4/AAC (MP4/AAC тег), и MusePack, Monkey's Audio (APE тег);
  • Возможность редактирования большого количества полей: Название, Исполнитель, Альбом, Год выпуска, Номер трека, Жанр, Комментарии, Композитор, Первый исполнитель, Авторское право, Ссылка (URL), Кодировщик, Прикрепленное изображение;
  • Автозаполнение тегов исходя из названий файлов;
  • Переименования папок и файлов исходя из содержимого тегов (использую шаблоны) или используя текстовый файл;
  • Возможность рекурсивного заполнения тегов, удаления, переименования, сохранения...;
  • Возможность просмотра поддиректорий;
  • Считывание и отображение заголовков файлов ( битрейт,время...);
  • Автозаполнение вводимой даты;
  • История изменений (Undo и redo);
  • Возможность обработки полей тегов (конвертирование в строчные, заглавные буквы...);
  • Возможность открывать файлы или папки в сторонней программе;
  • Поддержка CDDB ( Freedb.org и Gnudb.org) серверов (ручной и автоматический поиск);
  • Деревообразный браузер просмотра или просмотр по исполнителю и альбому;
  • Окно создания плейлистов;
  • Поиск файлов;
  • Простой интерфейс;
  • Поддержка многих языков, в числе которых и русский;
  • GUI интерфейс (GTK 1.2 и 2.4);
  • Программа доступна для GNU/Linux и Windows.

Применение:


Так уж сложилось, что все русскоязычные музыкальные файлы хранят свои теги в кодировке CP1251. Наследство Windows. Но это создает и создавало много проблем для пользователей Linux. В Linux, для отображение русских символов долгое время использовалась кодировка KOI8-R. В последнее время ей на смену пришла универсальная кодировка UTF-8. Это может немного запутать пользователя, особенно новичка, который только перебрался на Linux. Все его файлы хранятся в кодировке CP1251.

Я не буду здесь описывать настройку локалей, перекодировку файлов и тому подобное. Я хочу каснуться лишь коллекции mp3 файлов пользователя. Используя некоторое время Linux и Windows одновременно, я научился все названия файлов записывать лишь транслитом. Но что делать если Вы взяли у друга альбом любимого исполнителя, а там все названия файлов в кодировке CP-1251? В таком случае мы можем открыть этот альбом в любимом проигрователе, который читает теги в кодировке CP-1251 (XMMS и Beep Media Player). Но мне нравится медиаплеер Amarok. До версии 1.4 все было замечательно. Можно было выбрать вариант CP-1251 и наслаждаться жизнью, но в версиях от 1.4 и выше - эту возможность убрали. Переходить на другой плеер я не захотел.

Таким образом, почти не имея другого выхода, я решил раз и навсегда перейти на UTF8. Не только по отношению к тегам, но также и для основной локали системы.

Пример:

Для перекодировки тегов с CP-1251 в UTF-8 открываем E
asyTag и идем в Установки -> Настройки -> ID3 Tag Settings и отмечаем поля, как приведенно на рисунке ниже:



Теперь выбираем альбом, который мы хотим перекодировать. В моем случае это выглядит так:



Как видно, названия файлов отображаются краказябрами, но с тегами все нормально. Выделям все песни и жмем - Сохранить. Все теги теперь сохранены в кодировке UTF-8. Но это еще не все. Следующим шагом будет перекодировка названия файлов. Для этого выделяем все файлы, идем в пункт меню Сканер -> Rename file(s) and direcotory и выбираем что мы хотим записать в названия файлов (исполнитель, название, альбом...):





После этого жмем зеленую иконку справа (рисунок выше), закрываем данное окно и сохраняем.
Должно получиться следующее:



На этом работа закончена. Одним выстрелом я убил двух зайцев - перекодировал теги и названия файлов в универсальную кодировку UTF-8.

Читать дальше...

среда, 20 декабря 2006 г.

Looking Glass 1.0

Сегодня я хочу поделиться своими впечатлениями от 3D пользовательского интерфейса Looking Glass 1.0, полностью написанного на Java.
Для установки на Debian (Ubuntu) можно воспользоваться как dpkg-пакетами, так и утилитой APT.

В случае APT нужно:
1. добавить следующую запись в файл /etc/apt/source.list:


## LG3D repsoitories
deb http://javadesktop.org/lg3d/debian stable contrib
# deb http://javadesktop.org/lg3d/debian testing contrib
# deb http://javadesktop.org/lg3d/debian unstable contrib

2.Обновить информацию о доступных репозиториях:

$sudo apt-get update

3.Установить:



$sudo apt-get install lg3d-core

Эта команда скачает и установит три требуемых пакета в директорию /usr/share/lg3d.
Для запуска пользовательского интерфейса зайдите в указанную директорию и запустите команду:

$bin/lg3d-app

Этой командой Looking Glass 1.0 запустится в окне Gnome (KDE). Для того чтобы запустить его не поверх уже работающей оконной среды, нужно воспользоватся параметром -f:

$bin/lg3d-app -f

Для инструкций по установке на другие системы, обратитесь на сайт разработчика.

Все запустилось и заработало даже на моем 64-битном Kubuntu. Выглядит действительно трехмерным, везде включена прозрачность, все можно настраивать. Как говорится, лучше один раз увидеть, чем сто раз услышать.
Поэтому привожу скриншоты:
















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

Читать дальше...

вторник, 19 декабря 2006 г.

Linux. Команды при работe с сетью.


ftpПротокол для передачи файлов между комьютерами (не защищен). Набираем в консоли команду ftp. После входа (ftp>) можно ввести help и просмотреть набор доступных команд. Например, для входа на ftp-сервер набираем open <адресс компьютера на который идем>. После этого вводим имя пользователя и пароль. Командой exit - выходим.
hostУтилита для выполнения запросов к DNS-серверам. По умолчанию она просто находит IP-адрес, соответствующий заданному имени хоста. Например, host www.google.com выдаст:


www.google.com is an alias for www.l.google.com.
www.l.google.com has address 66.102.7.99
www.l.google.com has address 66.102.7.104
www.l.google.com has address 66.102.7.147
www.google.com is an alias for www.l.google.com.
www.google.com is an alias for www.l.google.com.


Таким образом можно занести запись в базу данных DNS-сервера. Для более подробной информации - man host или host --help. Хорошо расписано здесь.
ifconfig Утилита, которая входит в пакет net-utils.Просто набрав ifconfig, вы получите информацию о вашем TCP/IP соединении и о сетевом оборудовании.Пример:


eth0 Link encap:Ethernet HWaddr 00:19:38:9C:BE:EA
inet addr:10.52.47.51 Bcast:10.52.47.255 Mask:255.255.255.0
inet6 addr: fe80::257:41ff:fe6c:beea/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10495788 errors:0 dropped:0 overruns:0 frame:0
TX packets:6790246 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:11756457591 (10.9 GiB) TX bytes:2467150238 (2.2 GiB)
Interrupt:177


Но чаще эту команду используют для конфигурирования сетевых интерфейсов, включая IP-адрес, netmask, включение (up) и отключение (down) сетевых интерфейсов. Для настройки указанной выше конфигурации надо воспользоваться следующей командой:

ifconfig eth0 10.52.47.51 broadcast 10.52.47.255 netmask 255.255.255.0

Утилитой ifconfig можно удобно настроить подсоединение к Internet, не пользуясь никакими GUI приложениями и не правя никакие файлы.
ipУтилита ip объединяет в себе возможности команд ifconfig и route. Синтаксис этой команды следующий:
ip [Опции] Объект [ Команда [Аргументы команды] ]
netstat Еще одна TCP/IP команда. Показывает статус сети. Печатает информацио об активных сокетах, таблицах маршрутизации, сетевых интерфейсах, маскарадинге. Синтаксис следующий:

netstat [options] [delay]

Набрав netstat в консоли, можно узнать об открытых портах системы. netstat -i - покажет все сетевые интерфейсы системы, a netstat -r - покажет таблицы машрутизации. Для подробной информации об опциях, обратитесь к man netstat.
pingЭту утилиту обычно использует для проверки доступности некого хоста через IP. Ее работа заключается в следующем. Ping посылает ICMP запрос "echo request" пакеты (Ping) прослушываемому хосту и ждет от него ICMP ответа "echo response" (иногда называют Pong, по аналогии с известной игрой.) Стоит заметить, что большинство серверов защищены файрволами от прослушки посредством ping. Пример нормальной работы ping (я пингую компьютер, находящийся в моей сети):



$ ping 10.52.31.52
PING 10.52.31.52 (10.52.31.52) 56(84) bytes of data.
64 bytes from 10.52.31.52: icmp_seq=1 ttl=128 time=3.37 ms
64 bytes from 10.52.31.52: icmp_seq=2 ttl=128 time=0.510 ms
64 bytes from 10.52.31.52: icmp_seq=3 ttl=128 time=0.464 ms


Пример с защитой. www.google.com:


$ ping www.blogger.com
PING www.blogger.com (66.102.15.100) 56(84) bytes of data.
From ***.**.**.* icmp_seq=4 Packet filtered
From ***.**.**.* icmp_seq=79 Packet filtered
From ***.**.**.* icmp_seq=80 Packet filtered


Причем защита может быть как с моей стороны, так и со стороны прослушиваемого сервера.
routeПакет, являющийся частью передаваемых данных, на пути в пункт своего назначения проходит по определенному маршруту.Ваша система знает, какому компьютеру пакет должен быть послан вначале. Этот компьютер принимает пакет и передает его другому компьютеру, который определяет, куда следует передать пакет дальше. Маршруты содержатся в таблице маршрутизации, которая хранится в файле /proc/net/route. Команда route без аргументов как раз показывает таблицу маршрутизации. С помощью этой команды можно также манипулировать этой таблицей. Обычно эту команду используют для установки статической таблицы маршрутизации сети или хоста после того как они были сконфигурированы командой ifconfig.
scpSecure Copy Protocol.Утилиту scp (secure copy) используют для защищенного копирования файлов на удаленный компьютер или с него. Синтаксис команды аналогичен синтаксису команды cp:


scp откуда куда


единственное отличие в том, что для источника удаленного копирования указывается не только имя файла (файлов), но и имя пользователя и машины. Например, пользователь serhiy при помощи команды scp serhiy@ubuntu:~/books/*.pdf . скопирует с машины ubuntu из своей поддиректории books все файлы с расширением pdf в текущую директорию (обозначаемую точкой) на локальной машине. Для рекурсивного копирования (с поддиректориями) используется ключ -r.
sftpТо же самое что и FTP, только защищенный (secure file transfer protocol). Все операции выполняются через зашифрованный SSH-протокол. Этот протокол может использовать многие особенности протокола SSH, например, приватные ключи (private-key).
sshSecure SHell. Протокол для безопасного доступа к удаленному компьютеру. Обычно используется для запуска некоторых программ на удаленном копьютере. Также поддерживается X11 соединение. Т.е. можно запускать программы требующие GUI интерфейс. Очень удобно использовать при системном администрировании. Для передачи файлов могут использоваться протоколы scp или sftp.
telnetОчень похож на SSH. В последнее время почти вытеснет последний поскольку telnet не безопасен.
whoisСетевой протокол прикладного уровня, базирующийся на протоколе TCP (порт 43). Основное применение — получение регистрационных данных о владельцах доменных имен, IP-адресов и автономных систем. Протокол используется для доступа к публичным серверам баз данных (БД) регистраторов IP-адресов и регистраторов доменных имён. Синтаксис:

whois [OPTION]... OBJECT...

Пример:


$ whois linux.org.ru
% By submitting a query to RIPN's Whois Service
% you agree to abide by the following terms of use:
% http://www.ripn.net/about/servpol.html#3.2 (in Russian)
% http://www.ripn.net/about/en/servpol.html#3.2 (in English).

domain: LINUX.ORG.RU
type: CORPORATE
descr: Information about OS Linux for
descr: russian-speaking linux community
admin-o: MSV3-RIPN
nserver: ns.bat.ru.
nserver: ns1.linuxhacker.ru.
created: 1998.10.21
state: Delegated
changed: 2006.12.16
mnt-by: MAXCOM-MNT-RIPN
source: RIPN

person: MAX S VALYANSKI
nic-hdl: MSV3-RIPN
address: 10,7, Pionerskaya str.,
address: 142092, Troitsk, Moscow reg., Russia
phone: +7 0967 515137
phone: +7 27 515137
e-mail: maxcom@jet.msk.su
changed: 2002.01.12
mnt-by: MAXCOM-MNT-RIPN
source: RIPN

Last updated on 2006.12.20 13:00:39 MSK/MSD



Литература:

1. http://www.opennet.ru/base/net/iproute2.txt.html
2.http://msk.nestor.minsk.by/kg/2003/05/kg30503.html
3. http://www.uniar.ukrnet.net/tcpip/iprouting_2.html
4. http://www.cs.unh.edu/cnrg/gherrin/linux-net.html#tth_sEc3.2
5. http://www.computerhope.com
6.http://www.die.net/doc/linux/man/man8/route.8.html
7.http://center.fio.ru/method/Resources/judina/10-04/uchebnik/2_os/2_net/7_net_utils/index.html

Читать дальше...

Не делаем ошибок при наборе команд в Bash

При наборе команд в Bash часто возникают ошибки? Тогда вам сюда. Будем учиться набирать правильно :).

Первый вариант: вариант заядлого линуксоида, который знает что такое файл .bashrc, знает как им пользоватся, как его редактировать...

Итак. При наборе команд вместо grep он набирает grpe, ls - sl и т.д и т.п. Что он делает? Он открывает файл .bashrc, который лежит в домашней директории, и добавляет в него следующие строчки:




#------------------------------------------------------------------------------
# Typos.
#------------------------------------------------------------------------------
ali
alias scsl=clear
alias qcls=clear
alias clls=clear
alias csl=clear
alias cll=clear
alias slc=clear
alias lcs=clear
alias lsc=clear
alias sls=clear
alias scl=clear
alias cs=clear
alias c=clear
alias cl=clear
alias ssl=clear
alias csll=clear
alias clsl=clear
alias chmdo=chmod
alias sl=ls
alias sll=ls
alias lsl=ls
alias s=ls
alias psa='ps a'
alias tarx='tar x'
alias maek=make
alias act=cat
alias cart=cat
alias grpe=grep
alias gpre=grep
alias whcih=which
alias icfonfig=ifconfig
alias ifocnfig=ifconfig
alias iv=vi
alias lvi=vi
alias vf=cd
alias vp=cp
alias nmv=mv
alias mann=man
alias nman=man
alias nmann=man
alias mb=mv
alias csv=cvs
alias nmplayer=mplayer


Все. Работа сделана. Так можно написать пару сотен строк :).

Второй вариант: Для тех, кто не хочет ничего править.



Ставим программу sl (в dedian-производных):

sudo apt-get install sl

В следующий раз, когда вместо ls, наберете sl вы увидите нечто новенькое :).




Мне понравилось. Я специально набирал неправильно.

Я выбрал второй вариант.
Всем советую попробовать. На этом все. Набирайте правильно.

Читать дальше...

Wget + Cron. Пример использования

Wget - это свободная неинтерактивная программа для загрузки файлов с Интернет. Поддерживает протоколы HTTP,HTTPS и FTP. Поскольку она неинтерактивная, то многие ее используют в фоновом режиме.

Cron - планировщик, демон в unix-подобных системах, используется для периодического выполнения разных задач.



Пример:

Есть сайт с большим количеством видео-файлов для скачивания. Но есть и условия скачивания:
1. Качать можно только по одному файлу за раз.
2. Для иностранных пользователей (вне РФ), время скачивания с 4 до 10 часов утра (московское время).

Первую проблему можно решить, используя Tor + Firefox.
Для решения второй, можно воспользоватся русским прокси. По ряду причин я этим пользоваться не хочу. Поэтому я хочу автоматизировать скачивание файлов wget-ом посредством cron.

Создаю у себя в домашней директории файл urls (название можно любое):

$ vi urls

и заношу в него urls файлов, которые я хочу качать (в моем случае, видео файлы)

http://***.net/film/lalala.cd1.avi
http://***.net/film/lalala.cd2.avi
http://***.net/film/lalala.cd3.avi
http://***.net/film/lalala.cd4.avi

(каждый новый url с новой строки).

Теперь создаю файл serhiy (название любое) и записываю в него действия для cron:

$vi serhiy

записываю

5 10 * * * /usr/bin/wget -c --directory-prefix=/home/serhiy --input-file=/home/serhiy/urls

Что значит начинать программу wget в 10 часов 5 минут, каждый день. Опция -с задает продолжение закачки недокачанного файла, --directory-prefix=/home/serhiy - место, куда записываем, --input-file=/home/serhiy/urls - файл с которого брать url's.

Создаем crontab файл.

$crontab serhiy

Все. Можно: проверить - командой crontab -l; редактировать - crontab -e; удалить crontab -r.

Очень полезно. Дал задание, через недельку в папке лежат все серии нужного фильма.

Читать дальше...

понедельник, 18 декабря 2006 г.

Установка VMware Server в Ubuntu 6.06 LTS (Dapper Drake)

Начитался я о разных виртуальных машинах (Установка QEMU в Дебиан, Виртуальные машины: VMWare Player), и захотелось мне самому попробовать. Из списка доступных выбрал VMWare Server. Почему? Вычитал что неплохой вариант, что работает быстрее чем Qemu, кто-то посоветовал, еще и бесплатный...

Гуглить пришлось недолго. Сразу нашел очень хорошую статью How To Install VMware Server On Ubuntu 6.06 LTS (Dapper Drake) . То что надо. Я как раз эту систему и использую.



Я здесь не буду повторять указанную статью. Там все хорошо расписано. Но поскольку у меня местами возникли трудности, то некоторые моменты хочу упомянуть.
В первом пункте все совпадает, только IP у меня другой.
Во втором устанавливаются все нужные библиотеки и программы. Поскольку у меня 64-битный процессор, то вместо libc6-dev-amd64 и lib64gcc1 ставлю libc6-dev-i386 и libgcc1.
Третий пункт. Загружаю VMware Server for linux (Binary tar.gz) и Management Interface (Binary tar.gz). Все. Меню регистрации не так то и просто найти. После поиска, решил регистрироваться в Account -> Sign In or Register. Зарегистрировался. Ничего о загружаемых программах не спрашивает. Никакого ключа не дает. Жду, что придет на мыло. Безрезультатно. Долгие поиски в Google вывели на страницу регистрации. Среди продуктов выбрал VMWare GSX Server и сразу получил serial number. На мыло мне так ничего и не пришло. После этого все должно пойти гладко.
В конце говорится о VMware console. Просто грузим с окна браузера. Распаковываем и устанавливаем с консоли. Запускаем командой vmware-server-console.
Все. Теперь можно создавать виртуальные машины или использовать уже созданные.


Читать дальше...

Linux - ABC's

Тяжелый день - понедельник. Ничего делать не хочется. Вот нашел прикольную Linux оду- АБВГДейку. Правда на английском. Может кто-нибудь и поймает ритм....



A is for awk, which runs like a snail, and
B is for biff, which reads all your mail.
C is for cc, as hackers recall, while
D is for dd, the command that does all.
E is for emacs, which rebinds your keys, and
F is for fsck, which rebuilds your trees.
G is for grep, a clever detective, while
H is for halt, which may seem defective.
I is for indent, which rarely amuses, and
J is for join, which nobody uses.
K is for kill, which makes you the boss, while
L is for lex, which is missing from DOS.
M is for more, from which less was begot, and
N is for nice, which it really is not.
O is for od, which prints out things nice, while
P is for passwd, which reads in strings twice.
Q is for quota, a Berkeley-type fable, and
R is for ranlib, for sorting ar table.
S is for spell, which attempts to belittle, while
T is for true, which does very little.
U is for uniq, which is used after sort, and
V is for vi, which is hard to abort.
W is for whoami, which tells you your name, while
X is, well, X, of dubious fame.
Y is for yes, which makes an impression, and
Z is for zcat, which handles compression.

Сперто отсюда.


Читать дальше...

воскресенье, 17 декабря 2006 г.

Firefox + Torbutton

Пару недель назад я поместил на блоге статью об анонимизировании пребывания в Интернет - HOWTO: Анонимизируем свою работу в Internet с помощью Tor. Но толи статья оказалась слишком длинной, толи это никому не интересно... За две недели я не увидел ни одного комментария.
Для тех, кому это интересно, но указанная статья кажется слишком длинной, привожу здесь маленький пример использования

Tor + Privoxy + Firefox + Torbutton в Kubuntu (Ubuntu) Linux.

Зачем?


1. Иногда я не хочу чтобы видели мой IP, а следовательно - мое местонахождение.
2. Я нахожусь за пределами России. На некоторых сайтах разрешают качать только одновременно с одного IP. Иногда хочется сразу и много.

Почему указанный выше вариант с Torbutton?

Можно и без Torbutton, но обычные странички в Tor-режиме грузятся намного дольше, чем в обычном, меня это не устраивает. А так, одним кликом мыши, я могу переключаться с анонимного в неанонимный режим.

Внимание: все же, не делайте ничего очень плохого в Интернет, положившись только на приведенный рецепт. Никаких гарантий не дает даже производитель указанных программ.

Установка:

$sudo apt-get insall tor privoxy

Устанавливаем расширение Torbutton .

Добавляем следующую запись в конфигурационный файл privoxy:

$sudo vi /etc/privoxy/config


forward-socks4a / localhost:9050 .

(не забудьте точку в конце)

Перегружаем Tor и Privoxy:

$ sudo /etc/init.d/tor restart
$ sudo /etc/init.d/privoxy restart

Внизу окна Firefox (status-bar) вы должны увидеть надписть Tor Enabled (Disabled) - включен (выключен) соответственно. Кликаем на него правой кнопкой мыши, выбираем Preferences и настраиваем, как на рисунке ниже:























На этом все настройки закончены. Можете проверить. Зайдите на сайт http://www.whatismyip.com. Попробуйте зайти в анонимном и неанонимном режимах. Вы должны увидеть разные IP.

Читать дальше...

Gimp. Создаем Violator

В предыдущем посте - Gimp. Делаем кнопки в стиле Web 2.0 я описал как создать кнопку в стиле Web 2.0, используя Gimp. Сегодня я продолжу эту тему и покажу как легко можно создать violator. Я не нашел перевод этого термина на русский. Это такая яркая звездочка с надписью Beta или New, которую цепляют на Web 2.0 сайтах.


Оригинальная статья здесь.
Создаем изображение размером 200px * 200px и с белым фоном:























Создаем саму звездочку (violator):

Для этого, идем в Filters->Render->Gfig и в открытом окне выбираем звездочку

.

Теперь увеличиваем количество сторон звездочки до 12. В пункте меню "Browse", выбираем самую маленькую (1px) кисть. Стараемся кликнуть в центр изображения и проводим в любую сторону на расстояние будущей звездочки. Если не получилось, жмем CTRL + Z и пробуем еще раз. Вы должны получить что-то наподобие этого:





















В том же окне выбираем "Move Single Point" меню

, берем за край звезды и создаем следующее:

















Все, на этом работа с этим окном закончена. Жмем закрыть (close). Все что вы создали, должно появится на самой картинке. Теперь выбираем меню "Continuous Region Select"


и кликаем внутри звездочки, чтобы выделить ее.

Выбираем градиент

.
В окне меню Gradient выбираем первичный и вторичный цвета, а в поле "Shape" - "Radial". Я взял цвета 0084ff и 1200ff. Теперь проводим мышью несколько раз внутри звезды.

Создаем тень. Для этого жмем мышью вне звезды и инвертируем избранную область 'Select->Invert' - это выделит звездочку.
Идем в 'Script-Fu->Shadow->Drop-Shadow'. В открывшемся окне отмечаем значения для протяженности тени:























Осталось только написать внутри любое слово и вы имеете violator для вашего сайта:














Это все. Вы можете скачать XCF file на сайте оригинальной статьи.

А если немножко постараться, то можно прицепить этот violator к логотипу вашего сайта:







Пробуйте. Усовершенствуйте.
Продолжение следует.

Читать дальше...

пятница, 15 декабря 2006 г.

Blogger beta. Следим за комментариями

Потихоньку начинаю обживать Blogger beta. Много чего приходится учить и узнавать. Меня очень не устраивала работа с комментариями. Нигде не показываются новые комментарии. Поэтому я выбирал Posting -> Edit Posts и там уже смотрел на количество комментариев для каждой статьи. Но проблема в том, что новые комментарии ничем не помечены (как, например, при пользовании E-mail). Поэтому приходилось запоминать эти цифры и на следующий день смотреть - изменилось ли что-нибудь. Но если статей и комментариев много - это тяжело.


Поэтому, поискав в инете, я нашел. Для тех, кому не хочется читать на английском, привожу вольный перевод.

Сразу хочу сказать. Это работает только на Blogger beta. Заходим в настройки шаблона и добавляем новый елемент на страницу, а именно page elements/add a page element/feed.
И записываем следующее http://название_вашего_блога.blogspot.com/feeds/comments/full.













Жмем Continue. В следующем окне вы увидите 5 последних комментариев. Отмечаем поле Item sources/authors. Вот что вы должны получить:
























Все это сохраняем. Располагаем где нам удобно и ждем новых поступлений комментариев.
Удобно!


Читать дальше...

Установка LAMP (Linux, Apache, MySQL и PHP) в Kubuntu (Ubuntu)

На днях я решил переустановить мой Kubuntu 6.06 Linux. Да, это звучит как кощунство, это же не винда. Но...я сдался с попытками решить одну проблему и решил что быстрее будет переустановить. Плюс будет полезно все вспомнить и на этот раз записать.
Поэтому я позиционирую эту заметку в первую очередь как шпаргалку для себя. Но если кому-нибудь она поможет, я буду рад.

Как видно из названия, сегодня я буду ставить LAMP (Linux, Apache, MySQL и PHP) на моей Kubuntu системе. Первый из списка, т.е. сам Linux, уже есть. Остались три последних. Кстати, есть специальный вариант Ubuntu LAMP Server, с помощью которого все это устанавливается само. Но мне этот вариант не подходит. У меня есть обычный диск и я хочу на домашний компьютер поставить web-сервер лишь в целях разработки некоторых приложений.




Apache2

Для установки я выбрал именно Apache2. Я его использовал раньше, поэтому ставлю и сейчас. Читал, что с ним меньше проблем и что он лучше работает. Серьезно не разбирался.
Ставим:

sudo apt-get install apache2

Дополнительно ставятся следующие пакеты: apache2-common apache2-mpm-worker apache2-utils libapr0 ssl-cert.
Все. Сервер установили.

PHP5

Ставим последню версию PHP5. Не советую ставить 4-ю.

sudo apt-get install php5

Само ставит нужные дополнительные пакеты: apache2-mpm-prefork libapache2-mod-php5 php5-common. Просто замечательно.

Перегружаем Apache:

sudo /etc/init.d/apache2 restart

и провереям работу PHP.
Для этого, в директории /var/www/, создадим файл info.php :

sudo vi /var/www/info.php

со следующим содержимым:

<?php
phpinfo();
?>


Теперь в браузере набираем http://localhost/info.php. Вы должны увидеть следующее:






















MySQL


Ставим MySQL сервер:

sudo apt-get install mysql-server

Ставится MySQL сервер и некоторые доплнительные модули. В общей сумме с инета потянет больше 30 метров.
Если вы ставите MySQL сервер для доступа только со своей машины, то это все. Если же нет, то идем в файл /etc/mysql/my.cnf:

sudo vi /etc/mysql/my.cnf

находим следующую строчку bind-address = 127.0.0.1 и комментируем ее (ставим ; перед строчкой). Таким образом, мы разрешили доступ извне.

Теперь ставим дополнительные модули для связки Apache, PHP и MySQL:

sudo apt-get install libapache2-mod-auth-mysql php5-mysql

Для удобного создания баз данных, пригодится программа phpmyadmin. Поэтому ставим и ее:

sudo apt-get install phpmyadmin

Перегружаем Apache2:

sudo /etc/init.d/apache2 restart

Проверяем работу всей связки. Для этого просто перезагружаем в браузере страницу http://localhost/info.php и ищем следующую секцию с MySQL:




















Теперь меняем стандартный пароль для пользователя root на безопасный:

mysqladmin -u root password new-password

(Внимание: это никак не связано с рутом самой Linux системы, поэтому пароль выбирайте другой).

Перегружаем MySQL:

sudo /etc/init.d/mysql restart

Теперь можно проверить работу MySQL. Набираем в консоли следующее:

mysql -u root -p

жмем Enter и вводим пароль. Если все получилось, то вы увидите следующее приглашение:


serhiy@kubuntu:~$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 24 to server version: 5.0.22-Debian_0ubuntu6.06.2-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>



Все, жмем CTRL + d. Создание базы и таблиц я рассматривать здесь не буду.

Проверяем работу phpmyadmin. Для этого в браузере набираем http://localhost/phpmyadmin/. Загрузится страничка, в которой вы должны ввести пароль для пользователя root (который мы создали выше).
Если все прошло успешно, вы увидите приблизительно такое:


















Поздравляю, вы все установили.

Читать дальше...

четверг, 14 декабря 2006 г.

Gimp. Делаем кнопки в стиле Web 2.0

Наверное, каждый пользователь Internet слышал о Web 2.0. Это слово все чаще показывается на страницах Интернет-изданий. Я здесь не буду объяснять что это такое. Если вам интерсно, то этот термин был придуман в 2004 году в O'Reilly Media. После этого об этой технологии заговорили.

Если вы заходили на известные Web 2.0 сайты, то должны были заметить некоторые визуальные эффекты, отличающие их от обычных сайтов. Например, зеркальное отражение логотипа, специальные кнопки и т.п.

Сегодня я опишу способ создания кнопок в стиле Web 2.0 с помощью Gimp. Обычно все описывают создание таких кнопок в Photoshop, но в Gimp - никто.

Лишь в одной статье я это нашел. Поэтому, с разрешения владельца статьи, я хочу повторить и описать весь процесс здесь. Все, что здесь описано, я проверил сам, используя эту замечательную статью Using Gimp to make Web 2.0 Buttons and Graphics.
Я использовал Gimp 2.2.11 . Описанные приемы работают и в более старых версиях. Если у вас очень старая версия, советую обновить.

Создание изображения:

Итак. Открываем Gimp и создаем новую картинку (File -> New), со следующими параметрами:

Ширина - 200px
Высота - 100px
Фон - прозрачный





















Кнопка:

С помощь инструмента выделения прямоугольной области

,выделяем область будущей кнопки:








В этом окне заходим в 'Select->Rounded Rectangle'. Если у вас нет такого пункта, попробуйте 'Script-Fu->Selection->Round'. Если и этого нет, тогда у вас действительно очень старая версия Gimp. Смотрим как сделать это в старых версиях how to make a rounded selection in the old way.
В появившемся диалоге надо только нажать Ok.

Вы увидите, что-то наподобие следующего:










Теперь заполним созданную кнопку Web 2.0 цветом. Для этого сойдет все яркое и ослепляющее. Для примера выбираем цвет #f48f35. Этот цвет часто используют для RSS иконок. Но можете выбрать и что-нибудь другое. Теперь кнопка будет выглядеть так:










Освещение (Блик):

Следующим шагом будет создание округленного прямоугольника немного меньших размеров. Проделайте все как описано выше. В итоге вы должны получить следующее:









Создаем новый слой и с помощью Gradient Tool делаем градиент, наподобие приведенного ниже рисунка (я выбрал стандартный градиент - Linear (FG to BG)).










Текст:

Выбираем T в меню Gimp, и пишем нужный нам текст. Можно добавить некоторые эффекты. Например, использовать тень. Для этого выбираем первый слой, идем - 'Scrit-Fu->Shadow->Drop Shadow' и устанавливаем текст тени, и ее протяженность:





















Все. Для пущей наглядности, создаем новый слой с белым фоном и двигаем его в самое начало (перед самым первым слоем). Получаем следующее:









Тренируйтесь. Усовершенствуйте.

Читать дальше...