четверг, 12 июня 2008 г.

Первые впечатления от использования Mikrotik RB/MRT (miniROUTER)

Для того чтобы "расшарить" доступ в Интернет не только для меня, но и для моих друзей было решено купить Mikrotik RB/MRT (miniROUTER). Позавчера я получил возможность получше изучить данную модель. Плюсы, особенности я опишу чуть позже в этой же теме. Сейчас выложу лишь фотографии.


Итак, как и обещал, описываю свои впечатления от использования данного роутера. Положительных моментов очень много! Полный список возможностей можно прочитать в замечательной статье Кузьмицкого Александра - RouterOS Mikrotik - мечта сисадмина. Из отрицательных, наверное, то, что:

1) Нет русифицированной версии Winbox

2) Отсутствует документация на русском языке

3) Winbox не портирована в UNIX среду. Да, конечно, можно использовать ручную настройку через SSH, но быстрее и приятнее производить тюнинг через GUI.

Конечно, все эти недостатки с лихвой компенсируются богатым функционалом и ценой самого девайса.

среда, 11 июня 2008 г.

Upgrade the Oracle Database 9

Вчера был один случай. Необходимо сделать полный дамп с 9i базы, и как оказалось, база не была пропатчена до версии 9.2.0.8. Для корректного импорта пришлось обновить базу. Делал это так:

1) Останавливаю листнер

lsnrctl stop

2) Изменяю параметры SHARED_POOL_SIZE и JAVA_POOL_SIZE.

SQL> show parameter shared_pool_size;

SQL> alter system set shared_pool_size='150M' scope=both;

SQL> show parameter java_pool_size;

SQL> alter system set java_pool_size='150M' scope=both;


3) Опускаю экземпляр

SQL> shutdown immediate;

4) Подключаюсь как sysdba

sqlplus /nolog

SQL> connect / as sysdba


5) Запускаю catpatch.sql

SQL> startup migrate
SQL> spool patch.log
SQL> @?/rdbms/admin/catpatch.sql
SQL> spool off


6) Рестартую базу

SQL> shutdown immediate
SQL> startup


7) Рекомпилирую инвалидные объекты

SQL> @?/rdbms/admin/utlrp.sql
SQL> @?/rdbms/admin/utlrp.sql
SQL> @?/rdbms/admin/utlrp.sql


8) Поднимаю листнер

lsnrctl start

9) Изменяю значения SHARED_POOL_SIZE и JAVA_POOL_SIZE на стандартные.

10) Запускаю полный импорт.

вторник, 10 июня 2008 г.

Утилита env

env - формирование окружения для выполнения команды

СИНТАКСИС
env [-] [имя=значение ...] [команда аргумент ...]

ОПИСАНИЕ

Утилита env получает текущее окружение, модифицирует его в соответствии со своими аргументами, и затем выполняет команду в модифицированном окружении. Пары имя=значение об единяются с наследуемым окружением перед выполнением команды. При наличии флага "-" наследуемое окружение полностью игнорируется, и команда выполняется с тем окружением, которое определено командной строкой env.

Если команда не задана, то сформированное окружение выдается на стандартный вывод, по одной паре имя=зачение в строке.

воскресенье, 8 июня 2008 г.

Переименование alert_log

Хороший пример приводит alp-it.

Чтобы каждый день файл alert.log был новым, нужно существующий переименовать.  А Oracle при новом сообщении создаст чистый alert.log. В *nix для того, чтобы автоматически файл переименовывался, в таблицу планировщика (crontab -e) нужно добавить строку

mm hh * * * mv PATH/alert_DB_NAME.log `date +PATH/alert_DB_NAME_\%d_\%m_\%y.log`

Где mm - минуты, hh - часы, когда будет запускаться переименовывание файла.

Ну и путь понятно нужно ставить соответсвующий. В результате к имени файла будет добавлена дата.

Практическое пособие администратора UNIX

Прочел книгу Филиппа Торчинского
"Практическое пособие администратора UNIX".


