При резервном копировании с ZFS в несколько потоков выяснилась такая вещь, что читается с дисков заметно больше чем пишется на ленты:

# iostat -xnz 3 | egrep 'ABCF|rmt'
...
683.7 0.0 87239.8 0.0 0.0 9.9 0.0 14.5 1 100 c12t600C0FF0000000000ABCF1150B265F00d0
0.0 50.3 0.0 12887.6 0.0 0.1 0.0 1.9 0 10 rmt/1
0.0 109.1 0.0 27926.0 0.0 0.2 0.0 2.1 0 23 rmt/2
691.9 0.0 88372.5 0.0 0.0 9.9 0.0 14.4 1 100 c12t600C0FF0000000000ABCF1150B265F00d0
0.0 59.2 0.0 15146.3 0.0 0.1 0.0 2.0 0 12 rmt/1
0.0 112.1 0.0 28692.7 0.0 0.2 0.0 1.9 0 22 rmt/2

Статистика по zpool iostat показывает тоже самое — чтение с пула идет 80-90МБ. При этом суммарная запись на ленты — раза в два меньше. Куда деваются считанные данные???? ;)
Читать полностью »

installboot

03.11.2010

После зеркалирования загрузочных дисков на solaris не забываем о bootblock (ну чтобы если что загрузиться с зеркала)!
Технология при переходе от svm/ufs к zfs не изменилась:
sparc ufs:
metainit d11 c0t1d0s0
metattach d0 d11
cd /usr/platform/`uname -m`/lib/fs/ufs
installboot -F ufs bootblk /dev/rdsk/c0t1d0s0

sparc zfs:
zpool attach rpool c0t0d0s0 c0t1d0s0
cd /usr/platform/`uname -m`/lib/fs/zfs
installboot -F zfs bootblk /dev/rdsk/c0t1d0s0

x86:
installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c0t1d0s0

Обновление vxvm при LU:

Читать полностью »

При переходе с ufs на zfs на есть только одна засада — нужно чтобы загрузочный диск имел SMI лэйбл и новый zpool располагался на слайсе (для порядка — лучше всего на слайсе 0).
Итак, если нужно перелэйбливаем диск и удаляем ненужные разделы.

Создаем слайс 0 размером с весь диск:
Читать полностью »

Процедура измения размера раздела подкачки на ZFS подробно описана в документации, за исключением одного момента, который может в определенной ситуации стать фатальным для файловой системы.
И так порядок действий по документации:

# zfs list rpool/swap
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool/swap    2.066G   122G    16K  -
# swap -d /dev/zvol/dsk/rpool/swap
# zfs set volsize=96G rpool/swap
# swap -a /dev/zvol/dsk/rpool/swap
# zfs list rpool/swap
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool/swap    2.066G   122G    16K  -

Читать полностью »

В продолжение этой заметки — та же задача, для x86-й версии соляриса.

Идеология немного другая — вначале создаём MBR-раздел на сыром диске,  и уже в нём нарезаем привычные слайсы.

1. Создаём раздел с помощью fdisk. Raw-устройство в формате cxtxdxpx:

fdisk -B /dev/rdsk/c0t0d0p0

2. Создаём слайс(ы) с помощью format, либо копируем их посредством fmthard. В качестве аргументов нужно уже использовать формат cxtxdxsx:

echo label | format /dev/rdsk/c0t0d0s2
prtvtoc /dev/rdsk/c0t0d0s4 | fmthard -s - /dev/rdsk/c1t0d0s4

7zip в Solaris

20.08.2010

Оказывается, что помимо стандартных compress, zip, gzip ,bzip2 в Solaris 10 входит еще и 7zip, что не может не радовать.  Chapter 4 What’s New in the Solaris 10 5/08 Release

# 7z -?

7-Zip 4.55 beta Copyright (c) 1999-2007 Igor Pavlov 2007-09-05
p7zip Version 4.55 (locale=C,Utf16=off,HugeFiles=on,256 CPUs)


Читать полностью »

То что в предыдущих версия Solaris запускалось из /etc/init.d — /etc/rc?.d, в Solaris 10 устанавливается и управляется как службы (SMF — Service Management Facility)
Как быстро создать свою службу, без того, чтобы перерыть кучу документации ?
Две небольшие инструкции, в которых все очень подробно описано:

Для создания SMF конфига манифеста можно воспользоваться шаблонами из вышеприведенных источников, а можно воспользоваться
Читать полностью »

После добавления новых дисков в Solaris их нужно пролейблить (пример). Обычно это делают руками в команде format, но если дисков много, то это первращается в гемор. Итак, быстрый метод:


# devfsadm
# echo label > /tmp/cmd.txt
# echo quit >> /tmp/cmd.txt
# for i in /dev/rdsk/*s2; do format -f /tmp/cmd.txt $i; done

UPDATE 20100728
Самый простой и быстрый способ:
for i in /dev/rdsk/*s2 ;do echo label | format $i ;done

Ссылки
Первоисточник: Labeling large number of LUNs in Solaris
man format

ssd vs cXtXdX

09.06.2010

Solaris в логах иногда оставляет сообщения, типа
Jun 22 04:07:11
midframe scsi: [ID 799468 kern.info] ssd251 at scsi_vhci0: name g600015d000230b000000000000001707, bus address g600015d000230b000000000000001707

ссылающиеся на ssd имя диска (или на sd, или dad). Как найти соответсвие между экземпляром драйвера и путем, определяемым через cXtXdX ?
Написал для этого небольшой скрипт:
$ ./whatdisk.pl
Device Driver Device SN Device ID
c1t0d0 ssd0 0744BB20JC id1,ssd@n5000cca004141e9c
c1t1d0 ssd1 0816S52E4D id1,ssd@n2000001d38707617
c1t3d0 ssd3 062244LX6L id1,ssd@n20000014c3d9c52d
c1t5d0 ssd4 062244LNCF id1,ssd@n20000014c3d9c1e5
c1t2d0 ssd5 062244LQ4W id1,ssd@n20000014c3d9caa1

Закачать whatdisk.pl

Ссылки в тему:
Немного об именах дисковых устройств в Solaris
man iostat
man sd