ΠΠ΅Π½Ρ ΠΠ²Π΅ΡΡΡΡΠΈΡ (Kent Overstreet) ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Bcachefs 1.38.0. ΠΠ΅ΡΡΠΈΡΡΠ° Π²ΠΊΠ»ΡΡΠ²Π° Π΄Π²Π° ΠΏΠ°ΠΊΠ΅ΡΠ°: bcachefs-kernel-dkms Ρ ΠΌΠΎΠ΄ΡΠ» Π½Π° ΡΠ΄ΡΠΎΡΠΎ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° DKMS (Dynamic Kernel Module Support), ΠΈ bcachefs-tools Ρ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠ° ΡΡΠΈΠ»ΠΈΡΠ° bcachefs, ΠΊΠΎΡΡΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ (mkfs), ΠΌΠΎΠ½ΡΠΈΡΠ°Π½Π΅, Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ΠΈ Π·Π° Debian, Ubuntu ΠΈ ΡΠ΅ ΠΎΡΠ°ΠΊΠ²Π°Ρ Π·Π° Arch Linux, Fedora, openSUSE ΠΈ NixOS. DKMS ΠΌΠΎΠ΄ΡΠ»ΡΡ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ΄ΡΠ° Π½Π° Linux, Π·Π°ΠΏΠΎΡΠ²Π°ΠΉΠΊΠΈ ΠΎΡ Π²Π΅ΡΡΠΈΡ 6.16.
ΠΡΠΎΠ΅ΠΊΡΡΡ Bcachefs ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΡΠ΅Π»ΠΈ Π΄Π° ΡΡΡΠ΅ΡΠ°Π΅ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΠΈ Π·Π° Btrfs ΠΈ ZFS, Ρ Π½ΠΈΠ²Π° Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ, Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡ ΠΈ ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡ, ΠΏΡΠΈΡΡΡΠΈ Π½Π° XFS. Bcachefs ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠ°ΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π² Π΅Π΄ΠΈΠ½ ΠΈ ΡΡΡΠΈ Π΄ΡΠ», ΠΌΠ½ΠΎΠ³ΠΎΡΠ»ΠΎΠΉΠ½ΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π° Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ (Π΄ΠΎΠ»Π½ΠΈΡΡ ΡΠ»ΠΎΠΉ Ρ ΡΠ΅ΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Π±ΡΡΠ·ΠΈ SSD, Π° Π³ΠΎΡΠ½ΠΈΡΡ ΡΠ»ΠΎΠΉ Ρ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΡΡΡΡΠ΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ²ΡΡΠ΄ΠΈ Π΄ΠΈΡΠΊΠΎΠ²Π΅), ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ (RAID 1/10), ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅, ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ (ΡΠ΅ΠΆΠΈΠΌΠΈ LZ4, gzip ΠΈ ZSTD), ΠΌΠΈΠ³Π½ΠΎΠ²Π΅Π½ΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ (ΡΠ½Π°ΠΏΡΠΎΡΠΈ), ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° ΡΡΠ΅Π· ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ ΡΡΠΌΠΈ, ΠΊΠΎΠ΄ΠΈ Π·Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΡ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ Π²ΠΈΠ΄ (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ΅ ChaCha20 ΠΈ Poly1305).
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- Π‘ΡΡΡΠΊΡΡΡΠ°ΡΠ° Btree need_discard, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½ΠΈΡΠ΅ Π½Π°Π±ΠΎΡΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅, Π΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π° Π² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ°Π½Π΅ ΠΏΠΎ ΠΏΠΎΡΠ΅Π΄Π΅Π½ Π½ΠΎΠΌΠ΅Ρ ΠΎΡ ΠΆΡΡΠ½Π°Π»Π° Π²ΠΌΠ΅ΡΡΠΎ Π΄Π²ΠΎΠΉΠΊΠ° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ/Π½Π°Π±ΠΎΡ Π±Π»ΠΎΠΊΠΎΠ²Π΅ (device/bucket). Π’Π°Π·ΠΈ ΠΏΡΠΎΠΌΡΠ½Π° ΡΡΠΊΠΎΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΡΡ ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° need_discard ΠΈ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° Π²Π·Π°ΠΈΠΌΠ½Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΏΡΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΠΎΡ ΠΆΡΡΠ½Π°Π»Π° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Ρ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½ Π±ΡΠΎΠΉ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π·Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ.
- ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ ΠΏΠΎ Π·Π°ΠΏΠΈΡ Π² ΠΆΡΡΠ½Π°Π»Π° ΡΠ° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ΅Π½ΠΈ Π² ΠΎΡΠ΄Π΅Π»Π½Π° fifo ΠΎΠΏΠ°ΡΠΊΠ°, Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΈΡΡ Π±ΡΠΎΠΉ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ Π·Π°ΠΏΠΈΡ Π² ΠΆΡΡΠ½Π°Π»Π° Π΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ ΠΎΡ 16 Π½Π° 256, ΠΊΠΎΠ΅ΡΠΎ ΡΡΠΊΠΎΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Ρ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π΅Π½ Π·Π°ΠΏΠΈΡ.
- ΠΠΎΠ½ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Ρ Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ ΡΠ½ΠΈΠΌΠΊΠΈ Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΎ.
ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ ΠΏΡΡΠΊΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° NASty 0.0.3, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·Π²ΠΈΠ²Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° (NAS) Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ ΠΎΠ±ΠΎΡΡΠ΄Π²Π°Π½Π΅. ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ° Π΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½Π° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ½Π° Π±Π°Π·Π° NixOS, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Bcachefs ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΡΠ΅Π· NFS ΠΈ SMB, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΅ΠΊΡΠΏΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π±Π»ΠΎΡΠ½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΡΠ΅Π· iSCSI ΠΈ NVMe-oF. Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠΎ ΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° ΡΡΠ΅Π· ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. Π Π°Π·ΠΌΠ΅ΡΡΡ Π½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΎΠ½Π½ΠΈΡ iso ΠΎΠ±ΡΠ°Π· Π΅ 1.9 GB. Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π°Ρ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ GPLv3. Π£Π΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° TypeScript Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° SvelteKit. ΠΠ²ΠΈΠ³Π°ΡΠ΅Π»ΡΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π΅Π·ΠΈΠΊΠ° Rust.
ΠΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ ΡΠ΅ ΠΈΠ·ΡΠ΅Π³Π»ΡΡ ΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ. Π‘ΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π° Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎ Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π²ΡΡΡΠ°Π½Π΅ ΠΊΡΠΌ ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ. Π ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, snapshots, ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»ΠΈ, Π΄ΠΈΡΠΊΠΎΠ²Π΅, Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΈ ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ Π΄ΠΎΡΡΡΠΏ. ΠΠΌΠ° Π²Π³ΡΠ°Π΄Π΅Π½ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡ ΠΈ Π΅ΠΌΡΠ»Π°ΡΠΈΡ Π½Π° ΡΠ΅ΡΠΌΠΈΠ½Π°Π» Π² ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ Π² Π±ΡΠ°ΡΠ·ΡΡΠ°. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΡΠ²Π°Π½Π΅ Π½Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π² ΡΠ»ΡΡΠ°ΠΉ Π½Π° ΠΏΡΠ΅ΠΊΠΎΠΌΠ΅ΡΠ½ΠΎ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈ Π² ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π½ΠΎΡΠΈΡΠ΅Π»ΠΈΡΠ΅ ΠΈ ΠΏΡΠ΅Π³ΡΡΠ²Π°Π½Π΅.
ΠΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π΄ΠΈ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π±Π°Π·Π° QEMU/KVM ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° k3s runtime (ΡΡΠ΅Π· WebUI Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ Helm chart-ΠΎΠ²Π΅ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° Π΄ΠΎΡΡΡΠΏΠ° ΡΡΠ΅Π· nginx ingress). ΠΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Kubernetes, Π·Π° ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π΄ΡΠ°ΠΉΠ²Π΅Ρ CSI Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΡΡΡΠΎ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ. ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΡΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° ΡΠ΅Π»Π΅ΠΌΠ΅ΡΡΠΈΡ Ρ Π°Π½ΠΎΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π±ΡΠΎΡ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²Π΅ΡΠ΅ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ (ΡΠ΅Π»Π΅ΠΌΠ΅ΡΡΠΈΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½Π° Π² ΡΠ΅ΠΊΡΠΈΡΡΠ° βSettings β Telemetryβ).
ΠΡΠΈΡΠΈΠ½a Π·Π° ΠΈΠ·Π±ΠΎΡΠ° Π½Π° Bcachefs Π²ΠΌΠ΅ΡΡΠΎ ZFS ΡΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅, Π»ΠΈΡΠ΅Π½Π·ΠΈΡ GPL, Π»Π΅ΡΠ΅Π½ ΠΌΠΎΠ΄Π΅Π» Π½Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΏΠΎΠ΄ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ (Π±Π΅Π· ΡΠ»ΠΎΠΆΠ½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ ΠΊΠ°ΡΠΎ dataset, zvol ΠΈ Π²Π»ΠΎΠΆΠ΅Π½ΠΈ pool) ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π½Π°ΠΏΡΠ΅Π΄Π½Π°Π»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠΈ, ΠΊΠ°ΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ΄ΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° ΠΏΠΎ-Π±Π°Π²Π½ΠΈ Π½ΠΎΡΠΈΡΠ΅Π»ΠΈ, ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΡ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈ Π±Π΅Π· Π΄Π° ΡΠ΅ ΡΠΏΠΈΡΠ° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡΠ° Π²ΡΠ² Π²Π΅ΡΡΠΈΡ NASty 0.0.3 Π²ΠΊΠ»ΡΡΠ²Π°Ρ:
- ΠΏΡΠ΅Ρ ΠΎΠ΄ ΠΊΡΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° nix flake Π·Π° ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½Π΅ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ;
- ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° VPN Tailscale Π·Π° ΠΏΡΠ΅Π½ΠΎΡ Π½Π° NVMe-oF Π½Π°Π΄ VPN;
- ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Π½Π° k3s runtime; Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° NUT (Network UPS Tools) Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π° Ρ Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ²Π°Π΅ΠΌΠΎ Π·Π°Ρ ΡΠ°Π½Π²Π°Π½Π΅;
- ΡΠ΅Π± ΠΏΠ°Π½Π΅Π» Π·Π° ΠΏΡΠ΅ΡΠΈΠ·Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° NFS, SMB ΠΈ iSCSI (Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΎΠΏΡΠΈΠΈ Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ Π·Π° Π²Ρ ΠΎΠ΄/ΠΈΠ·Ρ ΠΎΠ΄, ΠΆΡΡΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ ΠΈ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ);
- Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° Bcachefs (ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΡ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ, ΠΈΠ·Π±ΠΎΡ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π° ΡΡΠΌΠ°, ΠΎΠ½Π»Π°ΠΉΠ½ ΡΠ΅Π±Π°Π»Π°Π½ΡΠΈΡΠ°Π½Π΅ ΠΈ Ρ.Π½.);
- ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΊΠ΅Ρ Cachix Π·Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° Π΄ΠΎΡΡΠ°Π²ΠΊΠ°ΡΠ° Π½Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ;
- Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° TLS ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΡΡΠ΅Π· Letβs Encrypt;
- Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠΈΠ»ΠΈΡΠΈΡΠ΅ iotop-c, btop, fwupd, rsync ΠΈ croc.

ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
