Был один сервер и на нём, в зеркальном пуле вывалился один из дисков. В момент замены и процесса перестроения вылетает второй диск. Немного не штатная ситуация, но я дождался окончания перестроения, удалил файлы, на которые ругался пул, сделал ему scrub, ошибки с диска пропали, но пул всё равно в состоянии degraded (так как диск второй вылетел). Выключаю сервер, меняю диск и тут на тебе: не грузится (не найдет загрузочный диск).
Категорія: Solaris
[Solaris] Быстрая правка pkg-пакета
Если пакет в формате pkg.
Распаковываем пакет в папку test
$ pkgtrans mysql-utilities-commercial-1.6.5-solaris11.pkg test/
Внутри пакета находится папка reloc с иерархическим содержимым файлов пакета, файл pkginfo с описанием пакета и pkgmap – файлом, и манифестом pkgmap.
[Solaris] awk + regexp
Столкнулся с тем, что под Solaris awk не понимает нормально regular expressions. К примеру, квантор повторения {1,3} не работает. После гугления нашёл заметку:
The default awk on Solaris is old, broken awk which should never be used by anyone for any reason. nawk is much better than /usr/bin/awk but is still a very old, non-POSIX awk, and so does not support RE intervals. Almost any other awk will work. On Solaris if you don’t have and can’t install GNU awk then use /usr/xpg4/bin/awk as it’s very close to POSIX compliant and does support RE intervals.
В итоге, заработало в такой конструкции (gawk (gnu awk) + опция posix):
echo "test 1.1.1.1" | gawk --posix '{if ($2 !~ /^127.0.0.1/ && $2 ~ /^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]/) print $2 }'
[Solaris] DCE cache BUG
Симптомы: увеличение время ответа, рост ping’a. Значение DCE растёт:
$ netstat -nd|wc -l
6335789
$ netstat -nd|wc -l
6335790
Исправили в SRU 11.3.17.5.0
Начиная с SRU 11.3.22 rpool/VARSHARE/zones не монтируется автоматически при установке ОС. Oracle говорит следующее:
If zonepath is not specified when creating Oracle Solaris 11 zones, the zoneadm install command will fail.
Но у меня даже с полным указанием zonepath тоже не работало. Решение от Oracl’a:
# zfs set canmount=on rpool/VARSHARE/zones
# zfs mount rpool/VARSHARE/zones
NUMA в Solaris
Что бы включить использования NUMA ищем опцию в биосе “node interleaving” (для Dell-серверов находится в разделе Memory) и выставляем её в Disabled (по умолчанию в Dell она как раз disabled). Значение же Enable отключает использование Numa. Аналогично нужно отключить опцию Alternate RTID (Requestor Transaction ID) (для Dell-серверов находится в разделе Processor) и выставляем её в Disabled (по умолчанию в Dell она как раз disabled)
/usr/lib/acct/fwtmp < /var/adm/wtmpx
[Solaris] grub password
– Get encrypted password using grub command.
# /boot/grub/bin/grub
grub> md5crypt
Password: ********
Encrypted: $1$0igLM0$4m3eSYgUSzmE4GXHoXZIr0
grub> quit
Ситуация выглядит крайне печально, но это не про ZFS. Даже если у вас такая ситуация случилась, просто дождитесь окончания resilvering’a и дальше можно следовать за подсказками из статьи. И так, после окончания resilvering’a пул перешёл в состояние suspended:
Узнаём класс, установленный по умолчанию, а так же список используемых (именно используемых, а не доступных) классов:
$ priocntl -d TIME SHARING PROCESSES: PID[/LWP] TSUPRILIM TSUPRI 558743 0 0 $ dispadmin -l CONFIGURED CLASSES ================== SYS (System Class) TS (Time Sharing) SDC (System Duty-Cycle Class) FX (Fixed Priority)
Как видим, по умолчанию используется TS.