Tech Blog
Search titles, article text and code examples. Use multiple words to narrow results.
17 articles found
View all articlesNAT у Linux: від трансляції адрес до iptables і nftables
Навіщо виник NAT, як працюють SNAT, DNAT, masquerading і conntrack. Практичні приклади iptables та nftables, hairpin NAT, CGNAT і трансляція в IPv6.
Bash Scripting Cheatsheet
_targets bash 4 and newer_ 1. Script anatomy and strict mode A bash script is a text file of commands the shell reads top to bottom. What separates a reliable s…
JVM Tools Cheatsheet: javap, jimage та інструменти моніторингу
Усі команди йдуть у складі JDK ( $JAVA_HOME/bin ). Версії наведені для сучасних JDK (11+), деякі ключі можуть відрізнятись між версіями. --- javap — дизасемблер…
IPv4 і підмережі: як працюють маски, CIDR та VLSM
Як визначити межі IPv4-підмережі, підібрати маску за кількістю пристроїв і розподілити адреси за допомогою VLSM. Пояснення на бітах і практичних прикладах.
try-with-resources Java
У Java є звичайний try , а є try-with-resources . На перший погляд вони виглядають майже однаково, і через це легко заплутатися. Але різниця дуже проста: у try-…
`libalternatives` в openSUSE: майбутнє управління альтернативами
Управління декількома версіями одного інструмента - правильний шлях для сучасних дистрибутивів. --- Table of Contents 1. Вступ: навіщо потрібен механізм альтерн…
Control Groups (cgroups) in Linux
cgroups - Control Groups in Linux Table of Contents 1. What Are cgroups? 2. A Brief History 3. Core Concepts and Terminology 4. cgroups v1 Architecture 5. cgrou…
Чому 0.1 + 0.2 не дорівнює 0.3
Як комп'ютер рахує гроші: примітиви, IEEE 754 і чому банки не довіряють float Майже кожен новачок, який написав Hello World і рухається далі, бачить пости в соц…
Two-factor authentication for SSH access to the server
Let's try to set up two-factor authentication (2FA) for SSH access to a server. There are many applications for various devices, both open-source and proprietar…
`update-alternatives` in Linux
Managing multiple versions of the same tool — the right way. --- Table of Contents 1. [What Is update-alternatives ?](#what-is-update-alternatives) 2. How It Wo…
Limit Resources Docker
To limit the resources a Docker container can use, you can set resource constraints when running the container. Here are the key options you can use with docker…
Prometheus: how to set it up over a cup of coffee
Prometheus won't save you from crashes, but it will make sure you learn about the problem _before the client does_. In this article, I will try to describe thre…
How to Discover Files from Previous Commits in Git
Git doesn't just track your current code — it holds the entire history of your project. Every commit is a snapshot you can inspect, compare, or restore from at …
Distrobox
Content: 1. What is Distrobox? 2. Distrobox cheatsheet Distrobox is a powerful containerization tool for Linux that allows you to run different Linux distributi…
Multi-Remote Git
How to Set Up Git to Pull from One Repository but Push to Two Simultaneously A common need for developers is mirroring their work across multiple hosting platfo…
Entropy in Computer Science: From Shannon's Theory to Neural Networks
1. What is entropy and where did it come from in IT The word "entropy" came into computer science from physics — and it's no coincidence. In 1865, Rudolf Clausi…
Fast-Forward Merge
Fast-Forward Merge A fast-forward merge happens when Git can simply move the branch pointer forward because there's a direct linear path between the branches. V…