Описание SMART атрибутов

В этой статье я посмотрю SMART информацию первого попавшегося под руку SSD диска и опишу что означают атрибуты.

Допустим мы посмотрели информацию диска /dev/sda:

sudo smartctl -a /dev/sda

У меня отобразилось следующая информация:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   100   100   050    Pre-fail  Always       -       0
  2 Throughput_Performance  0x0005   100   100   050    Pre-fail  Offline      -       0
  3 Spin_Up_Time            0x0007   100   100   050    Pre-fail  Always       -       0
  5 Reallocated_Sector_Ct   0x0013   100   100   050    Pre-fail  Always       -       0
  7 Unknown_SSD_Attribute   0x000b   100   100   050    Pre-fail  Always       -       0
  8 Unknown_SSD_Attribute   0x0005   100   100   050    Pre-fail  Offline      -       0
  9 Power_On_Hours          0x0012   100   100   000    Old_age   Always       -       2850
 12 Power_Cycle_Count       0x0012   100   100   000    Old_age   Always       -       10
168 Unknown_Attribute       0x0012   100   100   000    Old_age   Always       -       0
170 Unknown_Attribute       0x0003   100   100   010    Pre-fail  Always       -       531
173 Unknown_Attribute       0x0012   100   100   000    Old_age   Always       -       12255496
175 Program_Fail_Count_Chip 0x0013   100   100   050    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0012   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0012   100   100   000    Old_age   Always       -       5
194 Temperature_Celsius     0x0023   071   067   030    Pre-fail  Always       -       29 (Min/Max 23/33)
196 Reallocated_Event_Count 0x0002   100   100   010    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   100   100   000    Old_age   Always       -       0
199 UDMA_CRC_Error_Count    0x000b   100   100   050    Pre-fail  Always       -       0
218 Unknown_Attribute       0x000b   100   100   050    Pre-fail  Always       -       0
231 Temperature_Celsius     0x0013   100   100   000    Pre-fail  Always       -       94
233 Media_Wearout_Indicator 0x000b   100   100   000    Pre-fail  Always       -       50171
240 Unknown_SSD_Attribute   0x0013   100   100   000    Pre-fail  Always       -       0
241 Total_LBAs_Written      0x0012   100   100   000    Old_age   Always       -       12213
242 Total_LBAs_Read         0x0012   100   100   000    Old_age   Always       -       321
244 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       187
245 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       264
246 Unknown_Attribute       0x0012   100   100   000    Old_age   Always       -       12905344

Raw_Read_Error_Rate — означает количество ошибок чтения.
Throughput_Performance -общая производительность диска.
Spin_Up_Time — время раскрутки дисков до рабочей скорости.
Reallocated_Sector_Ct — количество перераспределённых (поврежденных) секторов.
Power_On_Hours — количество часов которые работал диск.
Power_Cycle_Count — количество включений/выключений диска.
Program_Fail_Count_Chip — количество ошибок записи во флеш память.
Reported_Uncorrect — аппаратные ECC ошибки которые не могут быть исправлены.
Power-Off_Retract_Count — число аварийных выключений диска.
Temperature_Celsius — температура диска в градусах Цельсия.
Media_Wearout_Indicator — индикатор здоровья диска, если ниже 10, то диск точно пора заменить.
Total_LBAs_Written — записей LBA.
Total_LBAs_Read — чтений LBA.

Также могут быть еще другие атрибуты:
Start_Stop_Count — количество запусков/остановок шпинделя.
Seek_Error_Rate — количество ошибок позиционирования.
Spin_Retry_Count — количество попыток повторной раскрутки.
Reallocated_Event_Count — количество операций перераспределения секторов.
Offline_Uncorrectable — количество неисправных секторов.
Flying height — высота между головкой и поверхностью диска.
Disk Shift — дистанция смещения блока дисков от шпинделя, может меняться например после падений.
G-Sense Error Rate — ошибки из-за внешних нагрузок/падений.
и т.д.

Смотрите также:
Тест диска в Linux на наличие ошибок и битых секторов

Что такое DHCP и как он работает?

DHCP (Dynamic Host Configuration Protocol) — протокол динамической настройки узла в сети TCP/IP.

Опишу возможные типы DHCP сообщений:
DHCPDISCOVER — запрос клиента на наличие адресов.
DHCPOFFER — предложение сервера на получение адреса.
DHCPREQUEST — запрос клиента на получение адреса (предложенного сервером в DHCPOFFER).
DHCPACK — подтверждение сервера о выдаче адреса.
DHCPDECLINE — отказ клиента в получении предложенного адреса.
DHCPNAK — отказ сервера в выдаче запрошенного адреса.
DHCPRELEASE — уведомление клиента об освобождении адреса.
DHCPINFORM — запрос клиента о дополнительных параметрах.

Опишу процесс успешного получения DHCP клиентом IP адреса от DHCP сервера:
1) DHCP клиент с IP адреса 0.0.0.0 через порт UDP 67 шлет в сеть IP адресу 255.255.255.255 широковещательное сообщение DHCPDISCOVER «Хочу получить IP адрес».
2) DHCP сервер или DHCP сервера если их несколько получают это сообщение и отвечают клиенту со своего IP через порт UDP 68 сообщением DHCPOFFER «Предлагаю такой-то IP адрес». Отправка сообщение выполняется на широковещательный адрес 255.255.255.255 или адрес шлюза если клиент находится в другой сети.
3) DHCP клиент получает это сообщение или сообщения и отвечает с IP адреса 0.0.0.0 только одному DHCP серверу сообщением DHCPREQUEST «Да, хочу этот IP адрес».
4) DHCP сервер шлет в ответ сообщение DHCPACK «Назначаю тебе этот IP адрес»
Так как у IP адреса есть время аренды по истечении которого он освобождается и DHCP сервер может его выдать например другому клиенту, то DHCP клиенты обычно запрашивают продление сообщением DHCPREQUEST и получают ответ DHCPACK.

Опишу состав DHCP сообщения:
op (тип сообщения, например DHCPDISCOVER, размер 1 байт)
htype (тип аппаратного адреса, размер 1 байт)
hlen (длина аппаратного адреса, например 6 для MAC адреса, размер 1 байт)
hops (количество агентов ретрансляции между сервером и клиентом, клиенты устанавливают значение 0, размер 1 байт)
xid (ID транзакции, генерируется клиентом в начале, размер 4 байта)
secs (прошедшее время в секундах с момента запроса получения адреса, может быть 0, размер 2 байта)
flags (поле для флагов, размер 2 байта)
ciaddr (IP адрес клиента, например если он запрашивает продление аренды, размер 4 байта)
yiaddr (IP адрес предложенный сервером клиенту, размер 4 байта)
siaddr (IP адрес сервера, размер 4 байта)
giaddr (IP адрес агента ретрансляции, размер 4 байта)
chaddr (аппаратный адрес клиента (MAC), размер 16 байт)
sname (имя сервера, 64 байта)
file (имя загрузочного файла, может использоваться для загрузки операционной системы по сети, 128 байт)
options (дополнительные опции)

Активный и пассивный режим работы FTP

FTP может работать как в активном режиме так и в пассивном.

В активном режиме клиент выполняет управляющее соединение с сервером, а сервер выполняет соединение с клиентом для передачи данных.
В пассивном управляющее соединение и соединение для передачи данных выполняет сам клиент.

Под управляющим соединением имеется ввиду аутентификация и передача команд.
Управляющее соединение выполняется клиентом в обеих случаях одинаково, со стороны клиента с динамического TCP порта 1024-65535 на порт сервера 21.

В активном режиме после управляющего соединения от клиента, FTP-сервер подключается к динамическому порту клиента 1024-65535 со своего TCP порта 20 для передачи данных.
В пассивном режиме после управляющего соединения от клиента, FTP-сервер сообщает клиенту номер динамического TCP порта 1024-65535 к которому можно подключится клиенту для передачи данных.

Описание типов RAID

Массивы RAID необходимы для повышения надежности хранения данных и увеличения скорости работы с дисками путем объединения нескольких дисков в один большой. RAID массивы могут быть как аппаратные, аппаратно-программные так и программные.

Опишу несколько типов:

RAID 0 (stripe) — Режим только для повышения производительности при чтении/записи не увеличивающий надежность. Пользователю доступен весь объем дисков, при отказе одного из дисков массив обычно разрушается и восстановить данные почти невозможно.

RAID 1 (зеркало) — На все диски запись выполняется синхронно, они полностью дублируют друг друга. Пользователю доступна половина дискового пространства. Повышается производительность только при чтении, зато это очень надежный способ защитить информацию. Минимальное количество дисков — 2.

RAID 10 (RAID 1+0) — Это массив RAID0 из массивов RAID1. Скоростной как RAID0 и надежный как RAID1. Минимальное количество дисков — четыре и их количество должно быть четным. Пользователю доступна половина дискового пространства.
RAID 0+1 — Массив RAID1 из массивов RAID0. Не популярен, так как хуже преимущества по сравнению с RAID 10.

RAID 1E — Похож на RAID10 с использованием нечётного числа дисков и минимальным количеством — 3.

RAID 5 — Доступное пользователю пространство уменьшается на один диск, надежность ниже RAID 1, производительность повышается при чтении и записи как у RAID 0. При отказе одного из дисков, данные могут быть восстановлены. Минимальное количество дисков — 3.

RAID 6 — Похож на RAID 5 в том числе и быстродействию, но чуть более надежный. Доступное пользователю пространство уменьшается на два диска, информация не теряется при отказе двух дисков. Минимальное количество дисков — 4.

Я лично предпочитаю использовать RAID 1 и RAID 6.