2008-05-10

SSH-туннель

Пару дней назад решал вопрос по подключению к удаленному MySQL серверу через SSH-туннель. По этому поводу решил разродиться короткой памяткой (для себя, для вас) о том как этот тунель организовать под Linux. Уверен, что установить и запустить SSH демон на сервере у вас не составит труда, так же вы уже установили клиент на своем клиенте. Вообще, все очень просто. Ни сервер, ни клиент, которые вы хотите подружить через туннель (я говорю о ПО, а не о машинах как таковых), не должны быть специально обучены работать с туннелем, они и знать о нем не будут. Все будет работать в штатном режиме, как будто и нет никакого туннеля. Что ж, делаем в своем любимом терминале, на клиентской машине, так:
$ ssh -f -N -L4787:example.org:8787 user@server.org

Все, теперь несколько комментариев:

  • 4787 - Этот порт будет открыт на локальной машине, используйте его для доступа к вашему серверу приложения (MySQL, PostgreSQL и т.д.), используйте тот клиент, который предназначен для работы с этим сервером.

  • example.org:8787 - Это удаленный сервер, общение с которым вы и шифруете. Понимайте так, что порт 8787 (в данном примере) на удаленной машине будет транслироваться в 4787 на вашем клиенте.

  • user@server.org - Тут все как обычно. Это машина, на которой установлен SSH-сервер, user - пользователь на этом сервере. Шифрованный канал будет организован именно до этой машины, а вот от неё до example.org трафик шифроваться не будет, будет использован уже ваш сетевой протокол. Обычно example.org и server.org это один и тот же сервер (конечно же используется одно и то же имя или localhost вместо example.org).


По всем остальным ключам и, если вам нужны подробности, обращайтесь к man'у:
$ man ssh
Туннель можно сделать и с помощью PuTTY - почитайте инструкцию по подключению к MySQL, там все можно по скринам понять, если у вас с английским туго.

p.s. Совсем забыл. Респект и уважуха нашим ветеранам. Всех с праздником.

2008-05-08

DVD-файлы в DVD-видео

Linux мне нравится все больше и больше.
Довольно не предусмотрительно натаскал DVD-фильмов в свое время, теперь, когда возникло желание залить обратно это дело и получить нормальный DVD-Video, возникла проблема. Натаскал, это значит выгрузил все что находится в VIDEO_TS (хорошо, что сообразил и взял не только VOB'ы :-), а не сделал образ диска.
Что бы сделать из этой коллекции DVD-Video не достаточно просто скопировать файлы в папку VIDEO_TS и захреначить это дело на диск, работать не будет, во всяком случае не на всех проигрывателях. Образ DVD-Video делается очень просто, достаточно воспользоваться утилем mkisofs с ключом -dvd-video, и все. Образ готов, осталось залить его на диск вашим любимым способом, наслаждайтесь качественным видео :-).

2008-05-06

Аналог start в Linux

start, я так назвал скрипт в линухе. Некоторые консольные приложения, например сервера, удобнее запускать в отдельном терминале, а не в том, в котором ты работаешь в данные момент. Банальный пример - при разработке клиент-серверного приложения мне из far/mc приходится запускать как сервер (я работаю с Python) так и клиент, при этом нет желания открывать руками отдельный терминал, запускать там mc, выбирать нужный скрипт, давить на него Enter'ом (до вчерашнего дня я делал именно так, потом мне надоело и начал думать :-). В Far все делается просто - жмем Shift + Enter и приложение запускается в отдельном окне (я говорю про консольные). Для Linux мне пришлось написать несложный sh-скрипт, который выполняет приложение в xterm:
#!/bin/sh
xterm -title "$*" -geometry 100x25 -e bash --login -c "$*" &

Очень удобно :-).

2008-03-21

Переезд на RAID

Задумал вчера вернуться на свой RAID. Со времени установки Linux (т.е. когда я начал с ним серьезно работать, это Debian GNU/Linux 4.0 Etch) на отдельном винте (он служил как переносной, как запаска и т.д.) я так с ним и работаю. Винту примерно 7 лет и хотя, если верить SMART'у, то он в отличном состонии, но вот хотелось использовать массив из винтов по моложе. Мой RAID, это Promise FastTrak TX2000, ничего особенного из себя не представляет, есть интересные показатели по работе, но никаких космических скоростей :-).
Вообщем линух замечательно на нем завелся (ядро 2.6.23 с драйвером для массива dmraid), с GRUB так же не возникло проблем. Проблемы возникли когда я решил перетасовать (изменить, переместить и добавить) разделы. Пришлось потратить несколько часов, что бы создать все разделы руками, т.е. с использованием шестнадцатиричного редактора. И тут я задумался, а есть ли для линуха нормальный редактор диска и не сделать ли мне свой редактор, всем редактором редактор :-) ?

fdisk

Из-за этой заразы я потерял сегодня пару часов. Все никак не мог понять в чем дело.
Задача состояла в изменении размера ntfs раздела (нужно было его уменьшить). Делал все по инструкции. Выполнил ntfsresize, удалил и создал (с тем же начальным сектором) раздел заново с помощью fdisk. Тут начались проблемы. Дело в том что fdisk (во всяком случае моя версия, GNU Fdisk 1.0) выравнивает границы сектора по размеру дорожки (в моем случае это 63 сектора), ну и выводит информацию так же её выравнивая. Мой раздел не был выравнен (создан установищком w2k :-). Соответственно я получил не достоверную информацию и, используя тот же fdisk, не мог настроить раздел с точностью до сектора.
Я не знаю как создает разделы parted, но, хотя бы, информацию он выводит точную, до сектора. Исправлять все ошибки приходилось так же как и в DOS :-), руками (hex редактором).