Генерирование линий в редакторе vi

Иногда в файлах конфигурации необходимо добавить множество похожих линий, например — IP адресов, при создании множества DNS записей.
В редакоторе vi их можно легко сгенерировать используя следующую комманду:

[code] :r! for i in $(seq 1 5); do echo «This is line \#${i}»; done[/code]

Результат будет следующий:
[code]
This is line #1
This is line #2
This is line #3
This is line #4
This is line #5
[/code]

Аналогичная комманда для создания обратной зоны DNS в BIND:

[code] :r! for i in $(seq 1 5); do echo «$i PTR host${i}.domain.com»; done[/code]
[code]
1 PTR host1.domain.com
2 PTR host2.domain.com
3 PTR host3.domain.com
4 PTR host4.domain.com
5 PTR host5.domain.com
[/code]

Количество линий изменяется в зависимости от $(seq 1 5);, что в данном случае означает: от одного до пяти.

Zabbix SNMP — Error building asn.1 representation

При установке Zabbix на Debian 6, может возникнуть следующая ошибка SNMP:

Error building asn.1 representation

Для выяяснени причины запустите snmpget

[code]
snmpget -v2c -c public 123.45.67.89 SNMPv2-MIB::sysUpTime.0
Cannot find module (SNMPv2-MIB): At line 0 in (none)
[/code]

Если вы получили такую же ошибку, в системе не установлен пакет snmp-mibs-downloader.

Для его установки используйте менеджер пакетов apt:

[code]
apt-get install snmp-mibs-downloader
[/code]

После этого перезапустите zabbix-server

kernel: e1000e eth0: Error reading PHY register

В последних версиях CentOS существует баг который вызывает зависание системы, из-за сетевого драйвера e1000.

В логе /var/log/messages наблюдается следующее сообщение:

[code]
kernel: e1000e 0000:02:00.0: eth0: Error reading PHY register
[/code]

Для временного решения проблемы нуобходимо отклюдить Активное Управление Питанием шины PCI-e (ASPM).

Если вы используете загрузчик GRUB, отредактируйте следующий файл: /boot/grub/grub.conf и добавьте в конец строки, начинающейся с «kernel» следующий параметр pcie_aspm=off.

Например так выглядит эта строка на моей системе:
[code]
kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=UUID=81e9e0a2-0a51-4d75-955d-909aaf848192 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_DM rd_MD_UUID=c6855f45:016a63bb:2d79bfb2:07371ed8 rd_NO_LVM rd_MD_UUID=5d5a434e:6c20cfcd:51340c3f:29c29151 pcie_aspm=off
[/code]

Что бы изменения вступили в силу, перезагрузите систему.

Для проверки изменений выполните:

[code]
dmesg | grep PCIe
PCIe ASPM is disabled
[/code]

Если ваш вывод отличается от вышеприведенного, значит изменения не вступили в силу.

Добавление / вычитание времени в баше

Для добавления или вычитания секунд, минут, часов, дней, недель, месяцев или лет к/от текущей даты используйте стандартную команду date:

[code]
date -d ‘+2 hour’
[/code]

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

[code]
date -d ‘2010-01-01 + 2 year’
[/code]

Установка Оракл 11 без иксов

Для установки Оракл 11g2 на сервер, не имеющей графической оболочки X11 используйте следующую комманду:

[code]
runInstaller -silent -responsefile db.rsp
[/code]

db.rsp это файл ответов Оракл содержащий параметры, которые обычно настраивает графический установщик.
NB! Относительные пути (например ../../db.rsp) не поддерживаются инсталлятором.

Вот пример файла ответов Oracle 11g2

[code]
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=localhost
UNIX_GROUP_NAME=oracle
INVENTORY_LOCATION=/opt/oracle/oraInventory
SELECTED_LANGUAGES=en
ORACLE_HOME=/opt/oracle/product/11.2.0/dbhome_1
ORACLE_BASE=/opt/oracle

oracle.install.db.InstallEdition=EE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=
oracle.install.db.DBA_GROUP=oracle
oracle.install.db.OPER_GROUP=oracle

oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=false
oracle.install.db.racOneServiceName=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.config.starterdb.characterSet=
oracle.install.db.config.starterdb.memoryOption=false
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=SKIP_UPDATES
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=

[/code]

Скачать: Файл ответов Oracle 11

Используя данный файл, будет установлен Oracle Enterprise edition в /opt/oracle используя пользователя «oracle» и группу «oracle«. Пользователя и папку легко сменить, отредактировав предложенный файл.

NB!
Перед установкой убедитесь что папка /opt/oracle существует и у пользователя Оракла имеются права на запись в данную папку. Ниже приведен список необходимых компонентов, которые должны быть установлены в системе:

[code]
yum install gcc gcc-c++ gcc-c++-devel glibc-devel libgcc libgcc-devel libaio libaio-devel compat-libstdc++-33 libstdc++ libstdc++-devel elfutils-libelf-devel ksh
[/code]