С первых глав книга читалась достаточно туго, и было ощущение того, что я купил еще одного автора из серии "сделай это за 24 часа" или "для продвинутых чайников". Но ближе к 4 и 5 главе книга Филиппа заставила пересмотреть этот взгляд, и я понял, что не зря потратил деньги, некоторые вещи описанные в книге весьма полезны и пригодятся мне в моей работе. Особо понравилась глава № 28 (Человеческий фактор). В ней описывается, что есть некоторые правила, которые необходимо соблюдать и НИКОГДА не делать:

1) менять в нетрезвом состоянии пароль root-а. Мой руководитель советует в нетрезвом состоянии вообще не садиться за консоль, как и за руль автомобиля.

2) редактировать конфигурацию firewall находясь далеко от него (автор видимо имеет ввиду физический доступ к консоли на сервере);

3) менять настройки систем находясь в отпуске (придется ехать на работу, если что-то попортите ненароком);

4) удаленно перезагружать сервер, если что-то серьезное было изменено в настройках (например IP-адрес интерфейса, через который вы работаете);

5) оставлять пароль root пустым;

6) разрешать пользователям придумывать и использовать пустые пароли;

7) убивать полезных демонов. Особенно - init, при работе удаленно - inetd, локально - klogd;

8) давать пароль суперпользователя (root) нескольким людям.

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

четверг, 5 июня 2008 г.

Распаковка архивов *.tar.gz

Для распаковки архива вида *.tar.gz используется команда:

tar xvfz *.tar.gz


Используемые в команде ключи:

x - позволяет вам извлекать файлы из архива.
v - делает вывод tar подробным. Это означает, что на экран будут выведены все найденные в архиве файлы. Если эта опция опущена, информация, выводимая в процессе обработки, будет ограничена.
f - является обязательной опцией. Без неё tar пытается использовать магнитную ленту вместо файла архива.
z - позволяет вам обрабатывать архив, сжатый gzip'ом (с расширением .gz). Если вы забудете указать эту опцию, tar выдаст ошибку. И наоборот, эта опция не должна использоваться для несжатых архивов.

суббота, 31 мая 2008 г.

Upgrade Linux-сервера (HP)

Вчера обновил железо, добавив 4 Гб. RAM на созданном мной Linux сервере. Изначально конфигурация ограничивалась 512 Мб. RAM. Разницу до и после апгрейда почувствовал сразу! Так же установил XFS Tools для того чтобы отформатировать отдельный раздел под XFS. Теперь дополнительный раздел выделен под СУБД Oracle 10g. На скорую руку поставил update 10.2.0.4 и после этого при помощи утилиты dbca (Database Configuration Assistant) создал тестовую базу orcl. Честно говоря, работа данной утилиты меня не очень впечатляет. Почему-то в файле параметров конфигурации (spfile) вместо "нормальных" путей появляются такие ---> //
С чем это связано сказать пока не могу. Придется клонировать базу и пересоздавать структуру расположения датафайлов и каталогов (bdump, cdump, udump и т.д.).

воскресенье, 25 мая 2008 г.

Утилита lsof

И еще одна утилита, которой мне приходится часто пользоваться.

lsof - составляет список открытых процессами файлов системах Unix.

В качестве открытого файла names может выступать обычный файл, каталог, блочно-специальный файл, символьно-специальный файл, исполнительная текстовая ссылка, библиотека, поток или сетевой файл. Под сетевым файлом подразумевается сокет Internet, файл NFS, сокет домена Unix. В отсутствие каких-либо опций сообщает о всех открытых файлах, принадлежащих всем активным процессам.

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

Ссылки по теме:

1) Утилита lsof - инструмент администратора (lsof proccess linux file)

2) Linux / Unix Command - lsof

3) GUI для lsof

Lsof is available via anonymous ftp from these mirror hosts.

