Категорії
Misc, staff, other Solaris

[Solaris] pkg.sysrepo socket.timeout: timed out

Ось повний текст помилки

[ 2023 Mar 22 01:00:54 Executing refresh method ("/lib/svc/method/svc-pkg-sysrepo refresh"). ]
Traceback (most recent call last):
  File "/usr/lib/pkg.sysrepo", line 978, in handle_errors
    __ret = func(*args, **kwargs)
  File "/usr/lib/pkg.sysrepo", line 958, in main_func
    http_proxy=http_proxy, https_proxy=https_proxy)
  File "/usr/lib/pkg.sysrepo", line 861, in refresh_conf
    http_timeout, api_inst.root)
  File "/usr/lib/pkg.sysrepo", line 521, in _get_publisher_info
    http_timeout)
  File "/usr/lib/pkg.sysrepo", line 267, in _follow_redirects
    http_timeout)
  File "/usr/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/usr/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.7/urllib/request.py", line 1378, in http_open
    return self.do_open(http.client.HTTPConnection, req)
  File "/usr/lib/python3.7/urllib/request.py", line 1353, in do_open
    r = h.getresponse()
  File "/usr/lib/python3.7/http/client.py", line 1373, in getresponse
    response.begin()
  File "/usr/lib/python3.7/http/client.py", line 319, in begin
    version, status, reason = self._read_status()
  File "/usr/lib/python3.7/http/client.py", line 280, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "/usr/lib/python3.7/socket.py", line 589, in readinto
    return self._sock.recv_into(b)
socket.timeout: timed out
Категорії
Misc, staff, other Solaris WWW

[Nginx] Змушуємо працювати openssl-3 з ключами 1024 біт

Проблема виглядає наступним чином: є зібраний nginx з openssl-3, але є старі клієнтські сертифікати з ключам 1024 біта і відповідно, стандартним чином воно не працює, бо для openssl-3 ключ повинен бути мінімум 2048 біт і маємо помилку:

"FAILED:CA certificate key too weak"

Рішення просте – CipherString = DEFAULT@SECLEVEL=0, але не хочеться ламати все інше на цьому хості, тому просто так вставити це в /etc/ssl/openssl.cnf не можна.

Виявляється, можна через ENV в nginx передавати OPENSSL_CONF, де вказати шлях до кастомного файлу openssl.cnf.

Категорії
Misc, staff, other Solaris

[Solaris] The kernel device tree was changing too frequently

Дана помилка зʼявилася після оновлення і наразі питання відкрите, як правильно її вирішити.

В даній статті буде показано спосіб, як “замʼютити” дану помилку, бо інакше кожну хвилину в лог буде писати

SUNW-MSG-ID: FMD-8000-GN, TYPE: Alert, VER: 1, SEVERITY: Major
EVENT-TIME: Wed Feb 7 10:09:39 UTC 2024
PLATFORM: SSG-5049P-E1CR45L, CSN: A313853X0400066, HOSTNAME: mailserver.domain.com
SOURCE: software-diagnosis, REV: 0.2
EVENT-ID: 185c1062-7deb-43c1-a5de-d02f0e95051e
DESC: The kernel device tree was changing too frequently for the fault management daemon to form a stable topology snapshot.
AUTO-RESPONSE: None.
IMPACT: This may temporarily affect the fault management daemon's ability to diagnose or repair faults in the part of the device tree that is unstable.
REC-ACTION: This alert should resolve itself automatically once the underlying kernel device tree has stabilized.
FRU-LOCATION:

Пробуємо обнулити і дивимося:

# fmstat | grep software-diagnosis
software-diagnosis          1193       0  0.0    0.9   0   0    10     0  66.6K    26K
# fmadm reset software-diagnosis
fmadm: software-diagnosis module has been reset
# fmstat | grep software-diagnosis
software-diagnosis             2       0  0.0    0.0   0   0     0     0    368      0

Якщо це не допомагає, тоді примусово вивантажуємо модуль software-diagnosis:

# fmadm unload software-diagnosis
Категорії
Misc, staff, other Solaris Virtualization

VBoxManage: warning: Interface “vboxnet0” doesn’t seem to exist

