ΠΠ°Π»ΠΈΡΠ½Π° Π΅ ΡΡΠ°Π±ΠΈΠ»Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° Π½Π°Π±ΠΎΡΠ° ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ GNU Coreutils 9.0, ΠΊΠΎΡΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΊΠ°ΡΠΎ sort, cat, chmod, chown, chroot, cp, date, dd, echo, ΠΈΠΌΠ΅ Π½Π° Ρ ΠΎΡΡ, id, ln, ls ΠΈ Π΄Ρ. ΠΠ½Π°ΡΠΈΡΠ΅Π»Π½Π°ΡΠ° ΠΏΡΠΎΠΌΡΠ½Π° Π² Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° Π²Π΅ΡΡΠΈΡΡΠ° ΡΠ΅ Π΄ΡΠ»ΠΆΠΈ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π½ΡΠΊΠΎΠΈ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ.
ΠΠ»ΡΡΠΎΠ²ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ:
- ΠΠΎΠΌΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ cp ΠΈ install ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ° Π² ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ ΠΏΡΠΈ Π·Π°ΠΏΠΈΡ ΠΏΡΠΈ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ioctl ficlone Π·Π° ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ»Π΅Π½ ΠΊΠ»ΠΎΠ½ΠΈΠ½Π³).
- ΠΠΎΠΌΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ cp, install ΠΈ mv ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΈ ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ ΠΏΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΡΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ copy_file_range Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅ ΡΠ°ΠΌΠΎ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° ΡΠ΄ΡΠΎΡΠΎ, Π±Π΅Π· ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΊΡΠΌ ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠ° Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ).
- ΠΠΎΠΌΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ cp, install ΠΈ mv ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΠΎ-ΠΏΡΠΎΡΡΠΎ ΠΈ ΠΏΠΎ-ΠΏΡΠ΅Π½ΠΎΡΠΈΠΌΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ lseek+SEEK_HOLE Π²ΠΌΠ΅ΡΡΠΎ ioctl+FS_IOC_FIEMAP Π·Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠ°Π·Π½ΠΈΠ½ΠΈ Π²ΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π΅.
- ΠΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° wc ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ AVX2, Π·Π° Π΄Π° ΡΡΠΊΠΎΡΠΈ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π±ΡΠΎΡ Π½Π° Π»ΠΈΠ½ΠΈΠΈΡΠ΅. ΠΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° wc ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈ 5 ΠΏΡΡΠΈ.
- ΠΠΏΡΠΈΡΡΠ° "-a" (--algorithm) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΊΡΠΌ ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° cksum Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° Ρ Π΅ΡΠΈΡΠ°Π½Π΅. ΠΠ° Π΄Π° ΡΠ΅ ΡΡΠΊΠΎΡΠΈ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ ΡΡΠΌΠΈ Π² ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° cksum, ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ pclmul, ΠΊΠΎΠ³Π°ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅ΠΆΠΈΠΌΡΡ β--algorithm=crcβ, ΠΊΠΎΠΉΡΠΎ ΡΡΠΊΠΎΡΡΠ²Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡΡΠ° Π΄ΠΎ 8 ΠΏΡΡΠΈ. ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈ Π±Π΅Π· ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° pclmul, crc ΡΠ΅ΠΆΠΈΠΌΡΡ Π΅ 4 ΠΏΡΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·. ΠΡΡΠ°Π½Π°Π»ΠΈΡΠ΅ Ρ Π΅ΡΠΈΡΠ°ΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ (sum, md5sum, b2sum, sha*sum, sm3 ΠΈ Ρ.Π½.) ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ ΡΡΠ΅Π· ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° libcrypto ΡΡΠ½ΠΊΡΠΈΠΈ.
- Π ΠΏΠΎΠΌΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ md5sum, cksum, sha*sum ΠΈ b2sum, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ»Π°Π³Π° β--checkβ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° CRLF ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡ Π² ΠΊΡΠ°Ρ Π½Π° ΡΠ΅Π΄Π° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π°ΡΠ° ΡΡΠΌΠ°. "cksum --check" ΠΎΡΠΈΠ³ΡΡΡΠ²Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° Ρ Π΅ΡΠΈΡΠ°Π½Π΅.
- ΠΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ls Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ»Π° ΠΎΠΏΡΠΈΡ "--sort=width" Π·Π° ΡΠΎΡΡΠΈΡΠ°Π½Π΅ ΠΏΠΎ Π΄ΡΠ»ΠΆΠΈΠ½Π° Π½Π° ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π°, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΎΠΏΡΠΈΡ "--zero" Π·Π° Π·Π°Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π΄ Ρ Π½ΡΠ»Π΅Π² Π·Π½Π°ΠΊ. Π‘ΡΠ°ΡΠΎΡΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΅ Π²ΡΡΠ½Π°ΡΠΎ, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ°Π·Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π²ΠΌΠ΅ΡΡΠΎ Π³ΡΠ΅ΡΠΊΠ° ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ.
- ΠΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° df ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ acfs, coda, fhgfs, gpfs, ibrix, ocfs2 ΠΈ vxfs.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΡΠΈΠΏΠΎΠ²Π΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ βdevmemβ, βexfatβ, βsecretmemβ, βvboxsfβ ΠΈ βzonefsβ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΊΡΠΌ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ stat ΠΈ tail. ΠΠ° βvboxsfβ, Π°Π½ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π² βtail -fβ, Π° Π·Π° ΠΎΡΡΠ°Π½Π°Π»ΠΎΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° inotify.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru