Сколько записей у меня есть на моем жестком диске SSD емкостью 250 ГБ на моем Macbook Pro High Sierra [дубликат]

Я хотел бы знать, сколько записей у меня есть на жестком диске SSD моего Mac?

Я также хотел бы знать, есть ли команда терминала, которую я могу запустить, чтобы узнать эту информацию, и сколько записей у меня осталось, чтобы я мог проверить ее статус?

Ответы (3)

Для этого есть команда терминала

iostat -Id disk0

вывод

Вы увидите три значения в списке:

KB/t = kilobytes per transfer
xfrs = number of transfers
MB = number of megabytes transferred

Вот пример моего MBA 2017

диск0

KB/t   xfrs     MB 

29.12 1886081 53627.02

Значение, указанное в разделе МБ, представляет собой общее количество мегабайт, которое вы записали на свой диск с момента его первой установки до настоящего момента. Итак, я написал 53 ГБ.

Ко второй части вашего вопроса "Сколько мне осталось написать"

Там нет программы, чтобы сказать вам продолжительность жизни :)

Учтите, что у вас есть SSD на 250 ГБ, и вы полностью стираете его, а затем снова записываете 250 ГБ, вы можете сделать это около 2000 раз. Это 5,0e14 переданных данных. (позвольте мне помочь вам, это 500 ТБ)

Кроме того, вы не всегда «пишите» в одну и ту же ячейку (более 50% из них находятся только в режиме чтения), поэтому важно, чтобы ваш SDD был ниже 80% емкости.

источник

В любом случае, не так уж важно точно знать текущее и будущее время жизни. В конце концов это потерпит неудачу. Просто держите резервную копию.

Ответ неверный. «iostat -Id disk0» не сообщит вам, сколько операций записи или передачи было выполнено на диске за время его жизни. вместо этого он говорит вам, сколько было передано с момента последней перезагрузки компьютера - совсем другое дело.
@jksoegaard, это неправильно, я только вчера перезагрузился и с тех пор не писал 50 ГБ.
Ты все еще неправ. Если вы посмотрите на исходный код iostat, вы увидите, что, во-первых, значение «МБ» на самом деле является суммой как прочитанных, так и записанных байтов. Количество прочитанных байтов не имеет значения для вопроса здесь, поскольку он не изнашивает SSD так же. Уже там значение, которое вы найдете, не имеет значения. Следующая часть заключается в том, что в исходном коде вы увидите, что он находит количество байтов, записанных в частях статистики свойств по ключу с именем «kIOBlockStorageDriverStatisticsBytesWrittenKey». Согласно документации Apple, это количество байтов, записанных с момента загрузки.
Как я не мог написать больше в предыдущем комментарии: «с момента загрузки» не совсем корректно, так как на самом деле «с момента создания экземпляра драйвера блочного хранилища». В случае вашего загрузочного диска (как здесь) это то же самое, что и «с момента загрузки». Вы можете прочитать документацию здесь: developer.apple.com/documentation/iokit/…
С вашей логикой значения, соответствующие моему собственному драйву, далеки от идеала. Прямо сейчас (вскоре после перезагрузки) он говорит мне, что у меня есть ок. 15 ГБ стоит переводов. Что не соответствует вашей логике, поскольку диску уже несколько лет, и на нем было выполнено огромное количество операций записи, а не всего 15 ГБ за всю его жизнь.
@jksoegaard хорошо, Шерлок, вот мой источник, так что поговори с ним cnet.com/how-to/find-how-how-much-longer-your-ssd-will-last
man iostat говорит: «Первые распечатываемые статистические данные усредняются по времени безотказной работы системы. Чтобы получить информацию о текущей активности, необходимо указать подходящее время ожидания, чтобы последующие наборы распечатываемых статистических данных были усреднены по этому времени». Таким образом, это означает, что данные после перезагрузки, как указано. справочные страницы и ссылки на исходный код с большей вероятностью будут правильными, чем случайные веб-страницы.
Также я перезагрузил результаты 30.14 269661665 7935911.03и `` довольно явно повлиял на перезагрузку
@Ruskes Автор статьи CNET явно ошибся. Возможно ли, что за 1,5 года использования его Mac было записано всего 1 ТБ? На самом деле, я пришел сюда, потому что photolibraryd записал 1,51 ТБ за последние 12 дней, что заставило меня немного понервничать… iostat показал всего 2,62 ТБ записи, что, по-видимому, совместимо с интерпретацией этой загрузки.
Согласен, что ответ неверный. Команда показывает 157 ГБ, а моему Mac 4 года, и я использую его каждый день. Кстати, мой ssd имеет емкость 512 ГБ и сейчас заполнен почти на 90%. Вы занимаетесь математикой :)
Ссылка на источник новостей против технической документации 😂

В общем случае вы не можете отследить, сколько именно операций записи было выполнено на диске. Вы бы сами как-то отслеживали эту статистику.

Точно так же вы не можете вообще сказать, сколько операций записи осталось, поскольку нет «гарантии», что диск выйдет из строя в определенный момент. Также нет гарантии, что диск не выйдет из строя до определенного момента.

Лучший способ получить приблизительное представление о том, что вы хотите, — это посмотреть на атрибуты SMART на диске. Вы можете сделать это с помощью программы «smartctl» от «smartmontools». Если у вас установлен homebrew, вы можете установить smartmontools с помощью этой команды:

brew install smartmontools

Затем запустите его следующим образом:

smartctl -a disk0

(замените disk0 фактическим физическим диском, который вы хотите изучить — вы можете найти имена устройств в Дисковой утилите)

В выводе smartctl вы захотите посмотреть на так называемый «счетчик выравнивания износа». Необработанное значение справа показывает, сколько циклов стирания/программирования в среднем претерпел каждый блок на SSD. Циклы стирания / программирования — это то, что в конечном итоге изнашивает накопитель.

