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

Limit IOps: ограничиваем дисковые операции

Начну в порядке от самой простой реализации до самой сложной.

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

ERROR Error while accepting connection (kafka.network.Acceptor)

Да, именно с таким сообщением начала падать kafka спустя некоторое время после запуска. Включение режима debug немного увеличило “понятность”


ERROR Error while accepting connection (kafka.network.Acceptor)
java.net.SocketException: Invalid argument
at sun.nio.ch.Net.setIntOption0(Native Method)
at sun.nio.ch.Net.setSocketOption(Net.java:341)
at sun.nio.ch.SocketChannelImpl.setOption(SocketChannelImpl.java:190)
at sun.nio.ch.SocketAdaptor.setBooleanOption(SocketAdaptor.java:271)
at sun.nio.ch.SocketAdaptor.setTcpNoDelay(SocketAdaptor.java:306)
at kafka.network.Acceptor.accept(SocketServer.scala:654)
at kafka.network.Acceptor.run(SocketServer.scala:579)
at java.lang.Thread.run(Thread.java:748)

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

Запуск скрипта (не демона) как сервис

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

  • cron
  • at
  • rc.local

Категорії
Linux Misc, staff, other Routers, GW, Internet

Запускаем Huawei modem

Здесь буду приводить лишь некоторые нюансы, которые являются нестандартными. После вставки модема смотрим его VID:PID:

$ lsusb 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 005: ID 12d1:14db Huawei Technologies Co., Ltd. E353/E3131
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Категорії
FreeBSD Linux Misc, staff, other OpenBSD Solaris

Address Space Layout Randomization (ASLR)

ASLR (англ. address space layout randomization — «рандомизация размещения адресного пространства») — технология, применяемая в операционных системах, при использовании которой случайным образом изменяется расположение в адресном пространстве процесса важных структур данных, а именно образов исполняемого файла, подгружаемых библиотек, кучи и стека.

Категорії
Linux Routers, GW, Internet

[Linux] Разрешаем vpn pptp через nat для локальной сети

Как оказывается, просто включить NAT недостаточно. Более того, недостаточно даже подключить helper через sysctl:

net.netfilter.nf_conntrack_helper=1

В сети пишут, что нужно подгрузить модули (некоторые ещё уточняют, что это нужно было до версии 8.Х включитель, а с 9-ой достаточно просто подключить helper через sysctl, но как оказывается, недостаточно)

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

Добавляем свой самоподписный сертификат в список доверенных корневых

И так, нам нужен собственно сам сертификат в формате PEM, который нужно положить в правильное место:
– Linux: /usr/share/ca-certificates/mozilla
– FreeBSD: /usr/share/certs/trusted
– OpenBSD: /etc/ssl/cert.pem
– Oracle Solaris /etc/certs/CA

Теперь нужно сгенерировать симлинк с именем хеша в папку с сертификатами. Тут есть 2 варианта: использовать утилиту c_rehash (доступна в пакете openssl-perl) или сделать это вручную. Если не хотите ничего сломать и нужно сделать для одного сертификата, то лучше вручную. Делается так:

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

[nginx] listen socket

Ниже будут выдержки цитат из рассылки nginx, которые объясняют простые вещи при открытии/переоткрытии сокета не только в случае nginx’a, а и некоторых общих случаях.

Категорії
Linux

eBPF: трассируем приложения

The Berkeley Packet Filter (BPF) started (article 1992) as a special-purpose virtual machine (register based filter evaluator) for filtering network packets, best known for its use in tcpdump. It is documented in the kernel tree, in the first part of: Documentation/networking/filter.txt

The extended BPF (eBPF) variant has become a universal in-kernel virtual machine, that has hooks all over the kernel. The eBPF instruction set is quite different, see description in section “BPF kernel internals” of Documentation/networking/filter.txt or look at this presentation by Alexei.

eBPF enables programmers to write code which gets executed in kernel space in a more secure and restricted environment. Yet this environment enables them to create tools which otherwise would require writing a new kernel module.

Ссылки на материалы:

https://eax.me/bcc-ebpf/
https://habr.com/ru/post/435142/
https://habr.com/ru/company/otus/blog/436528/

Категорії
Linux

cron, run-parts не выполняют скрипты с расширением

Причём не только с расширением “.sh”, а вообще с любым. Это поведение по умолчанию и при этом задокументировано! Вот выдержка из man’a:

If neither the –lsbsysinit option nor the –regex option is given then the names must consist entirely of upper and lower case letters, digits, underscores, and hyphens.

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