Категорії
Linux

[Linux] GRUB “Some modules may be missing from core image” warning

Дане повідомлення зʼявляється коли є деякі проблеми з встановленням grub. Не зважаючи, що це warning, по суті це error, бо grub не встановлюється повністю. Поради з інтернету наступні

# grub-mkdevicemap -n; grub-install --recheck /dev/sda

але це допомагає не всім. Якщо у вас soft raid md, то у коді є примітка

Категорії
Linux

[Debian] The missing firmware files are: bnx2/bnx2-mips

Дане повідомлення каже, що у вас відсутні драйвери для мережевих карт bnx. Як правило, достатньо встановити відповідні драйвери (у Debian це пакет firmware-bnx2). Чомусь, ці драйвери мають статус non-free і виключені з офіційних дистрибутивів, зокрема в Debian. Як бути? Добре, що є образи з non-free в яких ці драйвери є.

UPD. Починаючи з Debian 12 вони будуть офіційно включені у стандартний ISO.

Категорії
Linux Solaris

View failed services

Нам потрібно отримати лише список сервісів, які з якихось причин не запустилися через помилки

Solaris

svcs -xv

Linux

systemctl --failed

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

Відключаємо Meltdown and Spectre

В даній статті розглянемо відключення цих безпекових методів. Що це таке – написано тут. Відключати я це не рекомендується, але в деяких випадках це треба, враховуючи, що продуктивність може досягати до 30%.

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

outrun: execute a local command using the processing power of another Linux machine

Знайшов нещодавно досить цікавий проект, який дозволяє використовувати потужності віддаленого сервера, не встановлюючи при цьому ПЗ (програмного забезпечення) на ньому.

Припустимо, у вас є якесь ПЗ, але вам не вистачає потужності поточного серверу, але є інший сервер. При цьому, на іншому потужнішому сервері зовсім не треба ставити це ПЗ, достатньо поставити лише outrun:

pip3 install outrun

Які обмеження при використанні:

  • Linux only (насправді, можна ще і BSD, але можуть бути нюанси)
  • підтримка fuse (ось із-за цього і обмеження Linux/BSD)
  • ssh root access (так, бо після запуску на віддаленій машині виконується chroot)

Домашня сторінка

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

[Linux]IPSet + iptables = destroy, create, error

Зіштовхнувся з однією проблемою при використанні iptables разом з ipset, а саме, коли перечитуєш правила, отримуєш помилку:

ipset v7.10: Set cannot be destroyed: it is in use by a kernel component
ipset v7.10: Set cannot be created: set with the same name already exists

Експерементальним шляхом було визначено, що після онулення правил неможливо одразу (мабуть, ще висять у памʼяті) видалити записи у ipset, треба зачекати. Тобто, потрібна от така констукція:

Категорії
Linux PBX (telephony)

[Linux] Sip via NAT

Розглянемо ситуацію, коли сервер asterisk’a знаходиться за NAT’ом і треба зареєструватися у SIP провайдера. В 99% випадів, проблем немає, але інколи, нічого не виходить. Більш детальний аналіз показує, що пакети SIP чомусь не NAT’яться. Чому? Відповідь трохи незвична, якщо ви працювали з іншими unix like системами. Деякі протоколи (FTP, SIP, …) використовують 2 сесії для успішної передачі даних: сигнальна (встановлення зʼєднання) і передачі даних. У інших ОС (файерволах) вам потрібно самостійно опікуватися цими проблемами, які додаткові порти відкрити або як переналаштувати зʼєднання (наприклад, перейти з active на passive режим в FTP). В Linux для цього придумали механізм conntrack (connection tracker), який “зазирає” всередину зʼєднання і дозволяє створити відповідне динамічне правило (насправді це правило треба створити окремо, але там ми не вказуємо конкретні порти, просто вказуємо, що це відноситься до, наприклад, SIP і пакети автоматично будуть проходити). Чи це добре? І так і ні. Чому добре – зрозуміло. Чому ні? Тому що, інколи виникають проблеми, про які сказано на початку статті.

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

[Linux] Tracing: bcc-tools, bpftrace, bpftop

BCC is a toolkit for creating efficient kernel tracing and manipulation programs, and includes several useful tools and examples. It makes use of extended BPF (Berkeley Packet Filters), formally known as eBPF, a new feature that was first added to Linux 3.15. Much of what BCC uses requires Linux 4.1 and above.

bpftrace is a high-level tracing language for Linux enhanced Berkeley Packet Filter (eBPF) available in recent Linux kernels (4.x)

bpftop provides a dynamic real-time view of running eBPF programs. It displays the average runtime, events per second, and estimated total CPU % for each program. It also provides graphical views of these statistics over time. This tool minimizes overhead by enabling performance statistics only while it is active.

Категорії
Linux

[Linux] NAT over PPPoE

Симптомы: часть сайтов открывается, часть – нет. tcpdump показывает нормальное прохождение пакетов в обе стороны. Всему виной PPPoE с его overhead’ом на размер пакета.

Решение простое:

iptables -I FORWARD 1 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Но что оно означает? Оно означает “нормализовать пакет” согласно PMTU, то есть, уменьшить размер MSS так, что бы пакет прошёл от источника к назначению, при этом выбрав наименьший MTU среди всех промежуточных.

Важно! Правило нужно размещать в самом начале.

Категорії
Linux

Debian: история одного обновления

Расскажу об одной, на первый взгляд, странной проблеме. Основная проблема: после обновления с 10 на 11 через некоторое время интерфейс теряет адрес, полученный через DHCP. Откатываешься (это виртуальная машина, поэтому через snapshot’ы такое легко провернуть) обратно на 10-ку – всё работает. Важный момент: такое наблюдается только с серверами у которых DHCP. Так же, на всех серверах (как статических, так и с DHCP) присутствует и другая проблема: после перезагрузки, сервер отвечает на icmp, но ровно 5 минут недоступны вообще никакие сервисы: ssh, http,…

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