Кроме того, число в столбце «значение» покажет вам, в основном, насколько велика часть этого количества циклов стирания / программирования по сравнению с ожидаемым количеством циклов, которые вы можете выдержать. В основном это число начинается со 100% для нового диска и отсчитывается до 0%, когда вы ожидаете, что диск начнет выходить из строя. Как упоминалось ранее, диски могут выйти из строя до этого момента, а могут и не выйти из строя в этот момент. Тем не менее, это один из лучших индикаторов состояния диска.

Это настоящий ответ! Однако вопрос: полное исходное значение 255 или 200?
Смотрите только на нормализованное значение, которое должно быть в процентах от 0 до 100. На некоторых дисках, например Intel, этот показатель известен как индикатор износа носителя.
Мой диск показывает Wear_Leveling_Countкак 193. Так что оригинал должен быть либо 255, либо 200, я полагаю…
Пожалуйста, выложите всю строку вывода, иначе сложно что-либо сказать. Значения SMART отличаются от диска к диску, поэтому, если у вас нет оригинального диска Apple, для вас все может быть иначе.
Это Apple SSD SM1024G. Выходная строка:173 Wear_Leveling_Count 0x0032 193 193 100 Old_age Always - 12899516500
Насколько я вижу, это означает, что диск на 93%. Т.е. значение идет от 200 максимум, до 100 минимум (вы пересекаете предполагаемое время жизни).

Смарт-атрибуты для общего количества операций записи

С технической точки зрения, для значений чтения/записи определены атрибуты SMART , но нет гарантии, что производитель диска будет их использовать. Они следующие (определяются как "слова" - т.е. "Слово 241"):

  • 241 - Всего записано LBA
  • 242 - Всего прочитано LBA
  • 243 - Общее количество записанных LBA расширено
  • 244 - Общее количество прочитанных LBA расширено
  • 249 - Запись NAND (1 ГБ)

LBA — это адрес логического блока , представляющий собой 48-битный адрес указанного блока данных. Блоки данных различаются по размеру в зависимости от ОС; macOS HSF+ использует блок размером 16 КБ. Другими словами, в macOS, отформатированном с помощью HFS+, он использует 16 КБ для хранения файла размером 1 КБ и 32 КБ для хранения любого файла размером более 16 КБ, но менее 32 КБ.

Вы можете получить доступ к этим данным?

Это зависит. (Опять же) Технически говоря, вы можете отправить команду ATA на диск, чтобы прочитать данные, идентифицированные соответствующими «словами». Однако маловероятно, что вы получите эту информацию. Почему?

  • Диск должен его поддерживать.
  • macOS не позволяет вам его получить.

Извлекая атрибуты для (случайного) диска Seagate с веб-сайта smartmontools , вы видите, что соответствующие слова не определены.

Во-вторых, даже если бы данные существовали и вам нужно было написать собственное приложение для отправки пользовательских AT-команд, macOS не позволила бы вам это сделать .

По своему замыслу OS X не позволяет приложениям отправлять команды SCSI или ATA на устройства хранения, если разработчик приложения также не предоставляет встроенный в ядро ​​драйвер устройства, поддерживающий команды. Семейство моделей архитектуры SCSI позволяет одновременно управлять устройством только одному драйверу логического устройства и предоставляет встроенные в ядро ​​драйверы логических устройств для устройств хранения (как указано в разделе «Поддержка устройств семейства моделей архитектуры SCSI»). Точно так же семейство ATA не позволяет приложениям отправлять команды ATA напрямую на устройства ATA или SATA (Serial ATA).

Откуда мы знаем, что это так?

Используя DiskDrill на моем внутреннем SSD, это предел атрибутов, предоставляемых ОС.

Атрибуты SSD SMART

Практичность операций полной записи

Нецелесообразно собирать такую ​​информацию. Возьмем крайний случай — центр обработки данных с высокодоступными критически важными SQL-серверами (Oracle, MySQL, MSSQL) — нас интересует не количество записываемых данных, а скорость и надежность дисков. Мы ищем

  • Достаточно ли высоки IOPS ?
  • какие ошибки чтения/записи низкие?
  • гарантия еще действует?

Другими словами, если накопитель имеет достаточно высокую производительность и не имеет (низкий порог) ошибок и еще находится на гарантии, то накопитель находится в эксплуатации. В тот момент, когда он начинает выходить из строя, мы меняем его. Кроме того, по истечении гарантийного срока его заменяют независимо от того, остался ли у него срок службы (есть и бюджетный компонент).

В итоге общее количество операций записи на диск не является критической метрикой для отслеживания.

iostatи другие инструменты ОС

Проблема в том, что он дает вам статистику для текущей операционной системы:

iostat (статистика ввода/вывода) — это инструмент мониторинга компьютерной системы, используемый для сбора и отображения статистики ввода и вывода хранилища операционной системы .

Другими словами, переустановите macOS на трехлетнем, хорошо используемом SSD, и ваша статистика вернется к нулю. Это своего рода откат одометра автомобиля — хотя он сообщает о пробеге 50 тысяч миль / километров, двигатель и трансмиссия все еще имеют 150 тысяч.

TL;DR

Маловероятно, что вы собираетесь получить эту информацию.

  1. Диск должен поддерживать атрибут SMART.
  2. Ваша ОС должна позволять вам получить этот атрибут. В macOS эта информация по умолчанию просто недоступна.
  3. Это непрактичный показатель для мониторинга

Наконец, когда дело доходит до накопителей, будь то вращающиеся или твердотельные, предполагайте, что они выйдут из строя. Вот почему разумная стратегия резервного копирования гораздо более важна, чем мониторинг общего числа операций записи.