Я попытался перезагрузить машину с версией 18.04 LTS, но она не отреагировала, поэтому, подождав несколько минут, я выключил и снова включил машину.
Машина запустилась нормально, но я обнаружил, что некоторые из недавно отредактированных файлов теперь пусты. Это касается как минимум 5 известных случаев, включая текстовые файлы, системный файл и файлы глубоко в папке .git.
- Является ли эта файловая система фатально поврежденной и небезопасной для использования?
- Как узнать, является ли это аппаратной проблемой?
- Это известный риск, связанный только с выключением и включением питания Ubuntu?
Дополнительная информация:
- Диск — Samsung 970 Pro
- Ubuntu установлен на разделе Ext4 (двойная загрузка с Windows)
Disks
не могу восстановить загрузочный диск (он занят) нужна флешка Live USBsmartctl
сообщается следующее:
Обновления
- запуск
sudo touch /forcefsck;sudo shutdown -r now
не производил визуальной проверки диска - Используя живой диск,
Disks
проверка показывает, что раздел не поврежден - запуск
fsck -f /dev/nvme0n1p5
с живого диска не возвращает ошибок, код выхода = 0
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-5.0.0-36-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Number: Samsung SSD 970 PRO 1TB
Serial Number: S462NF0M616954M
Firmware Version: 1B2QEXP7
PCI Vendor/Subsystem ID: 0x144d
IEEE OUI Identifier: 0x002538
Total NVM Capacity: 1,024,209,543,168 [1.02 TB]
Unallocated NVM Capacity: 0
Controller ID: 4
Number of Namespaces: 1
Namespace 1 Size/Capacity: 1,024,209,543,168 [1.02 TB]
Namespace 1 Utilization: 691,389,394,944 [691 GB]
Namespace 1 Formatted LBA Size: 512
Local Time is: Sun Nov 17 01:01:26 2019 GMT
Firmware Updates (0x16): 3 Slots, no Reset required
Optional Admin Commands (0x0037): Security Format Frmw_DL *Other*
Optional NVM Commands (0x005f): Comp Wr_Unc DS_Mngmt Wr_Zero Sav/Sel_Feat *Other*
Maximum Data Transfer Size: 512 Pages
Warning Comp. Temp. Threshold: 81 Celsius
Critical Comp. Temp. Threshold: 81 Celsius
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 6.20W - - 0 0 0 0 0 0
1 + 4.30W - - 1 1 1 1 0 0
2 + 2.10W - - 2 2 2 2 0 0
3 - 0.0400W - - 3 3 3 3 210 1200
4 - 0.0050W - - 4 4 4 4 2000 8000
Supported LBA Sizes (NSID 0x1)
Id Fmt Data Metadt Rel_Perf
0 + 512 0 0
=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
SMART/Health Information (NVMe Log 0x02, NSID 0x1)
Critical Warning: 0x00
Temperature: 36 Celsius
Available Spare: 100%
Available Spare Threshold: 10%
Percentage Used: 0%
Data Units Read: 1,662,255 [851 GB]
Data Units Written: 5,875,310 [3.00 TB]
Host Read Commands: 20,271,726
Host Write Commands: 90,120,020
Controller Busy Time: 335
Power Cycles: 95
Power On Hours: 515
Unsafe Shutdowns: 4
Media and Data Integrity Errors: 0
Error Information Log Entries: 105
Warning Comp. Temperature Time: 0
Critical Comp. Temperature Time: 0
Temperature Sensor 1: 36 Celsius
Temperature Sensor 2: 39 Celsius
Error Information (NVMe Log 0x01, max 64 entries)
No Errors Logged
решение1
Причина этого в функции файловой системы EXT4, которая называется «отложенное распределение». Отложенное распределение было добавлено в EXT4 из соображений производительности, когда данные НЕ фиксируются на диске немедленно. Это дает большой прирост производительности за счет большой вероятности полной потери данных незафиксированных файлов при отключении питания. Иногда задержка может составлять несколько секунд, и отключение питания приведет к тому, что незафиксированные файлы будут отображаться как имеющие размер 0 байт. Я полагаю, что вы столкнулись с этим.
Вам необходимо тщательно выбирать параметры монтирования файловой системы в записях /etc/fstab. Например, data=journal
опция позволяет зафиксировать все данные в журнале до записи в основную файловую систему, а также отключает функцию отложенного выделения.
Вы можете прочитать основные сведения о флагах EXT4здесьи все вариантыздесь. Есть хорошее обсуждение этих вариантов вэта тематакже.