Дана помилка виникає на VirtualBox 7.2.X, причому на 7.0.Х все працює нормально. Отже, розберемося, чому так відбувається і як це виправити.

# VBoxManage modifyvm mincss-pdf --nic1 hostonly --hostonlyadapter1 vboxnet0
VBoxManage: warning: Interface "vboxnet0" doesn't seem to exist

# VBoxManage list hostonlyifs
#

А далі починається найцікавіше:

Категорії
FreeBSD Linux Misc, staff, other Solaris

[ZFS] Import broken pool

Маємо наступну ситуацію:

root@solaris:~# zpool import -f -N -F 9663859789121603598 sata_pool
cannot import 'rpool' as 'sata_pool': one or more devices is currently unavailable
root@solaris:~# zpool import -f -N -F -o readonly=on 9663859789121603598 sata_pool
cannot import 'rpool' as 'sata_pool': one or more devices is currently unavailable
root@solaris:~# zpool import
    pool: rpool
      id: 9663859789121603598
   state: UNAVAIL
  status: One or more devices are missing.  There are insufficient
        replicas for the pool to continue functioning.
  action: The pool cannot be imported. Connect the missing
        device(s) and try again.
     see: http://support.oracle.com/msg/ZFS-8000-6X
    scan: resilvered 33.2G in 9m23s with 0 errors on Fri Oct  3 10:17:14 2025
  config:
 
        NAME        STATE
        root        UNAVAIL
          mirror-0  DEGRADED
            c1t1d0  ONLINE
            c1t0d0  UNAVAIL

Категорії
FreeBSD Hardware Linux Misc, staff, other Solaris

Підсвітити порт/слот при заміні диску

Якщо у вас сервер, який не дозволяє через iDRAC/IPMI підсвічували диски для заміни, то ця стаття буде вам корисна. Вашій увазі пропонується декілька варіантів утиліт під різні ОС.

Категорії
FreeBSD Misc, staff, other Solaris

[Dtrace] curpsinfo->pr_psargs

Для чого взагалі ця конструкція? А для того, щоб визначити аргументи з якими запускається програма. Це буває дуже корисно. Так от, є деякі нюанси та відмінності в роботі на різних ОС.

Ось простий приклад використання:

#!/usr/sbin/dtrace -s
#pragma D option quiet
proc:::exec-success
{
     printf("%s", curpsinfo->pr_psargs);
}

Категорії
FreeBSD Linux Misc, staff, other OpenBSD Solaris

resolv.conf: деякі цікаві опції

Формат використання опцій у /etc/resolv.conf:

options option ...

Примусові запити через TCP (встановлюється флаг RES_USEVC в _res.options).

Для цього використовуємо такі опції

  • usevc (FreeBSD)
  • tcp (OpenBSD)
  • usevc/use-vc (Linux), доступно з glibc 2.14
  • usevc/use-vc (Solaris), встановлюється як property config/options в сервісі network/dns/client, доступно з 11.4 SRU 66

Категорії
FreeBSD Security Solaris

[pf] Fallback правила

Нещодавно дізнався про fallback правила для файервола PF. Але, це більше залежить від конкретної ОС. Серед тих ОС які підтримують PF і з якими я маю справу лише FreeBSD і Solaris мають такий функціонал.

Що ж таке fallback rules? Це альтернативний набір правил, який буде застосований, якщо основний конфіг буде мати помилку і pf не зможе його застосувати.

Категорії
Misc, staff, other Solaris

[Solaris] di_cro_init() failed

Дана помилка означає, що побилася база CRO (інформація про диски, шассі, експандери,…). Рекомендація від oracle

# pkg fix system/fault-management
# svcadm restart svc:/system/fmd:default

не завжди допомагає. Мені – ні разу не допомогло, тому довелося шукати інший шлях.

Якщо є файл /var/fm/fmd/topo/latest/cro_db.old то копіюємо в /var/fm/fmd/topo/latest/cro_db і пробуємо.

Якщо немає, тоді робимо symlink з іменем latest із найновішого (або будь-якого іншого) UUID в папці /var/fm/fmd/topo на latest.

Якщо раптом немає жодного UUID в /var/fm/fmd/topo немає, то можна скопіювати зі схожого серверу.

В самому кінці зробити

# svcadm restart svc:/system/fmd:default

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP