Архіви категорій: Linux

[Linux/Solaris] Переносимо Linux у VirtualBox під Solaris

Установка VirtualBox під Solaris не відрізняється складністю: скачуємо пакет і встановлюємо:

# wget https://... && pkgadd -d <pkg_name.pkg>

Також встановлюємо extension pack (інакше VRDE не запрацює і видасть помилку), який скачуємо з сайту virtualbox

VRDE: VirtualBox Remote Desktop Extension is not available.

# VBoxManage extpack install /opt/VirtualBox/Oracle_VM_VirtualBox_Extension_Pack-7.0.8.vbox-extpack 

Читати далі

[Linux] Grub features error

Всі помилки в даній статті зʼявляються, якщо раніше розділ оброблявся через e2fsck/tune2fs новою версією (до 1.46 включно), а потім диск використовується на старому grub. Це відомий bug. Отже, у кожної ФС є так звані features, які час від часу додаються і на старих версіях grub можуть працювати некоректно чи бути відсутні.

Читати далі

[k3s] couldn’t get resource list for metrics.k8s.io/v1beta1: the server is currently unable to handle the request

Дана помилка достатньо популярна, яка в 99% вирішується, або через встановлення hostNetwork enabled = true або додаванням kubelet-insecure-tls в маніфест. Але, якщо це не допомагає, то треба перевстановити k3s ось так:

# curl -sfL https://get.k3s.io | sh -s - --docker
і, якщо і це не допомогло, тоді спробувати задати явно IP/node-name:
# curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--node-name data-node1.net --node-ip 10.187.15.43" sh -

[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, то у коді є примітка

Читати далі

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

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

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

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

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

Читати далі

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]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] Sip via NAT

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

Читати далі