ftp://ftp.cerias.purdue.edu/pub/tools/unix/sysutils/lsof
ftp://ftp.tau.ac.il/pub/unix/admin
ftp://ftp.cert.dfn.de/pub/tools/admin/lsof
ftp://ftp.fu-berlin.de/pub/unix/tools/lsof
ftp://ftp.kaizo.org/pub/lsof/
ftp://ftp.tu-darmstadt.de/pub/sysadmin/lsof
ftp://ftp.tux.org/pub/sites/vic.cc.purdue.edu/tools/unix/lsof
ftp://gd.tuwien.ac.at/utils/admin-tools/lsof
ftp://sunsite.ualberta.ca/pub/Mirror/lsof
ftp://the.wiretapped.net/pub/security/host-security/lsof/

Использование инструментов system-config в RedHat

После того как я поднял отдельный сервер на базе RedHat 4 AS возникла необходимость сократить до минимума физический доступ к консоли на сервер и по максимуму удаленно администрировать его. Для этого пытался настроить VNC сервер. Меня огорчило, что по-умолчанию доступ к GNOME рабочему столу через VNC отсутствует. Он мне был нужен для того что-бы удобнее настраивать запуск отдельных служб и т.д. На самом деле я подозреваю, что это "пагубное" воздействие концепции и мировоззрения Windows пользователя. Linux - это не Windows и многие приемы администрирования отличаются в данной ОС. Перехожу от философии к практике.

Как известно RedHat предоставляет различные инструменты которые помогают упростить администрирования системы. Для примера командой find в каталоге
/usr/bin/ я нашел 26 инструмента которые используются для настройки системы. Часто это GUI средства которые упрощают сопровождение файлов конфигурации. Итак, это:

[root@redhat /]# find ./usr/bin/ -name system-config*
./usr/bin/system-config-display
./usr/bin/system-config-date
./usr/bin/system-config-securitylevel
./usr/bin/system-config-network-cmd
./usr/bin/system-config-lvm
./usr/bin/system-config-securitylevel-tui
./usr/bin/system-config-packages
./usr/bin/system-config-httpd
./usr/bin/system-config-network
./usr/bin/system-config-nfs
./usr/bin/system-config-soundcard
./usr/bin/system-config-mouse
./usr/bin/system-config-language
./usr/bin/system-config-netboot
./usr/bin/system-config-keyboard
./usr/bin/system-config-printer-tui
./usr/bin/system-config-authentication
./usr/bin/system-config-rootpassword
./usr/bin/system-config-network-druid
./usr/bin/system-config-services
./usr/bin/system-config-samba
./usr/bin/system-config-printer
./usr/bin/system-config-time
./usr/bin/system-config-users
./usr/bin/system-config-boot
./usr/bin/system-config-printer-gui


В моем случае мне нужен был инструмент для настройки служб и это оказался system-config-services. В документации (System Administration Guide) данный инструмент описывается как

Services Conguration Tool



The Services Conguration Tool is a graphical application developed by Red Hat to congure which SysV services in the /etc/rc.d/init.d directory are started at boot time (for runlevels 3, 4, and 5) and which xinetd services are enabled. It also allows you to start, stop, and restart SysV services as well as restart xinetd.
To start the Services Conguration Tool from the desktop, go to the Main Menu Button (on the Panel) => System Settings => Server Settings => Services or type the command system-config-services at a shell prompt (for example, in an XTerm or a GNOME terminal).

суббота, 24 мая 2008 г.

Поднял отдельный сервер на базе RedHat 4 AS

Вчера решил задержатся на работе (не смотря на то, что это была пятница) и установил на "бесхозный" ПК (HP, Intel Pentium 4, CPU - 3 Гг., RAM - 512 Мб., HDD - 40 Гб.) одну из моих любимых OS - RedHat 4 AS. При установке особо удивила скорость инсталляции. Вся установка заняла меньше 10 минут! При этом тип установки включал в себя поддержку Gnome, Apache, MySQL, PostgreSQL, системные утилиты, пакеты для разработки приложений и т.д. Дома на VMWare данная установка (AMD Sempron, 1800 MHz (9 x 200) 3400+, 3 Гб DDR2 SDRAM) занимает около 35-40 мин. Возможно, это зависит от частоты CPU? За скорость своего HDD - ST3750640AS дома я спокоен (SATA-150). На следующей неделе буду шлифовать и доп. настраивать этот сервер.