ΠΠ°ΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ Π½Π΅ΠΏΡΠΈΡΡΠ½ΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ, ΡΠΎ ΠΎΠ½Π° ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄ΡΡ. ΠΠ°Π²Π΅ΡΠ½ΠΎΠ΅, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±ΡΠ»ΠΈ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π΄Π° ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π±ΡΠ» ΡΡΡΡΡ ΡΠ²Π΅ΠΆΠΈΠΉ Π²Π°ΠΆΠ½ΡΠΉ ΡΠ°ΠΉΠ», ΠΈΠ»ΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π±ΡΠ» Π²ΡΠ΄Π΅Π»Π΅Π½ ΠΈ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ ΡΠ΅ΠΊΡΡ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅.
ΠΡΠ»ΠΈ Π²Ρ β Ρ ΠΎΡΡΠ΅Ρ ΠΈΠ»ΠΈ Π²Π»Π°Π΄Π΅Π»Π΅Ρ ΡΠ°ΠΉΡΠ°, ΡΠΎ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡ ΡΠΎ Π²Π·Π»ΠΎΠΌΠ°ΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ Π°ΠΊΠΊΠ°ΡΠ½ΡΠΎΠ² ΠΈΠ»ΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ°. Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π²Π°ΠΆΠ½ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΡΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ, Π½Π°ΠΉΡΠΈ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ.
ΠΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° NILFS2.
ΠΠ½Π° ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΡΠ΄ΡΠ΅ Linux, Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 2.6.30.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ Π΄Π°Π½Π½ΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΎΠ½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ: Π²Ρ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π°Π·Π°Π΄ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊΠΎΠΉ ΠΎΠ½Π° Π±ΡΠ»Π° Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°Π·Π°Π΄.
ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Cron-ΡΠΊΡΠΈΠΏΡΡ, Π΄Π΅Π»Π°ΡΡ ΡΠ½Π΅ΠΏΡΠΎΡΡ ΠΈ Ρ.ΠΏ. Π€Π°ΠΉΠ»ΠΎΠ²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° NILFS2 Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ Π²ΡΡ ΡΠ°ΠΌΠ°. ΠΠ½Π° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΡΠ°ΡΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΈΡΠ΅Ρ Π² Π½ΠΎΠ²ΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π΄ΠΈΡΠΊΠ°, Π΅ΡΠ»ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°. Π ΠΏΠΎΠ»Π½ΠΎΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠΌ Copy-on-Write.
Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, Π»ΡΠ±ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° Π²Π»Π΅ΡΡΡ Π·Π° ΡΠΎΠ±ΠΎΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ½ΠΈΠΌΠΊΠ° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ Π€Π‘ ΠΊΠ°ΠΊ ΠΌΠ°ΡΠΈΠ½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΎΡΠΌΠ°ΡΡΠ²Π°ΡΡ Π½Π°Π·Π°Π΄ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΡΡΠΎΡΠΈΡ
NILFS2 Π±ΡΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° Π² Π½Π΅Π΄ΡΠ°Ρ
ΠΠ»Ρ ΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅Π½ΡΠ½ΠΎ ΠΎΠ½Π° ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»Π°ΡΡ β Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½Π°Ρ Π€Π‘, Ρ Π΅Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΠΎΠΌ βΠΌΠ°ΡΠΈΠ½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈβ ΠΈΠ΄Π΅Π°Π»ΡΠ½Π° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , Π² ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠΎΠΊΠΎΠ²ΡΡΡΡΡΡΡ ΡΠΏΠ΅ΡΡΠ»ΡΠΆΠ±Π°ΠΌ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΠΈΠ³ΡΠ°ΡΡ Π²ΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ Π‘ΠΠ‘, Π΅ΠΌΠ΅ΠΉΠ»ΠΎΠ² ΠΈ Ρ.ΠΏβ¦
NILFS2 ΡΠ°ΠΊΠΆΠ΅, ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ, ΠΎΡΠ΅Π½Ρ ΡΠ΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠ»ΡΠΆΠ± Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠ΅ ΠΏΠΈΡΡΠΌΠ° Π² ΠΏΠΎΡΡΠΎΠ²ΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π²ΡΠΊΡΡΡΡ ΠΊΠΎΡΡΠΊΠΈ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ ΠΈΡ Π·Π°ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°ΡΡ, ΡΠ΄Π°Π»ΠΈΠ² ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΡΠ²ΠΎΠΈ ΡΠ°ΠΉΠ»Ρ.
ΠΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ Π²ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΊΠΈΠ Linux Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ
(Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠ΄Π° ΠΈ ΡΡΠΎΠΈΡ ΡΡΠ°Π²ΠΈΡΡ NILFS2 Π΄Π»Ρ ΡΠ΅Π»Π΅ΠΉ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ) Π΄Π»Ρ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠΎΠ²ΡΡ
ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ Π΅-ΠΌΠ΅ΠΉΠ»ΠΎΠ². Π’Π°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΠΎΡΠΌΠ°Ρ
ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΏΠΎΡΡΠΎΠ²ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠΎ NILFS2 Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΡΠ½ΡΠΉ Ρ ΡΠΎΠ½ΠΎΠΌΠ΅ΡΡΠ°ΠΆ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π±Π°Π·Ρ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±Π°Π·Ρ Π½Π° Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΡΠΈΡ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ². Π Π΄Π°Π»ΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΠ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΠΎ Π² Π½Π΅ΠΉ Π±ΡΠ»ΠΎ Π½Π° ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈβ¦
ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ-ΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ. Π’ΠΎ Π»ΠΈ ΠΏΡΠ°Π²ΠΈΡΠ΅Π»ΡΡΡΠ²ΠΎ Π―ΠΏΠΎΠ½ΠΈΠΈ ΠΏΠ΅ΡΠ΅Π΄ΡΠΌΠ°Π»ΠΎ Π·Π° Π²ΡΠ΅ΠΌΠΈ ΡΠ»Π΅Π΄ΠΈΡΡ (Π°-Π»Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏ Π―ΡΠΎΠ²ΠΎΠΉ), ΡΠΎ Π»ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ NILFS2 Π½Π° ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΡ HDD ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ Π½ΠΈΠΆΠ΅ ΠΏΠ»ΠΈΠ½ΡΡΡΠ°, ΠΈ NILFS2 Π±ΡΠ»Π° Π²ΡΠΏΡΡΠ΅Π½Π° ΠΏΠΎΠ΄ GPL Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ ΠΈ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎ Π²ΠΎΡΠ»Π° Π² ΡΠ΄ΡΠΎ Linux, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΡΠΎΠ±ΡΡ ΠΏΡΠ΅ΡΠ΅Π½Π·ΠΈΠΉ ΠΊ ΠΊΠΎΠ΄Ρ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠΌΡ Π²ΡΡΠΎΠΊΠΎΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠΏΠΎΠ½ΡΠ°ΠΌΠΈ, Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ΄ΡΠ° Linux Π½Π΅ Π±ΡΠ»ΠΎ.
ΠΠ° ΡΡΠΎ ΠΏΠΎΡ ΠΎΠΆΠ° NILFS2?
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ: Π½Π° ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°: Π½Π° ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π±ΡΡΠ΅Ρ. Π€Π°ΠΉΠ»ΠΎΠ²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠΏΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΈΡ Π² ΠΊΡΡΠΎΠΊ ΡΠ°Π²Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 8 ΠΠ (2000 * 4096, Π³Π΄Π΅ 2000 β ΡΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² Π±Π»ΠΎΠΊΠ΅, Π° 4096 β ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠ°ΠΌΡΡΠΈ). ΠΠ΅ΡΡ Π΄ΠΈΡΠΊ ΠΏΠΎΠ΄Π΅Π»Π΅Π½ Π½Π° ΡΠ°ΠΊΠΈΠ΅ ΡΠ°Π½ΠΊΠΈ. ΠΠ°ΠΏΠΈΡΡ ΠΈΠ΄ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ. ΠΠΎΠ³Π΄Π° Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ, ΡΠΎ ΡΠ°ΠΌΡΠ΅ ΡΡΠ°ΡΡΠ΅ ΡΠ½ΠΈΠΌΠΊΠΈ ΡΠ΄Π°Π»ΡΡΡΡΡ, Π° ΡΠ°Π½ΠΊΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠ»ΡΡΠΊΠΈ NILFS2
- ΠΠ΅ΡΡΠΈΠΎΠ½Π½ΠΎΡΡΡ!!!
- ΠΡΠΎΡΠ΅Π΄ΡΡΠ° Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π€Π‘ ΠΏΠΎΡΠ»Π΅ ΡΠ±ΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠ½Π°: ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΈΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ°Π½ΠΊ, ΠΈΠΌΠ΅ΡΡΠΈΠΉ Π²Π΅ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΡ ΡΡΠΌΠΌΡ, ΠΈ Π½Π° Π½Π΅Π³ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΡΠΏΠ΅ΡΠ±Π»ΠΎΠΊ. ΠΡΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ.
- Π ΡΠ²ΡΠ·ΠΈ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Π·Π°ΠΏΠΈΡΡ Π²ΡΠ΅Π³Π΄Π° ΠΈΠ΄ΡΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ, ΡΠΎ:
- ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Ρ ΠΎΡΠΎΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π½Π° SSD, Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ.
- NILFS2 ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ ΡΠ΅ΡΡΡΡ SSD, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΡΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΊΡΠΎΡ ΠΌΡΠ»ΡΡΠΈΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ.
Π’ΠΎΡΠ½Π΅Π΅ Π³ΠΎΠ²ΠΎΡΡ, ΠΎΠ½ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 2.ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠΈ Π²ΡΠ΅Π³ΠΎ Π΄ΠΈΡΠΊΠ° NILFS2 Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² Π½ΠΎΠ²ΡΠ΅ ΠΊΡΡΠΊΠΈ (ΡΠ°Π½ΠΊΠΈ).ΠΡΠ»ΠΈ ΠΌΡ ΠΈΠΌΠ΅Π΅ΠΌ Π½Π° Π΄ΠΈΡΠΊΠ΅ 10% Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΡ ΡΡ Π΄Π°Π½Π½ΡΡ , ΡΠΎ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ 10% ΠΏΡΠΈΡΠΎΡΡ Π·Π°ΠΏΠΈΡΠΈ ΠΏΡΠΈ 1 ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠΈ. ΠΡ ΠΈ 50% ΠΏΡΠΈΡΠΎΡΡ ΠΏΡΠΈ 50% Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π° 1 ΠΏΠΎΠ»Π½ΡΡ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡ Π΄ΠΈΡΠΊΠ°.
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ ΡΡΠΈΠ»Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠΈ 2. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎ Ρ ΡΡΡΡΠΎΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²ΡΡ ΠΏΠΈΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ. Π ΡΠ΅Π»ΠΎΠΌ ΠΌΡΠ»ΡΡΠΈΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ Π·Π°ΠΏΠΈΡΠΈ Π±ΡΠ΄Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ Ρ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π€Π‘ Ρ ΡΠ΅ΠΊΡΠΎΡΠΎΠΌ 4096 Π±Π°ΠΉΡ. (ΠΠ° ΠΌΡΡΠ»ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΎ
ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΎΠΌ ).
- ΠΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΠΏΡΠΎΡΡΠΎΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ Π½Π° ΡΠ΄Π°Π»ΡΠ½Π½ΡΡ NILFS2 Π€Π‘
NILFS2 Π΄Π»Ρ /home
Π Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΠ‘, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΏΠ°ΠΏΠΊΠ° /home, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΡΠ°Π½ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. Π Π°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π² ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΡΠ²ΠΎΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
Π ΠΊΡΠΎ, ΠΊΠ°ΠΊ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ, ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΡΡΡΠΈΡ? ΠΠΎΡΡΠΎΠΌΡ, ΠΊΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ, ΡΠ°ΠΌ ΠΠΎΠ³ Π²Π΅Π»Π΅Π» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π° /home NILFS2.
Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, ΡΡΠΎ Ρ ΠΏΠΎΠ²ΡΠ΅ΠΌΠ΅ΡΡΠ½ΡΠΌ ΡΠ°ΡΠΏΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ SSD ΠΌΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π΅ Π²ΠΎΠ»Π½ΠΎΠ²Π°ΡΡΡΡ Π½Π°ΡΡΡΡ ΡΠΈΠ»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΡΠ°Π΄ΠΊΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ CoW ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ.
ΠΠ°, ΡΠ½ΠΈΠΌΠΊΠΈ Π€Π‘ (ΡΠ½Π΅ΠΏΡΠΎΡΡ) ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ ΡΠ°ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈ Π² ZFS ΠΈ BTRFS, Π½ΠΎ Π²ΡΠ΅Π³Π΄Π° Π΅ΡΡΡ ΡΠΈΡΠΊ, ΡΡΠΎ ΠΏΠΎΡΠ΅ΡΡΠ½Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ½ΠΈΠΌΠΊΠ°ΠΌΠΈ. Π ΡΠ½ΠΈΠΌΠΊΠΈ Π΅ΡΡ Π½ΡΠΆΠ½ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ: ΡΠ΄Π°Π»ΡΡΡ ΡΡΠ°ΡΡΠ΅. Π NILFS2 Π²ΡΡ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π±ΡΠΊΠ²Π°Π»ΡΠ½ΠΎ ΠΊΠ°ΠΆΠ΄ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄.
Π― ΡΠΎΠ·Π΄Π°Π» Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΎΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ lvcreate (Π² Π³ΡΡΠΏΠΏΠ΅ ΡΠΎΠΌΠΎΠ² nvme, ΡΠΎΠ½ΠΊΠΈΠΉ ΠΏΡΠ» thin). Π― ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° ΡΠΎΠΌΠ΅ lvm, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»Π΅Π³ΠΊΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΈΠΌΠ΅ΡΡ 50% ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π½Π° Π΄ΠΈΡΠΊΠ΅ Ρ NILFS2 Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎΠΉ Π³Π»ΡΠ±ΠΈΠ½Ρ Π²Π΅ΡΡΠΈΠΎΠ½Π½ΠΎΡΡΠΈ.
lvcreate -V10G -T nvme/thin -n home
ΠΈ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π» Π΅Π³ΠΎ Π² NILFS2:
mkfs.nilfs2 -L nvme_home /dev/nvme/home
mkfs.nilfs2 (nilfs-utils 2.1.5)
Start writing file system initial data to the device
Β Β Β Β Β Β Blocksize:4096Β Device:/dev/nvme/home1Β Device Size:10737418240
File system initialization succeeded !!
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ /home.
Π― ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π» ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°, Π΄ΠΎ Π²Ρ ΠΎΠ΄Π° Π² ΡΠ²ΠΎΠΉ Π°ΠΊΠΊΠ°ΡΠ½Ρ, ΠΈΠ·-ΠΏΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ root. ΠΡΠ»ΠΈ Π±Ρ Ρ Π·Π°ΡΡΠ» ΠΏΠΎΠ΄ ΡΠ²ΠΎΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, ΡΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΡΠΊΡΡΠ»ΠΈ Π±Ρ ΡΠΎΠΊΠ΅ΡΡ ΠΈ ΡΠ°ΠΉΠ»Ρ Π² ΠΏΠ°ΠΏΠΊΠ΅ ΠΌΠΎΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ /home/user, ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΎ Π±Ρ ΡΠΈΡΡΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΡΡΡΠ΄Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ. ΠΠ°ΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π΄ΠΎΠΌΠ°ΡΠ½ΡΡ ΠΏΠ°ΠΏΠΊΠ° Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ root ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎ ΠΏΡΡΠΈ /root, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π° ΡΠ°Π·Π΄Π΅Π»Π΅ /home Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π½Π΅ ΠΎΡΠΊΡΠΎΡΡΡΡ.
mkdir /mnt/newhome
mount -t nilfs2 /dev/nvme/home /mnt/newhome
cp -a /home/. /mnt/newhome
ΠΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠΌ.
ΠΠ°Π»Π΅Π΅ ΠΏΡΠ°Π²ΠΈΠΌ /etc/fstab, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠ½ΡΠΈΡΡΠ΅ΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π΄Π»Ρ /home, Π½Π°
/dev/disk/by-label/nvme_home /home nilfs2Β Β noatime 0 0
ΠΠΏΡΠΈΡΒ noatime
Π½ΡΠΆΠ½Π° Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ Π½Π΅ ΠΌΠ΅Π½ΡΠ»ΠΎΡΡ atime. ΠΠ°Π»Π΅Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΡ.
ΠΠΈΠ΄Ρ ΡΠ½ΠΈΠΌΠΊΠΎΠ² Π² NILFS2.
ΠΠ±ΡΡΠ½ΡΠΉ ΡΠ½ΠΈΠΌΠΎΠΊ Π±Π΅Π· ΠΈΠΌΠΌΡΠ½ΠΈΡΠ΅ΡΠ° ΠΊ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΠΏΠΎΠΈΠ½Ρ (checkpoint ΠΈΠ»ΠΈ ΡΠΎΡΠΊΠ° Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ).
Π‘Π½ΠΈΠΌΠΎΠΊ Ρ Π·Π°ΡΠΈΡΠΎΠΉ ΠΎΡ Π°Π²ΡΠΎΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ½Π΅ΠΏΡΠΎΡ (snapshot), Π΄Π°Π»Π΅Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠ½ΠΈΠΌΠΎΠΊ.
ΠΡΠΎΡΠΌΠΎΡΡ ΡΠ΅ΠΊΠΏΠΎΠΉΡΠΎΠ² Π΄Π΅Π»Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ lscp
ΠΡΠΎΡΠΌΠΎΡΡ ΡΠ½ΠΈΠΌΠΊΠΎΠ² (ΡΠ½Π΅ΠΏΡΠΎΡΠΎΠ²) lscp -s
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈ ΡΠ°ΠΌΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ½ΠΈΠΌΠΊΠΈ ΠΈ ΡΠ΅ΠΊΠΏΠΎΠΈΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ:
mkcp [-s] ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ
ΠΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅.
NILFS ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ ΡΡΠ°ΡΡΡ ΡΠ½ΠΈΠΌΠΊΠΎΠ² ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Ρ ΡΠ°Π±ΠΎΡΠΎΠΉ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠ²ΡΡ Π€Π‘. ΠΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ.
Π£ΡΡΡΠΎΠ΅Π½ΠΎ Π²ΡΡ ΡΠ°ΠΊ. ΠΠ±ΡΡΠ½ΡΠ΅ ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»Π°Π΅Ρ NILFS2, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΅ΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΄Π°Π»Π΅Π½Ρ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ (ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½ΡΠΈΡΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ nilfs_cleanerd), ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠ΅ΡΠ΅Π΄ ΠΌΠΎΠ½ΡΠ°ΠΆΠΎΠΌ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ ΡΠ΅ΠΊΠΏΠΎΠΈΠ½Ρ Π² ΡΠ½Π΅ΠΏΡΠΎΡ ΠΈΠ»ΠΈ, ΠΏΠΎ-ΡΡΡΡΠΊΠΈ Π³ΠΎΠ²ΠΎΡΡ, Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ½ΠΈΠΌΠΎΠΊ.
chcp ss Π½ΠΎΠΌΠ΅Ρ_ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΠ°
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ½ΠΈΠΌΠΎΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊ:
mount -t nilfs2 -r -o cp=Π½ΠΎΠΌΠ΅Ρ_ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΠ° /dev/nvme/home /mnt/nilfs/Π½ΠΎΠΌΠ΅Ρ_ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΠ°
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΌΡ ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· ΡΠ½ΠΈΠΌΠΊΠ° Π² /home.
Π Π²ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΡΠ½ΠΈΠΌΠ°Π΅ΠΌ ΡΠ»Π°Π³ Π½Π΅ΡΠ΄Π°Π»ΠΈΠΌΠΎΡΡΠΈ ΡΠΎ ΡΠ½ΠΈΠΌΠΊΠ°, ΡΡΠΎΠ±Ρ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ±ΠΎΡΡΠΈΠΊ ΠΌΡΡΠΎΡΠ° ΠΌΠΎΠ³ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅:
chcp cp Π½ΠΎΠΌΠ΅Ρ_ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΠ°
Π£ΡΠΈΠ»ΠΈΡΡ Π΄Π»Ρ NILFS2
Π Π²ΠΎΡ Ρ ΡΡΠΈΠΌ Π±Π΅Π΄Π°. ΠΠ°, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π€Π‘, ΠΌΠ΅Π½ΡΡΡ Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ½-Π»Π°ΠΉΠ½, ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅ΠΉΠΏΠΎΠΈΠ½ΡΠΎΠ², Π΄Π΅Π»Π°ΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΈΡ . ΠΠ°ΠΊΠ΅Ρ nilfs2-utils ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Π΄ΠΆΠ΅Π½ΡΠ΅Π»ΡΠΌΠ΅Π½ΡΠΊΠΈΠΉ Π½Π°Π±ΠΎΡ.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ NTT ΡΠ²Π΅ΡΠ½ΡΠ»Π° ΡΠΈΠ½Π°Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠΎ Π½Π΅Ρ Π±ΡΡΡΡΡΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΡΡΠΈΠ»ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ², Π΄Π΅Π»Π°ΡΡ diff ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ½ΠΈΠΌΠΊΠ°ΠΌΠΈ.
ΠΠΎΡ ΡΡΠΈΠ»ΠΈΡΠ° n2u
Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΎΡ Π²Π°ΠΊΡΡΠΌ Ρ Π½Π°ΠΏΠΈΡΠ°Π»
n2u log filename
ΠΡΠ²ΠΎΠ΄ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ:
CHECKPOINT DATE TIME TYPE SIZE MODE
1787552 2019-11-24 22:08:00 first 7079 cp
1792659 2019-11-25 23:09:05 changed 7081 cp
ΠΠ½Π° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎ Π΄Π»Ρ ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ: ΠΈΡΠ΅Ρ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Π±ΠΈΡΠ΅ΠΊΡΠΈΠΈ, Π±ΡΡΡΡΠΎ ΠΌΠΎΠ½ΡΠΈΡΡΡ ΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°Ρ ΡΠ°ΠΉΠ»/Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² ΡΠ°Π·Π½ΡΡ ΡΠ½ΠΈΠΌΠΊΠ°Ρ .
ΠΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»ΡΡΠ° -cp CP1:CP2
ΠΈΠ»ΠΈ -cp {YEAR-MM-DD}:{YEAR-MM-DD}
.
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΠ°ΠΌΠΈ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ:
n2u diff -r cp1:cp2 filename
ΠΠΎΠΆΠ½ΠΎ Π²ΡΠ²Π΅ΡΡΠΈ Π²ΡΡ Ρ ΡΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ: Π²ΡΠ΅ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΊΠΏΠΎΠΈΠ½ΡΠ°ΠΌΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°/Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ:
n2u blame [-r cp1:cp2] filename
ΠΠ½ΡΠ΅ΡΠ²Π°Π» Π΄Π°Ρ Π² Π² ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ.
ΠΠ»ΠΈΡ ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ
ΠΠ° Π₯Π°Π±ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΏΠ΅ΡΠΎΠ². ΠΡΠΎΡΡ, Π΄ΠΎΠΏΠΈΠ»ΠΈΡΠ΅ NILFS2. Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ, Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ Π±ΡΡΡΡΡΠΉ diff ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π²ΠΈΠ·ΠΈΡΠΌΠΈ, reflink ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ»ΡΡΠΊΠΈ!
Π‘ΡΡΠ»ΠΊΠΈ
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
Π Π°ΡΡΡΠ»ΠΊΠΈ:
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡΠΈ:
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ NILFS2: Ryusuke Konishi, Koji Sato, Naruhiko Kamimura, Seiji Kihara, Yoshiji Amagai, Hisashi Hifumi and Satoshi Moriai. Other major contributors are: Andreas Rohner, Dan McGee, David Arendt, David Smid, dexen deVries, Dmitry Smirnov, Eric Sandeen, Jiro SEKIBA, Matteo Frigo, Hitoshi Mitake, Takashi Iwai, Vyacheslav Dubeyko.
- ΠΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ Amblin Entertainment ΠΈ Universal Pictures Π·Π° ΡΡΠ΄Π΅ΡΠ½ΡΡ ΡΠ΅ΡΠΈΡ ΡΠΈΠ»ΡΠΌΠΎΠ²
Β«ΠΠ°Π·Π°Π΄ Π² Π±ΡΠ΄ΡΡΠ΅Π΅Β» . ΠΠ΅ΡΠ²Π°Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° ΠΏΠΎΡΡΠ° Π²Π·ΡΡΠ° ΠΈΠ· ΡΠΈΠ»ΡΠΌΠ° Β«ΠΠ°Π·Π°Π΄ Π² Π±ΡΠ΄ΡΡΠ΅Π΅ β 3Β». - ΠΠΎΠΌΠΏΠ°Π½ΠΈΠΈ
RUVDS Π·Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π² ΡΠ²ΠΎΠ΅ΠΌ Π±Π»ΠΎΠ³Π΅ Π½Π° Π₯Π°Π±ΡΠ΅.
P.S. ΠΠ°ΠΌΠ΅ΡΠ΅Π½Π½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π½Π°ΠΏΡΠ°Π²Π»ΡΠΉΡΠ΅ Π² Π»ΠΈΡΠΊΡ. ΠΠΎΠ²ΡΡΠ°Ρ Π·Π° ΡΡΠΎ ΠΊΠ°ΡΠΌΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ NILFS2, Π·Π°ΠΊΠ°Π·Π°Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Ρ
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com