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

Banana-Pi установка FreeBSD

Образы FreeBSD под плату Banana-Pi доступны по следующим ссылкам:

http://raspbsd.org/bananapi.html

http://ftp.freebsd.org/pub/FreeBSD/snapshots/arm/armv6/ISO-IMAGES/11.0/

Скачанный и разархивированый образ записывается на SD карту с помощью утилиты "Win32 Disk Imager" в Windows(запускать утилиту нужно с правами администратора), либо с помощью утилиты dd в Linux. После загрузки с SD карты доступ в консоль  пользователь root без пароля.

В моем случае после загрузки получил "радужный экран(rainbow screen)", плата не реагировала на нажатия клавиш клавиатуры, так же плата не получала ip-адрес с DHCP сервера, позже выяснилось что было неверно указано имя сетевого девайса в rc.conf.


Чтобы победить данную ситуацию решил подключиться к последовательной консоли(serial console) с помощью USB-TTL переходника.

пятница, 20 ноября 2015 г.

Памятка по работе с LVM в HP-UX

Давным давно проходил курсы по администрированию HP-UX, на которых лектором был Георгий Прилипко. Он и снабдил нас слушателей данной памяткой, за которую огромное ему спасибо, выручала не один раз.

LVM (Logical Volume Manager)

Предоставляет возможность управления размером/размещением логических томов (lvol) (аналог fdisk, но гораздо более мощный), может расширять lvol на ходу, не ограничивает их размерами конкретных дисков, обеспечивает strip и зеркала (при наличии Mirror/UX). Volume Group (VG) состоит из Physical Volume (PV), на которых создаются Logical Volume (LV). Место под LV выделяется логическими экстентами (LE), на диске под LE отдаются РЕ (physical extent), размер которого всегда равен размеру LE. Для каждого LV создается два устройства (/dev/vg../lvol и rlvol). LV считается непрерывным разделом.

Создание Volume Group (VG) (диски отдаются в VG целиком)

# ioscan -funC disk        - какие диски есть
# strings /etc/lvmtab*     - посмотреть, а какие используются
# vxdisk list              - а как с VxVM (11i) , если он есть
# diskinfo /dev/rdsk/с...  - информация о диске, -b только размер
# pvdisplay -l /dev/rdisk/disk*   - что на дисках 11iv2
# diskowner /dev/rdisk/disk...    - чей диск с 11iv3, для всех дисков
  # for d in /dev/rdisk/disk*; do diskowner $d; done
# pvcreate -f /dev/rdsk/с...    (-B для boot) не создает, если в /etc/lvmtab*

Установка GlassFish на CentOS 6/5 RHEL 6/5

Ниже описана базовая установка GlassFish Server Open Source Edition 3.1.2.2. Для работы GlassFish требуется Oracle JDK если он ещё не установлен то как это сделать можно прочитать тут.

Скачиваем мультиязычный пакет с официального сайта https://glassfish.java.net.

# wget http://dlc-cdn.sun.com/glassfish/3.1.2.2/release/glassfish-3.1.2.2-ml.zip

Перемещаем, извлекаем из архива.

# mv glassfish-3.1.2.2-ml.zip /opt/
# cd /opt
# unzip -q glassfish-3.1.2.2-ml.zip


Добавляем запись в файл /etc/hosts следующего вида.

ip-adress  hostname.domain  hostname

Пробуем запустить.

# /opt/glassfish3/glassfish/bin/asadmin start-domain domain1
# Waiting for DAS to start ...
# Started domain: domain1

Установка Oracle Java JDK/JRE на CentOS, Red Hat(RHEL), Fedora

1. Определяем разрядность операционной системы.

# uname -m
x86_64
#

В зависимости от разрядности скачиваем интересующий нас RPM пакет отсюда.

2. Установка JDK/JRE пакетов(выполняется из под пользователя root).

## JDK 32-bit ##
# rpm -Uvh /путь/до/файла/jdk-7u75-linux-i586.rpm

## JDK 64-bit ##
# rpm -Uvh /путь/до/файла/jdk-7u75-linux-x64.rpm

## JRE 32-bit ##
# rpm -Uvh /путь/до/файла/jre-7u75-linux-i586.rpm

## JRE 64-bit ##
# rpm -Uvh /путь/до/файла/jre-7u75-linux-x64.rpm

3. Настройка Java alternatives.

3.1 Использование JDK последней версии(/usr/java/latest).

## Java ##
# alternatives --install /usr/bin/java java /usr/java/latest/jre/bin/java 200000

Установка Oracle Java в Ubuntu и Linux Mint из PPA репозитария

Удаляем OpenJDK.

# sudo apt-get update
# sudo apt-get remove openjdk*


Добавляем репозитарий и устанавливаем.

# sudo add-apt-repository ppa:webupd8team/java
# sudo apt-get update
# sudo apt-get install oracle-java7-installer


В этом же репозитарии присутствует Java версии 8, для ее установки просто заменяем 7 на 8 в предыдущей команде.

Проверяем.

# java -version
# java version "1.7.0_80"
# Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
# Java HotSpot(TM) Server VM (build 24.80-b11, mixed mode)


Если не выводится, то обновляем альтернативы.

# sudo update-java-alternatives -s java-7-oracle

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

# sudo apt-get install oracle-java7-set-default

Как определить FC ID(WWN) диска(LUN) на Linux сервере

Бывает трудно найти к какому SAN относится диск и как он подключен, если к серверу подключено более двух  SAN одного типа. Получаем FC адрес на HBA.

# systool -c fc_host -v
Class = "fc_host"

Class Device = "host1"
Class Device path = "/sys/class/fc_host/host1"
fabric_name         = "0x1000000533a43ae2"
issue_lip           = <store method only>
node_name           = "0x5001438016793705"
port_id             = "0x800100"
port_name           = "0x5001438016793704"
port_state          = "Online"
port_type           = "NPort (fabric via point-to-point)"
speed               = "8 Gbit"
supported_classes   = "Class 3"
supported_speeds    = "1 Gbit, 2 Gbit, 4 Gbit, 8 Gbit"
symbolic_name       = "QMH2562 FW:v5.06.03 DVR:v8.03.07.15.05.09-k"
system_hostname     = ""
tgtid_bind_type     = "wwpn (World Wide Port Name)"
uevent              = <store method only>

Device = "host1"
Device path = "/sys/devices/pci0000:00/0000:00:07.0/0000:06:00.0/host1"
edc                 = <store method only>
fw_dump             =
nvram               = "ISP "
optrom_ctl          = <store method only>
optrom              =
reset               = <store method only>
uevent              = <store method only>
vpd                 = "-8"


Class Device = "host2"
Class Device path = "/sys/class/fc_host/host2"

... ... ...


Определяем FC и WWN.

# systool -c fc_transport -v

HP-UX переопределение драйва ленточной библиотеки после его замены

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

# ioscan -fnC tape
Class     I  H/W Path  Driver S/W State   H/W Type     Description
==================================================================
tape      0  3/0/12/1/0/4/0.36.17.255.0.0.0  stape   CLAIMED     DEVICE       HP      Ultrium 3-SCSI
                      /dev/rmt/0m             /dev/rmt/0mn            /dev/rmt/c23t0d0BEST    /dev/rmt/c23t0d0BESTn
                      /dev/rmt/0mb            /dev/rmt/0mnb           /dev/rmt/c23t0d0BESTb   /dev/rmt/c23t0d0BESTnb
tape      1  3/0/12/1/0/4/0.36.17.255.0.0.1  stape   CLAIMED     DEVICE       HP      Ultrium 3-SCSI
                      /dev/rmt/1m             /dev/rmt/1mn            /dev/rmt/c23t0d1BEST    /dev/rmt/c23t0d1BESTn
                      /dev/rmt/1mb            /dev/rmt/1mnb           /dev/rmt/c23t0d1BESTb   /dev/rmt/c23t0d1BESTnb
tape      5  3/0/14/1/0/4/0.35.17.255.0.0.1  stape   NO_HW       DEVICE       HP      Ultrium 3-SCSI
                      /dev/rmt/5m             /dev/rmt/5mn            /dev/rmt/c56t0d1BEST    /dev/rmt/c56t0d1BESTn
                      /dev/rmt/5mb            /dev/rmt/5mnb           /dev/rmt/c56t0d1BESTb   /dev/rmt/c56t0d1BESTnb
tape      6  3/0/14/1/0/4/0.35.17.255.0.0.2  stape   CLAIMED     DEVICE       HP      Ultrium 3-SCSI
                      /dev/rmt/6m             /dev/rmt/6mn            /dev/rmt/c56t0d2BEST    /dev/rmt/c56t0d2BESTn
                      /dev/rmt/6mb            /dev/rmt/6mnb           /dev/rmt/c56t0d2BESTb   /dev/rmt/c56t0d2BESTnb


В dmesg наблюдаем ошибку следующего вида.


class : lunpath, instance 332
Evpd inquiry page 83h/80h failed or the current page 83h/80h data do not match the previous known page 83h/80h data on LUN id 0x0 probed beneath the target path (class = tgtpath, instance = 28) The lun path is (class = lunpath, instance 332).Run 'scsimgr replace_wwid' command to validate the change

HP-UX Ошибка: vgdisplay: Warning: couldn’t query physical volume

После перезагрузки сервера появилась ошибка “vgdisplay: Warning: couldn’t query physical volume”.

# vgdisplay
--- Volume groups ---
VG Name                     /dev/vg00
VG Write Access             read/write
VG Status                   available
Max LV                      255
Cur LV                      7
Open LV                     7
Max PV                      16
Cur PV                      1
Act PV                      1
Max PE per PV               4465
VGDA                        2
PE Size (Mbytes)            64
Total PE                    4455
Alloc PE                    2566
Free PE                     1889
Total PVG                   0
Total Spare PVs             0
Total Spare PVs in use      0
VG Version                  1.0
VG Max Size                 4465g
VG Max Extents              71440

vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c37t0d1":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c39t0d1":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c37t0d2":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c39t0d2":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c37t0d3":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c39t0d3":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c37t0d4":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c39t0d4":
The specified path does not correspond to physical volume attached to
this volume group
vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c37t0d5":
The specified path does not correspond to physical volume attached to
this volume group

четверг, 19 ноября 2015 г.

Полезные утилиты в Linux

Обыкновенно пользователь Linux в среднем использует не более 50-60 утилит для работы в терминале. Есть Linux утилиты которые менее известны но не менее полезны. Ниже представлены некоторые из них.

1. Утилита ncdu(NCurses Disk Usage)

ncdu - анализатор использования дискового пространства с псевдо графическим интерфейсом. При запуске без  ключей и параметров ncdu приступит к сканированию подкаталогов начиная с текущего.



После завершения сканирования возможно перемещаться по дереву каталогов с помощью стрелок и клавиши Enter.



Посмотрим помощь по утилите.



Значения ключей.

  •     up, k - пеермещение курсора вверх;
  •     down, j - перемещение курсора вниз;
  •     right/enter - открыват выбраную директорию;

LinuxMint не работает редактирование в Shutter

Недавно столкнулся с тем что в Shutter не работает редактирование.



Лечится очень просто, нужно установить пакеты libgoo-canvas-perl  и gnome-web-photo.

# sudo apt-get install libgoo-canvas-perl gnome-web-photo

Монтирование ISO - образа в RHEL/CentOS/Fedora/Ubuntu и FreeBSD

ISO - образ представляет собой архив в котором содержится образ диска в файловой системе стандарта ISO 9660. Для выполнения монтирования ISO образа команды должны выполнятся из под пользователя root или с помощью команды sudo.

Создадим точку монтирования с именем iso.

# mkdir /mnt/iso

или

$ sudo mkdir /mnt/iso


Смонтируем образ диска с дистрибутивом FreeBSD - FreeBSD-10.1-RELEASE-amd64-dvd1.iso.

# mount -t iso9660 -o loop /home/michael/FreeBSD-10.1-RELEASE-amd64-dvd1.iso /mnt/iso/

или

$ sudo mount -t iso9660 -o loop /home/michael/FreeBSD-10.1-RELEASE-amd64-dvd1.iso /mnt/iso/

После успешного монтирования, перейдем в точку монтирования /mnt/iso и просмотрим

среда, 18 ноября 2015 г.

Монтирование ISO – образа в HP-UX

В HP-UX 11.31 ISO образ можно примонтировать несколькими способами.

1.LVM метод (копирование ISO образа в логический раздел).

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

# lvcreate -L -n lviso /dev/vgXX

Копируем ISO файл в "сырой" логический раздел.

# dd if=/mydir/myfile.iso of=/dev/vgXX/rlviso bs=256k

Создаем временную директорию и монтируем.

# mkdir /isodir
# mount /dev/vgXX/lviso /isodir

2. С помощью iLO.

Заходим на iLO с помощью браузера выбираем Virtual Devices -> Virtual Media кликаем "Launch" кнопку (Java plug-in). В открывшемся окне выбираем Local Image File:" -> Выбираем iso образ -> Жмем "Connect".

В терминале, ищем новое устройство и монтируем.