ВыявляСм процСссы с дисковой Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒΡŽ Π² Linux

TL;DR: ΡΡ‚Π°Ρ‚ΡŒΡ рассказываСт ΠΎΠ± ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΌ, быстром ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΌ способС опрСдСлСния Linux-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° диск, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² выявлСнии большой ΠΈΠ»ΠΈ аномально частой Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΡƒΡŽ подсистСму, Π° Ρ‚Π°ΠΊΠΆΠ΅ позволяСт ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы. Π­Ρ‚ΠΎ особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ для SSD Π² ПК, EMMC ΠΈ Flash-памяти Π² ΠΎΠ΄Π½ΠΎΠΏΠ»Π°Ρ‚Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ….
Π’ Ρ…ΠΎΠ΄Π΅ написания ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ запись Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму BTRFS ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ записи 3 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° диск.

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

«Ой, Π΅Ρ€ΡƒΠ½Π΄Π°, ячСйки памяти Π½Π° соврСмСнных SSD Π²Ρ‹ΠΉΠ΄ΡƒΡ‚ ΠΈΠ· строя Ρ‡Π΅Ρ€Π΅Π· дСсятки Π»Π΅Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ использования, Π½Π΅ стоит ΠΎΠ± этом Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ, ΠΈ ΡƒΠΆ Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ swap, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΡƒ профиля Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π½Π° HDDΒ» β€” Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° вопрос ΠΎ надСТности Ρ‚Π²Π΅Ρ€Π΄ΠΎΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»Π΅ΠΉ c Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ β‰ˆ150 TBW. Если ΠΏΡ€ΠΈΠΊΠΈΠ½ΡƒΡ‚ΡŒ, сколько Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠ΅ ПО ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ каТСтся, Ρ‡Ρ‚ΠΎ 10-20 Π“Π‘ Π² сутки β€” ΡƒΠΆΠ΅ большая Ρ†ΠΈΡ„Ρ€Π°, ΠΏΡƒΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ максимум 40 Π“Π‘, ΠΊΡƒΠ΄Π° ΡƒΠΆ большС. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΈΡ… Ρ†ΠΈΡ„Ρ€Π°Ρ… ΠΎΡ‚Π²Π΅Ρ‚ Π²ΠΏΠΎΠ»Π½Π΅ Ρ€Π°Π·ΡƒΠΌΠ΅Π½ β€” Π½ΡƒΠΆΠ½ΠΎ 10 Π»Π΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ количСству пСрСзаписи ячССк, ΠΏΡ€ΠΈ 40 Π“Π‘ записанных Π΄Π°Π½Π½Ρ‹Ρ… Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ.
Однако Π·Π° 6 Π»Π΅Ρ‚ я ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡŒ ΡƒΠΆΠ΅ Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΠΌ SSD: Ρƒ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅Π» ΠΈΠ· строя ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π½Π°Ρ‡Π°Π» ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ячСйками нСсколько Ρ€Π°Π· Π² дСнь, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π»ΠΎΡΡŒ 30-сСкундными Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌΠΈ Π² обслуТивании записи.

ПослС 7 мСсяцСв использования Π½ΠΎΠ²ΠΎΠ³ΠΎ SSD я Ρ€Π΅ΡˆΠΈΠ» ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ количСство записанных Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ ΠΈΡ… сообщаСт сам диск Ρ‡Π΅Ρ€Π΅Π· SMART.
19.7 Π’Π‘.
ВсСго Π·Π° 7 мСсяцСв я использовал 13% ΠΎΡ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ количСства записанных Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΈΡ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ настроСн Π² соотвСтствии с рСкомСндациями ΠΏΠΎ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΈ настройкС Π€Π‘, swap Ρƒ мСня ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, диски Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π½Π° HDD!
Π­Ρ‚ΠΎ аномально большая Ρ†ΠΈΡ„Ρ€Π°, Ρ‚Π°ΠΊΠΈΠΌΠΈ Ρ‚Π΅ΠΌΠΏΠ°ΠΌΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉΠ½Ρ‹ΠΉ TBW Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ Ρ€Π°Π½ΡŒΡˆΠ΅ достиТСния 5-Π»Π΅Ρ‚Π½Π΅Π³ΠΎ срока Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ диска. Π”Π° ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠΎΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎ 93 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚Π° Π² сутки! НуТно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, сколько Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π½Π° диск Π·Π° 10 минут…

Total:
Writes Queued: 24,712, 2,237MiB
Writes Completed: 25,507, 2,237MiB
Write Merges: 58, 5,472KiB

2.2 Π“ΠΈΠ‘, ΠΎ-Π³ΠΎ-Π³ΠΎ!

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ количСства записанных Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° дисковоС устройство

Если вашС устройство ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ S.M.A.R.T. (SSD, EMMC, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Ρ‹Π΅ MicroSD), Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ слСдуСт Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с накопитСля ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ smartctl, skdump ΠΈΠ»ΠΈ mmc (ΠΈΠ· состава mmc-utils).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ smartctl

$ sudo smartctl -a /dev/sdb
smartctl 7.0 2019-03-31 r4903 [x86_64-linux-5.3.11-200.fc30.x86_64] (local build)
Copyright (C) 2002-18, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Samsung based SSDs
Device Model:     Samsung SSD 860 EVO mSATA 250GB
Serial Number:    S41MNC0KA13477K
LU WWN Device Id: 5 002538 e700fa64b
Firmware Version: RVT41B6Q
User Capacity:    250β€―059β€―350β€―016 bytes [250 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      mSATA
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-4 T13/BSR INCITS 529 revision 5
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Tue Nov 19 01:48:50 2019 MSK
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                                        was never started.
                                        Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever 
                                        been run.
Total time to complete Offline 
data collection:                (    0) seconds.
Offline data collection
capabilities:                    (0x53) SMART execute Offline immediate.
                                        Auto Offline data collection on/off support.
                                        Suspend Offline collection upon new
                                        command.
                                        No Offline surface scan supported.
                                        Self-test supported.
                                        No Conveyance Self-test supported.
                                        Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                        power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine 
recommended polling time:        (   2) minutes.
Extended self-test routine
recommended polling time:        (  85) minutes.
SCT capabilities:              (0x003d) SCT Status supported.
                                        SCT Error Recovery Control supported.
                                        SCT Feature Control supported.
                                        SCT Data Table supported.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0032   098   098   000    Old_age   Always       -       5171
 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       459
177 Wear_Leveling_Count     0x0013   096   096   000    Pre-fail  Always       -       62
179 Used_Rsvd_Blk_Cnt_Tot   0x0013   100   100   010    Pre-fail  Always       -       0
181 Program_Fail_Cnt_Total  0x0032   100   100   010    Old_age   Always       -       0
182 Erase_Fail_Count_Total  0x0032   100   100   010    Old_age   Always       -       0
183 Runtime_Bad_Block       0x0013   100   100   010    Pre-fail  Always       -       0
187 Uncorrectable_Error_Cnt 0x0032   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0032   058   039   000    Old_age   Always       -       42
195 ECC_Error_Rate          0x001a   200   200   000    Old_age   Always       -       0
199 CRC_Error_Count         0x003e   100   100   000    Old_age   Always       -       0
235 POR_Recovery_Count      0x0012   099   099   000    Old_age   Always       -       29
241 Total_LBAs_Written      0x0032   099   099   000    Old_age   Always       -       38615215765

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

Мой SSD Ρ…Ρ€Π°Π½ΠΈΡ‚ количСство записанных Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ 241 Total_LBAs_Written, Π² логичСских Π±Π»ΠΎΠΊΠ°Ρ… (LBA), Π° Π½Π΅ Π² Π±Π°ΠΉΡ‚Π°Ρ…. Π Π°Π·ΠΌΠ΅Ρ€ логичСского Π±Π»ΠΎΠΊΠ° Π² ΠΌΠΎΡ‘ΠΌ случаС β€” 512 Π±Π°ΠΉΡ‚ (Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π² Π²Ρ‹Π²ΠΎΠ΄Π΅ smartctl, Π² Sector Size). Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±Π°ΠΉΡ‚Ρ‹, Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π½Π° 512.

38615215765 Γ— 512 Γ· 1000 Γ· 1000 Γ· 1000 Γ· 1000 = 19,770 Π’Π‘
38615215765 Γ— 512 Γ· 1024 Γ· 1024 Γ· 1024 Γ· 1024 = 17,981 Π’ΠΈΠ‘

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° skdump Π½Π° ΠΌΠΎΡ‘ΠΌ SSD пытаСтся ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Total_LBAs_Written ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΏΠΎ-своСму, ΠΈΠ·-Π·Π° Ρ‡Π΅Π³ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 1296217.695 TB, Ρ‡Ρ‚ΠΎ, ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ количСство записываСмой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ устройства, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ btrace ΠΈΠ· состава ΠΏΠ°ΠΊΠ΅Ρ‚Π° blktrace. Она ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‰ΡƒΡŽ статистику Π·Π° всё врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ процСссы ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ (Π² Ρ‚.Ρ‡. ядра), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выполняли запись.

ЗапуститС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π·Π° 10 ΠΌΠΈΠ½ΡƒΡ‚, Π³Π΄Π΅ /dev/sdb β€” ваш диск:

# btrace -w 600 -a write /dev/sdb

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

…
  8,16   0     3253    50.085433192     0  C  WS 125424240 + 64 [0]
  8,16   0     3254    50.085550024     0  C  WS 193577744 + 64 [0]
  8,16   0     3255    50.085685165     0  C  WS 197246976 + 64 [0]
  8,16   0     3256    50.085936852     0  C  WS 125736264 + 128 [0]
  8,16   0     3257    50.086060780     0  C  WS 96261752 + 64 [0]
  8,16   0     3258    50.086195031     0  C  WS 94948640 + 64 [0]
  8,16   0     3259    50.086327355     0  C  WS 124656144 + 64 [0]
  8,16   0     3260    50.086843733 15368  C WSM 310218496 + 32 [0]
  8,16   0     3261    50.086975238   753  A WSM 310218368 + 32 <- (8,20) 291339904
  8,16   0     3262    50.086975560   753  Q WSM 310218368 + 32 [dmcrypt_write/2]
  8,16   0     3263    50.086977345   753  G WSM 310218368 + 32 [dmcrypt_write/2]
  8,16   0     3264    50.086978072   753  I WSM 310218368 + 32 [dmcrypt_write/2]
  8,16   0     3265    50.086979159   753  D WSM 310218368 + 32 [dmcrypt_write/2]
  8,16   0     3266    50.087055685     0  C WSM 310218368 + 32 [0]
  8,16   0     3267    50.087060168   753  A WSM 310218592 + 160 <- (8,20) 291340128
  8,16   0     3268    50.087060367   753  Q WSM 310218592 + 160 [dmcrypt_write/2]
  8,16   0     3269    50.087061242   753  G WSM 310218592 + 160 [dmcrypt_write/2]
  8,16   0     3270    50.087061698   753  I WSM 310218592 + 160 [dmcrypt_write/2]
  8,16   0     3271    50.087062361   753  D WSM 310218592 + 160 [dmcrypt_write/2]
  8,16   0     3272    50.087386179     0  C WSM 310218592 + 160 [0]
  8,16   0     3273    50.087436417 15368  A FWS 0 + 0 <- (253,1) 0
  8,16   0     3274    50.087437471 15368  Q FWS [LS Thread]
  8,16   0     3275    50.087440862 15368  G FWS [LS Thread]
  8,16   0     3276    50.088300047     0  C  WS 0 [0]
  8,16   0     3277    50.088470917   753  A WFSM 18882688 + 8 <- (8,20) 4224
  8,16   0     3278    50.088471091   753  Q WFSM 18882688 + 8 [dmcrypt_write/2]
  8,16   0     3279    50.088471688   753  G WFSM 18882688 + 8 [dmcrypt_write/2]
  8,16   0     3280    50.088474334 32254  D WSM 18882688 + 8 [kworker/0:2H]
  8,16   0     3281    50.088515572     0  C WSM 18882688 + 8 [0]
  8,16   0     3282    50.089229069     0  C WSM 18882688 [0]
CPU0 (8,16):
 Reads Queued:           0,        0KiB  Writes Queued:         345,   25,932KiB
 Read Dispatches:        0,        0KiB  Write Dispatches:      331,   25,788KiB
 Reads Requeued:         0               Writes Requeued:         0
 Reads Completed:        0,        0KiB  Writes Completed:    1,597,  117,112KiB
 Read Merges:            0,        0KiB  Write Merges:            1,       16KiB
 Read depth:             0               Write depth:           177
 IO unplugs:             0               Timer unplugs:           0
CPU1 (8,16):
 Reads Queued:           0,        0KiB  Writes Queued:         502,   39,948KiB
 Read Dispatches:        0,        0KiB  Write Dispatches:      495,   40,076KiB
 Reads Requeued:         0               Writes Requeued:         0
 Reads Completed:        0,        0KiB  Writes Completed:        0,        0KiB
 Read Merges:            0,        0KiB  Write Merges:            0,        0KiB
 Read depth:             0               Write depth:           177
 IO unplugs:             0               Timer unplugs:           0
CPU2 (8,16):
 Reads Queued:           0,        0KiB  Writes Queued:         297,   26,800KiB
 Read Dispatches:        0,        0KiB  Write Dispatches:      287,   26,800KiB
 Reads Requeued:         0               Writes Requeued:         0
 Reads Completed:        0,        0KiB  Writes Completed:        0,        0KiB
 Read Merges:            0,        0KiB  Write Merges:            0,        0KiB
 Read depth:             0               Write depth:           177
 IO unplugs:             0               Timer unplugs:           0
CPU3 (8,16):
 Reads Queued:           0,        0KiB  Writes Queued:         418,   24,432KiB
 Read Dispatches:        0,        0KiB  Write Dispatches:      408,   24,448KiB
 Reads Requeued:         0               Writes Requeued:         0
 Reads Completed:        0,        0KiB  Writes Completed:        0,        0KiB
 Read Merges:            0,        0KiB  Write Merges:            2,      272KiB
 Read depth:             0               Write depth:           177
 IO unplugs:             0               Timer unplugs:           0

Total (8,16):
 Reads Queued:           0,        0KiB  Writes Queued:       1,562,  117,112KiB
 Read Dispatches:        0,        0KiB  Write Dispatches:    1,521,  117,112KiB
 Reads Requeued:         0               Writes Requeued:         0
 Reads Completed:        0,        0KiB  Writes Completed:    1,597,  117,112KiB
 Read Merges:            0,        0KiB  Write Merges:            3,      288KiB
 IO unplugs:             0               Timer unplugs:           0

Throughput (R/W): 0KiB/s / 2,338KiB/s
Events (8,16): 9,287 entries
Skips: 0 forward (0 -   0.0%)

btrace позволяСт наглядно ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ количСство записанных Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°ΡŽΡ‚ запись, ΠΈΠ· Π΅Ρ‘ Π²Ρ‹Π²ΠΎΠ΄Π° слоТно.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, производящих запись Π½Π° Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»ΡŒ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° iotop ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ процСссы, ΠΏΠΈΡˆΡƒΡ‰ΠΈΠ΅ Π½Π° диск, ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ записанных Π΄Π°Π½Π½Ρ‹Ρ….
НаиболСС ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

# iotop -obPat

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

02:55:47 Total DISK READ :       0.00 B/s | Total DISK WRITE :      30.65 K/s
02:55:47 Actual DISK READ:       0.00 B/s | Actual DISK WRITE:       0.00 B/s
    TIME  PID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN      IO    COMMAND
b'02:55:47   753 be/4 root          0.00 B      0.00 B  0.00 %  0.04 % [dmcrypt_write/2]'
b'02:55:47   788 be/4 root         72.00 K     18.27 M  0.00 %  0.02 % [btrfs-transacti]'
b'02:55:47 15057 be/4 valdikss    216.00 K    283.05 M  0.00 %  0.01 % firefox'
b'02:55:47  1588 ?dif root          0.00 B      0.00 B  0.00 %  0.00 % Xorg -nolisten tcp -auth /var/run/sddm/{398f030f-9667-4dff-b371-81eaae48dfdf} -background none -noreset -displayfd 18 -seat seat0 vt1'
b'02:55:47 15692 be/4 valdikss    988.00 K      9.41 M  0.00 %  0.00 % python3 /usr/bin/gajim'
b'02:55:47 15730 ?dif valdikss      9.07 M      0.00 B  0.00 %  0.00 % telegram-desktop --'
b'02:55:47  2174 ?dif valdikss   1840.00 K      2.47 M  0.00 %  0.00 % yakuake'
b'02:55:47 19827 be/4 root         16.00 K    896.00 K  0.00 %  0.00 % [kworker/u16:7-events_unbound]'
b'02:55:47 19074 be/4 root         16.00 K    480.00 K  0.00 %  0.00 % [kworker/u16:4-btrfs-endio-write]'
b'02:55:47 19006 be/4 root         16.00 K   1872.00 K  0.00 %  0.00 % [kworker/u16:1-events_unbound]'
b'02:55:47  1429 be/4 root        484.00 K      0.00 B  0.00 %  0.00 % accounts-daemon'
b'02:55:47 15820 be/4 valdikss    312.00 K      0.00 B  0.00 %  0.00 % firefox -contentproc -childID 6 -isForBrowser -prefsLen 7894 -prefMapSize 223880 -parentBuildID 20191022164834 -greomni /usr/lib64/firefox/omni.ja -appomni /usr/lib64/firefox/browser/omni.ja -appdir /usr/lib64/firefox/browser 15057 tab'
b'02:55:47  2125 ?dif valdikss      0.00 B     92.00 K  0.00 %  0.00 % plasmashell'
b'02:55:47  1268 be/3 root          0.00 B      4.00 K  0.00 %  0.00 % auditd'
b'02:55:47  1414 be/4 root          0.00 B      4.00 K  0.00 %  0.00 % sssd_nss --uid 0 --gid 0 --logger=files'
b'02:55:47 15238 be/4 valdikss      0.00 B      4.00 K  0.00 %  0.00 % thunderbird'
b'02:55:47 18605 be/4 root          0.00 B      3.19 M  0.00 %  0.00 % [kworker/u16:0-btrfs-endio-write]'
b'02:55:47 18867 be/4 root          0.00 B     96.00 K  0.00 %  0.00 % [kworker/u16:5-btrfs-endio-meta]'
b'02:55:47 19070 be/4 root          0.00 B    160.00 K  0.00 %  0.00 % [kworker/u16:2-btrfs-freespace-write]'
b'02:55:47 19645 be/4 root          0.00 B      2.17 M  0.00 %  0.00 % [kworker/u16:3-events_unbound]'
b'02:55:47 19982 be/4 root          0.00 B    496.00 K  0.00 %  0.00 % [kworker/u16:6-btrfs-endio-write]'

Π’ Π³Π»Π°Π·Π° бросаСтся Firefox, записавший 283 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π° Π·Π° нСсколько ΠΌΠΈΠ½ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ iotop.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ², Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ производится запись

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ процСссС, Π½Π°ΡΠΈΠ»ΡƒΡŽΡ‰ΠΈΠΌ диск β€” Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π° ΠΏΡƒΡ‚ΠΈ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ производится запись β€” Π΅Ρ‰Π΅ Π»ΡƒΡ‡ΡˆΠ΅.

Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ fatrace, которая отслСТиваСт измСнСния Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы.

# fatrace -f W

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

firefox(15057): CW /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite-wal
firefox(15057): CW /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): CW /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/usage-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/usage
firefox(15057): CW /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/usage
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite-wal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite-wal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite-wal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite-wal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite-wal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite-wal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite-wal
firefox(15057): CW /home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/https+++habr.com/ls/data.sqlite-journal
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite
firefox(15057): W /home/valdikss/.mozilla/firefox/xyf4vqh2.default/webappsstore.sqlite

Fatrace Π½Π΅ ΡƒΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ количСство записанных Π΄Π°Π½Π½Ρ‹Ρ… вслСдствиС использования довольно простого отслСТивания Ρ„Π°ΠΊΡ‚Π° обращСния ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ Ρ‡Π΅Ρ€Π΅Π· inotify.

Из Π²Ρ‹Π²ΠΎΠ΄Π° Π²ΠΈΠ΄Π½ΠΎ, ΠΊΠ°ΠΊ Ρ…Π°Π±Ρ€ сохраняСт мою ΡΡ‚Π°Ρ‚ΡŒΡŽ Π² local storage Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΏΠΎΠΊΠ° я Π΅Ρ‘ ΠΏΠΈΡˆΡƒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Group Speed Dial, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅, ΠΊΠ°ΠΊ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ fatrace, Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ свои Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 30 сСкунд. ИмСнно Ρ‡ΠΈΡ‚Π°Π΅Ρ‚, Π° Π½Π΅ записываСт: CW ΠΏΠ΅Ρ€Π΅Π΄ Ρ„Π°ΠΉΠ»ΠΎΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» открываСтся Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ запись, с ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ созданиСм Ρ„Π°ΠΉΠ»Π°, Ссли ΠΎΠ½ отсутствуСт (вызываСтся openat с Ρ„Π»Π°Π³ΠΎΠΌ O_RDWR|O_CREAT), Π½ΠΎ Π½Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π² Ρ„Π°ΠΉΠ» Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ писалась какая-Π»ΠΈΠ±ΠΎ информация.

На всякий случай, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ Π² этом, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ strace, с Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠΌ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹:

strace -yy -e trace=open,openat,close,write -f -p 15057 2>&1 | grep extension

Π’Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

[pid 20352] openat(AT_FDCWD, "/home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite", O_RDWR|O_CREAT|O_CLOEXEC, 0644) = 153</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite>
[pid 20352] read(153</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite>, "SQLite format 3 20 22 @   d 23"..., 100) = 100
[pid 20352] read(153</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite>, "SQLite format 3 20 22 @   d 23"..., 4096) = 4096
[pid 20352] openat(AT_FDCWD, "/home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite-wal", O_RDWR|O_CREAT|O_CLOEXEC, 0644) = 166</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite-wal>
…
[pid 20352] read(54</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite>, " r4304364354354364-  4204!4'414" 250 &"..., 4096) = 4096
[pid 20352] read(54</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite>, " 136Pt2262504 O24532016:"16.27 r245306>2461t1q370"..., 4096) = 4096
[pid 20352] close(77</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite-wal>) = 0
[pid 20352] close(54</home/valdikss/.mozilla/firefox/xyf4vqh2.default/storage/default/moz-extension+++e5c304fb-af40-498a-9ba8-47eb0416e933^userContextId=4294967295/idb/3647222921wleabcEoxlt-eengsairo.sqlite>) = 0

НСт Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° write(), Ρ‡Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎΠ± отсутствии записи Π² Ρ„Π°ΠΉΠ».

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Ρ… расходов Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы

Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ€Π°Π·Π½ΠΈΡ†Π° Π² показаниях iotop ΠΈ btrace Π½Π°Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»Π° Π½Π° ΠΌΡ‹ΡΠ»ΡŒ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму ΠΏΡƒΡ‚Π΅ΠΌ Ρ€ΡƒΡ‡Π½ΠΎΠΉ записи Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„Π°ΠΉΠ» ΠΈ отслСТивания ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΠΉ btrace.

Если ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ запись Π½Π° диск, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ²ΡˆΠΈΡΡŒ Π² emergency-Ρ€Π΅ΠΆΠΈΠΌ systemd, ΠΈ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΏΠ°Ρ€Ρƒ Π±Π°ΠΉΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ», btrace Π½Π° SSD с btrfs сообщаСт ΠΎ записи 3 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. БвСТСсозданная файловая систСма Ρ„Π»Π΅ΡˆΠΊΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ Π² 8 Π“Π‘ записываСт ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 264 ΠšΠΈΠ‘ ΠΏΡ€ΠΈ записи ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π°ΠΉΡ‚Π°.
Для сравнСния, запись ΠΏΠ°Ρ€Ρ‹ Π±Π°ΠΉΡ‚ Π² Ρ„Π°ΠΉΠ» Π½Π° ext4 оканчиваСтся записью 24 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° диск.

Π’ 2017 Π³ΠΎΠ΄Ρƒ Jayashree Mohan, Rohan Kadekodi ΠΈ Vijay Chidambaram ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ исслСдованиС усилСния записи Ρ€Π°Π·Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм, ΠΈΡ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ для btrfs ΠΈ ext4 ΠΏΡ€ΠΈ записи 4 ΠšΠ‘ соотносятся с ΠΌΠΎΠΈΠΌΠΈ.

ВыявляСм процСссы с дисковой Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒΡŽ Π² Linux

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹Π²ΠΎΠ΄

ΠŸΡƒΡ‚Ρ‘ΠΌ описанных манипуляций ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ»ΠΎΡΡŒ:

  1. Частая запись состояний Π·Π°Π΄Π°Π½ΠΈΠΉ для ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€Π° Π΄Π΅ΠΌΠΎΠ½ΠΎΠΌ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ CUPS Π² /var/cache/cups ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΌΠΈΠ½ΡƒΡ‚Ρƒ. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° устранСна очисткой /var/spool/cups (хотя Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ Π½Π΅ Π±Ρ‹Π»ΠΎ);
  2. Π€Π°ΠΊΡ‚ чтСния Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 30 сСкунд Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Group Speed Dial для Firefox;
  3. ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠ°Ρ запись ΠΆΡƒΡ€Π½Π°Π»ΠΎΠ² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ сСрвисами отслСТивания ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Fedora, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΎ ΠΊ записи Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° btrfs: pmcd.service, pmie.service, pmlogger.service;
  4. ΠžΠ³Ρ€ΠΎΠΌΠ½Π°Ρ амплификация ΠΏΡ€ΠΈ записи нСбольшого количСства Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ использовании btrfs.

Π’Ρ‹Π²ΠΎΠ΄: Π½Π΅ стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ btrfs, Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ часто Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ нСбольшоС количСство Π΄Π°Π½Π½Ρ‹Ρ… (нСсколько ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚), ΠΈΠ½Π°Ρ‡Π΅ это обСрнСтся ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π°ΠΌΠΈ записанных Π΄Π°Π½Π½Ρ‹Ρ…. ОсобСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ для ΠΎΠ΄Π½ΠΎΠΏΠ»Π°Ρ‚Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² с ОБ Π½Π° MicroSD.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com