ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΡΠΈΠ»ΠΈΡ Util-linux 2.39, Π² ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΎΠ΄ΡΡ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ½ΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Linux-ΡΠ΄ΡΠΎΠΌ ΡΡΠΈΠ»ΠΈΡΡ, ΡΠ°ΠΊ ΠΈ ΡΡΠΈΠ»ΠΈΡΡ ΠΎΠ±ΡΠ΅Π³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΡΡΠΈΠ»ΠΈΡΡ mount/umount, fdisk, hwclock, cal, blkid, fsck/cfdisk/sfdisk, blockdev, chrt, mkfs, ionice, more, renice, su, kill, setsid, login, shutdown, dmesg, lscpu, logger, losetup, setterm, mkswap, swapon, taskset ΠΈ Ρ.ΠΏ.
Π Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ:
- Π ΡΡΠΈΠ»ΠΈΡΠ΅ mount ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ libmount Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ API ΡΠ΄ΡΠ° Linux Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ Ρ ΡΡΡΡΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΡΠ½ ΡΠΎΡΠ΅ΠΊ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ (mount namespaces). Π Π½ΠΎΠ²ΠΎΠΌ API Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ mount() Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Ρ ΡΠ°Π·Π΄Π΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°Π·Π½ΡΡ ΡΡΠ°Π΄ΠΈΠΉ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΡΠΏΠ΅ΡΠ±Π»ΠΎΠΊ, ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± Π€Π‘, ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°ΡΡ, ΠΏΡΠΈΠΊΡΠ΅ΠΏΠΈΡΡ ΠΊ ΡΠΎΡΠΊΠ΅ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ). Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ libmount ΡΠΎ ΡΡΠ°ΡΡΠΌΠΈ ΡΠ΄ΡΠ°ΠΌΠΈ Linux ΠΈ ΡΡΠ°ΡΡΠΌ API Π΄Π»Ρ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π°. ΠΠ»Ρ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ API Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—disable-libmount-mountfd-support».
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ API ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ Π΄Π»Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΡΠΆΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Ρ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ΠΎΠΌ Π² ΡΡΠΈΠ»ΠΈΡΡ mount Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «X-mount.idmap=».
- Π ΡΡΠΈΠ»ΠΈΡΡ mount Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΎΠΏΡΠΈΠΈ: «X-mount.auto-fstypes» Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, «X-mount.{owner,group,mode}» Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ°, Π³ΡΡΠΏΠΏΡ ΠΈ ΡΠ΅ΠΆΠΈΠΌΠ° Π΄ΠΎΡΡΡΠΏΠ° ΠΏΠΎΡΠ»Π΅ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ «rootcontext=@target» Π΄Π»Ρ Π²ΡΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° SELinux Π΄Π»Ρ Π€Π‘. ΠΠ»Ρ ΡΠ»Π°Π³ΠΎΠ² VFS Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° «recursive» (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, «mount -o bind,ro=recursive»).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° blkpr, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°ΡΡ Π±Π»ΠΎΠΊΠΈ Π½Π° Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»ΡΡ SCSI ΠΈΠ»ΠΈ NVMe.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° pipesz Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π±ΡΡΠ΅ΡΠ° Π΄Π»Ρ Π½Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ FIFO.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° waitpid Π΄Π»Ρ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ).
- Π ΡΡΠΈΠ»ΠΈΡΡ renice Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΎΠΏΡΠΈΠΈ «-n» ΠΈ «—relative».
- Π ΡΡΠΈΠ»ΠΈΡΠ΅ blockdev ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ioctl BLKGETDISKSEQ.
- Π ΡΡΠΈΠ»ΠΈΡΡ lsfd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° pidfd ΠΈ ΡΠΎΠΊΠ΅ΡΠΎΠ² AF_NETLINK, AF_PACKET, AF_INET ΠΈ AF_INET6 (/proc/net/*), ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ½Π½ΡΡ ΠΈΠΌΡΠ½ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈΠ· proc/$pid/fd, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ»Π°Π³ΠΎΠ² ΠΈΠ· /proc/$PID/fdinfo/$fd, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «-i» («—inet») Π΄Π»Ρ ΠΏΠΎΠΊΠ°Π·Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ ΡΠΎΠΊΠ΅ΡΠ°Ρ AF_INET ΠΈ AF_INET6.
- Π ΡΡΠΈΠ»ΠΈΡΠ΅ cal ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΡΠ΅Π· terminal-colors.d.
- Π dmesg ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π²ΡΠ²ΠΎΠ΄ Ρ ΡΠΎΡΠ½ΠΎΡΡΡ Π² Π΄ΠΎΠ»ΠΈ ΡΠ΅ΠΊΡΠ½Π΄ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΡΠΈΠΉ «—since» ΠΈ «—until», Π² ΠΎΠΏΡΠΈΠΈ «—level» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΏΡΠ΅ΡΠΈΠΊΡΠ°/ΡΡΡΡΠΈΠΊΡΠ° «+» Π΄Π»Ρ ΠΏΠΎΠΊΠ°Π·Π° Π²ΡΠ΅Ρ ΡΡΠΎΠ²Π½Π΅ΠΉ Ρ Π½ΠΎΠΌΠ΅ΡΠ°ΠΌΠΈ Π±ΠΎΠ»ΡΡΠ΅/ΠΌΠ΅Π½ΡΡΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ.
- Π ΡΡΠΈΠ»ΠΈΡΡ fstrim Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—types» Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠΈΠΏΡ Π€Π‘.
- Π blkid ΠΈ libblkid Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π€Π‘ bcachefs ΠΈ Π²ΠΊΠ»ΡΡΡΠ½ ΡΠ°ΡΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΡ ΡΡΠΌΠΌ Π΄Π»Ρ Π€Π‘ ΠΈ RAID.
- Π ΡΡΠΈΠ»ΠΈΡΡ lsblk Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΎΠΏΡΠΈΠΈ «—nvme» ΠΈ «—virtio» Π΄Π»Ρ ΠΎΡΡΠ΅ΠΈΠ²Π°Π½ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ², ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΡΠΎΠ»Π±ΡΡ ID (udev ID), ID-LINK (udev /dev/disk/by-id), PARTN (Π½ΠΎΠΌΠ΅Ρ ΡΠ°Π·Π΄Π΅Π»Π°) ΠΈ MQ (ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ), ΡΠ»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π³ΠΎΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ².
- Π nsenter Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—env» Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ.
- Π namei Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «-Z» Π΄Π»Ρ ΠΏΠΎΠΊΠ°Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠ² SELinux.
- Π£Π»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Meson.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru