파일 시스템이 갑자기 읽기 전용이 됩니다. 이것을 디버깅하는 방법은 무엇입니까?

파일 시스템이 갑자기 읽기 전용이 됩니다. 이것을 디버깅하는 방법은 무엇입니까?

내 ext-4 루트 및 홈 파일 시스템이 갑자기 읽기 전용이 되었습니다. 그 이유가 무엇인지 어떻게 알 수 있습니까?

시스템은 systemd(ssd에 설치됨)가 있는 ubuntu 16.04입니다. 여기서 루트 및 홈 파티션은 dm-crypt로 암호화되고 ext-4 fs로 포맷됩니다.

편집하다이 게시물을 작성한 직후 검정색/컬러 화면이 약간 깜박이면서 시스템이 다시 충돌했습니다(2회). 이제 다시 작동하는 것 같습니다.

/etc/fstab루트 파티션에 대한 마운트 옵션이 포함되어 있습니다 .errors=remount-ro

주는smartctl -a /dev/sda

smartctl -a /dev/sda
smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.4.0-21-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     SAMSUNG MZ7PC256HAFU-000L7
Serial Number:    S0Y5NSAC602442
Firmware Version: CXM72L1Q
User Capacity:    256,060,514,304 bytes [256 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ATA8-ACS T13/1699-D revision 4c
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Mon May 23 17:07:40 2016 UTC
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:  (0x02) Offline data collection activity
                    was completed without error.
                    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:        ( 1020) seconds.
Offline data collection
capabilities:            (0x5b) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    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:    (  17) minutes.

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
  9 Power_On_Hours          0x0032   098   098   000    Old_age   Always       -       6093
 12 Power_Cycle_Count       0x0032   097   097   000    Old_age   Always       -       2810
175 Program_Fail_Count_Chip 0x0032   100   100   010    Old_age   Always       -       0
176 Erase_Fail_Count_Chip   0x0032   100   100   010    Old_age   Always       -       0
177 Wear_Leveling_Count     0x0013   095   095   017    Pre-fail  Always       -       169
178 Used_Rsvd_Blk_Cnt_Chip  0x0013   094   094   010    Pre-fail  Always       -       230
179 Used_Rsvd_Blk_Cnt_Tot   0x0013   094   094   010    Pre-fail  Always       -       450
180 Unused_Rsvd_Blk_Cnt_Tot 0x0013   094   094   010    Pre-fail  Always       -       7614
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
184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0032   066   042   000    Old_age   Always       -       34
195 Hardware_ECC_Recovered  0x001a   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   253   253   000    Old_age   Always       -       1
233 Media_Wearout_Indicator 0x003a   200   200   000    Old_age   Always       -       0
234 Unknown_Attribute       0x0012   100   100   000    Old_age   Always       -       0
235 Unknown_Attribute       0x0012   099   099   000    Old_age   Always       -       48
236 Unknown_Attribute       0x0012   099   099   000    Old_age   Always       -       48
237 Unknown_Attribute       0x0012   099   099   000    Old_age   Always       -       169
238 Unknown_Attribute       0x0012   099   099   000    Old_age   Always       -       450

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%      6092         -

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.

답변1

일부 Linux 시스템은 완전히 마운트 해제되지 않은 경우 파티션을 읽기 전용으로 마운트하고 시스템은 정상적인 사용 전에 적절한 버전을 fsck실행해야 한다고 생각합니다.

이러한 경우인지 알아보려면 로그나 dmesg를 확인하세요.

답변2

이전 의견에서 제안한 것처럼 "디버깅"을 시작하십시오.dmesgSMART 데이터를 파헤치는 것이 아니라 거기에서 단서를 얻을 가능성이 매우 높습니다(SATA/SAS/SCSI/버스 오류 또는 읽기/쓰기 오류를 사용하는 모든 것). 또한 어떤 장치/파티션에 결함이 있는지 알려줍니다.

앞서 제안한 대로 문제는 불결하게 마운트 해제된 파일 시스템(예: 정전으로 인해)과 같은 "소프트" 문제일 수도 있고, 하드 드라이브/SSD가 죽거나 오작동하는 것과 같은 하드웨어 문제일 수도 있습니다.dmesg두 경우 모두 단서를 보여줍니다.

관련 정보