Автоматическое монтирование ресурсов при входе пользователя с помощью pam_mount
Для автоматического монтирования разделяемых файловых ресурсов при входе пользователя используется pam модуль pam_mount, предоставляемый пакетом libpam-mount, то есть для автоматического монтирования разделяемых файловых ресурсов на компьютере-клиенте должны быть установлены пакет cifs-utils и libpam_mount:
sudo apt install cifs-utils
Настройка модуля pam_mount осуществляется с помощью конфигурационного файла /etc/security/pam_mount.conf.xml.
При установке пакета libpam_mount вызов модуля pam_mount автоматически вносится в соответствующие pam-сценарии (common-auth, common-session) в каталоге /etc/pam.d.
Описание возможностей модуля pam_mount и формат его конфигурационного файла приведены в руководстве для pam_mount и pam_mount.conf.
/etc/security/pam_mount.conf.xml
<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd"> <!-- See pam_mount.conf(5) for a description. --> <pam_mount> <!-- debug should come before everything else, since this file is still processed in a single pass from top-to-bottom --> <debug enable="1" /> <!-- Volume definitions --> <cifsmount>mount.cifs //%(SERVER)/%(VOLUME) %(MNTPT) -o %(OPTIONS) </cifsmount> <!-- pam_mount parameters: General tunables --> <!-- Описание тома, который должен монтироваться --> <volume fstype="cifs" server="ipa0.ipadomain.ru" path="share1" mountpoint="/media/%(USER)" options="user=%(USER),cruid=%(USER),sec=krb5i" /> <!-- <luserconf name=".pam_mount.conf.xml" /> --> <!-- Note that commenting out mntoptions will give you the defaults. You will need to explicitly initialize it with the empty string to reset the defaults to nothing. --> <mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other" /> <!-- <mntoptions deny="suid,dev" /> <mntoptions allow="*" /> <mntoptions deny="*" /> --> <mntoptions require="nosuid,nodev" /> <logout wait="50000" hup="1" term="1" kill="1" /> <!-- <logout wait="0" hup="no" term="no" kill="no" /> --> <!-- pam_mount parameters: Volume-related --> <mkmountpoint enable="1" remove="true" /> </pam_mount>
Вариант описания тома для монтирования домашних каталогов пользователей (предполагается, что на сервере samba настроен специальный ресурс home):
... <volume fstype="cifs" server="ipa0.ipadomain.ru" path="%(USER)" mountpoint="/home/%(USER)" options="user=%(USER),cruid=%(USER),sec=krb5i" /> ...
При использовании с аутентификацией Kerberos в ЕПП в строке опций монтирования должен быть указан параметр аутентификации sec=krb5i (предпочтительно с точки зрения безопасности, но требует больше ресурсов) или sec=krb5. В этом случае при монтировании будет использоваться текущий кэш Kerberos пользователя.
Для точки монтирования mountpoint должен быть указан отдельный каталог, например: /media/ald_share. Пример:
Привязка точки монтирования
Вы можете привязать точку монтирования к другому каталогу. Затем к монтированной файловой системе можно получить доступ либо через исходную точку монтирования, либо через связанный с ней каталог.
Вот рабочий пример. Мы создадим каталог в нашем домашнем каталоге с именем . Затем мы точку монтирования ISO-образа с новым каталогом в нашем домашнем каталоге.
Мы сможем получить доступ к ISO-образу через исходную точку монтирования и через новый каталог . Опция (связывание) требует имя точки монтирования и имя каталога, к которому она привязана.
MKDIR ISO
sudo mount -B / media / dave / isomnt / iso
ls iso
ls / media / dave / isomnt
CD iso
Ls
cd cde
7.4. Монтирование файловых систем на постоянной основе
До текущего момента мы монтировали все файловые системы вручную. Такой подход вполне приемлем, но файловая система остается смонтированной только до следующей перезагрузки системы. К счастью, существует способ уведомления вашего компьютера о необходимости монтирования определенных файловых систем в процессе загрузки операционной системы.
7.4.1. Файл /etc/fstab
Таблица монтируемых файловых систем, расположенная в файле /etc/fstab , содержит список файловых систем с параметрами, позволяющими монтировать каждую из них в процессе загрузки операционной системы.
Ниже приведен пример файла /etc/fstab .
Добавив в данный файл следующую строку, вы можете автоматизировать процесс монтирования созданной файловой системы.
7.4.2. Команда mount /точка_монтирования
Благодаря добавлению элемента с список монтируемых файловых систем, расположенный в файле /etc/fstab , вы можете использовать упрощенный вариант команды mount . Команда из примера ниже позволяет осуществить поиск информации о файле устройства, представляющем связанный с переданной точкой монтирования раздел жесткого диска, в файле /etc/fstab с помощью утилиты mount .
Монтировать файловые системы как доступные только для чтения
Чтобы начать процесс монтирования, откройте окно терминала, нажав Ctrl + Alt + T или Ctrl + Shift + T на клавиатуре. Оттуда запустите команду lsblk, чтобы просмотреть все блочные устройства на вашем компьютере.
lsblk
Если у вас много петлевых устройств (пакетов Snap), отображаемых в lsblk, запустите lsblk -e 7 вместо этого, чтобы просмотреть подключенные файловые системы без отображения петлевых устройств.
Просмотрите распечатку, которую команда lsblk показывает в терминале, чтобы найти имя раздела, который вы пытаетесь повторно смонтировать как root. В этом руководстве мы будем использовать / dev / sda1. Ваш может отличаться.
Примечание: не можете определить метку раздела файловой системы, которую вы хотите смонтировать как доступную только для чтения? Ознакомьтесь с нашим руководством о том, как найти информацию о жестких дисках в Linux.
После определения метки раздела используйте следующую команду, чтобы смонтировать файловую систему в режиме только для чтения.
Примечание: приведенная ниже команда является примером. Пожалуйста, замените «/ dev / sda1» ниже на метку раздела, который вы планируете монтировать в режиме только для чтения в Linux.
sudo mount -r /dev/sda1 /location/to/mount/partition/
После ввода указанной выше команды ваша файловая система будет монтироваться как доступная только для чтения, и будет невозможно изменить содержимое файловой системы. Он останется в режиме только для чтения до следующей перезагрузки.
Удалить монтирование только для чтения
Если вы решили, что хотите удалить режим только для чтения на смонтированном разделе без перезагрузки, необходимо использовать команду remount.
Примечание: не забудьте заменить «/ dev / sda1» меткой раздела файловой системы, которую вы планируете повторно смонтировать как чтение / запись в Linux.
sudo mount -rw -o remount /dev/sda1 /location/to/mount/partition/
Предполагая, что приведенная выше команда выполняется успешно, файловая система больше не будет монтироваться в режиме только для чтения.
Причина невозможности смонтировать хранилище в TWRP
Первая причина, по-видимому, связана с тем, что внутреннее хранилище вашего устройства зашифровано. В результате TWRP не может расшифровать его на ходу и, следовательно, не может получить доступ к файлам, хранящимся на вашем устройстве.
Это причина, по которой эта ошибка чаще всего возникает, когда вы собираетесь прошить файл с помощью этого восстановления.
В других случаях ваш раздел данных может быть поврежден из-за того, что мигает неправильный файл или файл в неправильном разделе. Во всех этих сценариях ваш TWRP может отображать внутреннее хранилище как имеющее 0 МБ занятого места.
Но не волнуйтесь, это не так, и ваши данные на данный момент могут быть все еще нетронутыми. Итак, с учетом сказанного, вот различные методы исправления невозможности монтировать хранилище в TWRP Recovery.
Монтирование файловых систем ZFS
ZFS автоматически монтирует файловые системы при их создании или начальной загрузке системы. Команда zfs mount необходима только при изменении параметров монтирования, а также при явном монтировании или размонтировании файловых систем.
Команда zfs mount без аргументов используется для отображения всех смонтированных в настоящее время файловых систем под управлением ZFS. Старые точки монтирования не отображаются. Пример:
# zfs mount tank /tank tank/home /tank/home tank/home/bonwick /tank/home/bonwick tank/ws /tank/ws |
Для монтирования всех файловых систем под управлением ZFS используется параметр -a. Старые файловые системы не монтируются. Пример:
# zfs mount -a |
По умолчанию ZFS запрещает монтирование поверх непустого каталога. Для принудительного монтирования поверх непустого каталога необходимо указать параметр -O. Пример:
# zfs mount tank/home/lalt cannot mount '/export/home/lalt': directory is not empty use legacy mountpoint to allow this behavior, or use the -O flag # zfs mount -O tank/home/lalt |
Управление старыми точками монтирования должно осуществляться с использованием старых средств. Попытка применения средств ZFS приводит к ошибке. Пример:
# zfs mount pool/home/billm cannot mount 'pool/home/billm': legacy mountpoint use mount(1M) to mount this filesystem # mount -F zfs tank/home/billm |
При монтировании файловой системы используется ряд параметр монтирования на основе значений свойств, связанных с набором данных. Между свойствами и параметрами монтирования существует следующая корреляция:
- Свойство
-
Параметры монтирования
- devices
-
devices/nodevices
- exec
-
exec/noexec
- readonly
-
ro/rw
- setuid
-
setuid/nosetuid
Параметр монтирования nosuid является псевдонимом для nodevices,nosetuid.
Примеры использования mount
Давайте рассмотрим несколько примеров использования утилиты. Как правило для монтирования нужно выполнить всего два действия
- Создать точку монтирования
- Примонтировать файловую систему
Монтирование USB-накопителя/жесткого диска
В большинстве современных дистрибутивов Linux, например, Ubuntu, USB-накопители автоматически монтируются при подключении, но иногда может потребоваться ручное монтирование устройства. Чтобы смонтировать USB-накопитель, выполните следующие действия.
Создайте точку монтирования
Если USB-накопитель использует устройство /dev/sdd1, его можно смонтировать в директорию /media/usb следующей командой:
Для поиска устройства и типа файловой системы можно воспользоваться любой из следующих команд:
Монтирование файлов ISO
Для монтирования файла ISO используется петлевое (loop) устройство — специальное виртуальное устройство, которое позволяет осуществлять доступ к файлу как к блочному устройству.
Сначала нужно создать точку монтирования в любой желаемой директории:
Смонтируйте файл ISO следующей командой:
Не забудьте заменить /path/to/image.iso на путь к вашему файлу ISO.
Монтирование NFS
Для монтирования системы NFS требуется установить клиент NFS. Установка клиента NFS в Ubuntu и Debian:
Установка клиента NFS в CentOS и Fedora:
Обычно требуется автоматическое монтирование удаленной директории NFS при загрузке. Для этого нужно изменить файл конфигурации /etc/fstab. Откройте его в любом текстовом редакторе, например:
Добавьте в файл следующую строку, заменив сервер:/директория на имя или IP-адрес сервера NFS и экспортируемую директорию:
Смонтируйте ресурс NFS следующей командой:
Technical background information
How Linux manages partitions
Linux uses a virtual filesystem (VFS) to maintain a single tree of files, all spread from ‘/’. When a partition is mounted, it is added to the tree at its mount point.
When a FAT32 partition is mounted at ‘/media/windows’, all access to ‘/media/windows’ and everything below it is transparently handled by the Linux kernel using the ‘vfat’ module. Applications need not know they’re dealing with anything else. However, mounting a partition at a location inside of another mounted partition is unpredictable, unstable, and generally a bad idea.
Every partiton maintains its own free space and internal filesystem, so they can be mounted on other systems and behave properly. (If you have two operating systems or a removable hard disk drive, feel free to test this — it’s hard to break anything, and sharing /home (provided no usernames overlap) and swap between two Linux installations is very convenient)
To see what’s going on behind the scenes, try the ‘df’ and ‘mount’ commands.
CategoryBootAndPartition CategoryCommandLine
Размонтирование файловых систем ZFS
Для размонтирования файловых систем используется подкоманда zfs unmount. В качестве аргументов команда unmount принимает точку монтирования или имя файловой системы.
В следующем примере размонтируется файловая система с указанным именем:
# zfs unmount tank/home/tabriz |
В следующем примере размонтируется файловая система с указанной точкой монтирования:
# zfs unmount /export/home/tabriz |
Выполнение команды unmount в случае активности или занятости системы невозможно. Для принудительного размонтирования файловой системы используется параметр -f. При принудительном размонтировании файловой системы необходимо проверить, что ее содержимое не используется. В противном случае результатом может стать непредсказуемое поведение приложения.
# zfs unmount tank/home/eschrock cannot unmount '/export/home/eschrock': Device busy # zfs unmount -f tank/home/eschrock |
В целях обеспечения обратной совместимости для размонтирования файловых систем ZFS может использоваться старая команда umount. Пример:
# umount /export/home/bob |
Для получения дополнительной информации о команде zfs umount см. zfs(1M).
Сохранение параметров mount после перезагрузки
Для того, что бы устройства при перезагрузки системы монтировались автоматически, необходимо прописать инструкции монтирования в файл /etc/fstab. Файл /etc/fstab содержит список записей в следующем формате:
Например:
/dev/sdb1 /home ext4 defaults 0 0
Подключит устройство /dev/sdb1 (например жесткий диск) в директорию /home
После того как инструкция для mount прописаны в /etc/fstab, что бы проверить правильность написания дайте команду
mount -a
Если команда отработает без ошибок, то все устройства прописанные в /etc/fstab будут подключены, а также изменения не потеряются после перезагрузки.
Монтирование что это?
Монтирование – это подключение диска, раздела, каталога или файла в корневую систему Linux.
Как уже сказано было выше, в ОС «Линукс» имеется общая корневая система. Именно к ней подключаются все устройства и ресурсы, которыми пользуется владелец ПК. Если углубиться в эту сферу более подробно, Windows выполняет процедуры аналогично, но все процесс скрыты от пользователя.
После монтирования определённый раздел становится частью корневой системы, которая всяческими способами пытается сделать свою работу максимально прозрачной. К примеру, после монтирования оперативной памяти или удаленной системной папки пользователь может изучить ее в файловом менеджере. Допускается работа с такими разделами. Она будет аналогична работе, которая касается локального диска.
More technical tips
Symlinking for greater convenience
If navigating to a partition’s mount point seems inconvenient, even with the links on the left of Gnome’s file browser, a link can be placed on the desktop, or anywhere else, for that matter.
Try the following command:
ln -s /media/windows ~/Desktop/
A link to the directory ‘/media/windows’ will be placed on the desktop. Files may be dragged into it, it may be opened, it can be renamed and moved, and if it proves to be annoying, it can be deleted like any other file without risking damage to its contents.
This process is called symlinking because the link created is symbolic. It merely points to the location being referenced.
Unmounting a partition to prevent unwanted access
While it’s easy and effective to set permissions on partitions, there may be times when setting permissions won’t be enough. Sometimes, people who can’t be trusted with important information, such as a term paper, may need access to a system, and modifying the filesystem table may be impractical. When things like this happen, it’s easy to archive data to preserve permissions and stick it on a mounted partition or device, then unmount the device, preventing «accidental» access. (The potentially jokingly malicious user would need to know the filesystem table, and while that information isn’t well hidden, it’s hard to access without drawing attention).
Try the following command to unmount a partition:
sudo umount /media/windows
The partition mounted at ‘/media/windows’ will be unmounted, and attempts to access it will yeild only an empty directory. To bring it back later, either reboot, or simply run the following command.
sudo mount /media/windows
Монтирование ISO-образа
Легко смонтировать ISO-образ, чтобы вы могли получить доступ к его содержимому как части файловой системы.
Это будет работать с любым образом ISO. В этом примере мы используем Tiny Core Linux ISO, потому что он удобно небольшой и быстрый для загрузки. (Небольшой дистрибутив Linux с графическим интерфейсом, размером 18 МБ! Вероятно, у вас больше файлов .mp3.)
В той же директории, что и образ ISO, введите эту команду. Подставьте имя файла ISO, который вы монтируете.
sudo mount -t iso9660 -o loop TinyCore-current.iso / mnt
Поскольку нам нужно использовать вам нужно будет ввести свой пароль.
Опция (type) сообщает какой тип файловой системы мы монтируем. Это файл ISO, поэтому мы предоставляем типа .
Флаг (опции) используется для передачи дополнительных параметров для . Наш параметр это .
Мы используем для принудительного чтобы использовать файл устройства loop для подключения к нашему ISO-образу. Файл устройства цикла позволяет монтировать файл (например, образ ISO) и обрабатывать его так, как если бы он был устройством хранения.
Файлы устройств — это специальные файлы, используемые в качестве интерфейса, поэтому подключенные устройства выглядят так, как если бы они были обычным файлом файловой системы. Это часть всего, что в Linux является философией файлового дизайна.
Существует много разных типов файлов устройств. Мы видели это раньше, когда отметили, что единственная файловая система на этом тестовом компьютере была смонтирована на и называлась .
Чтобы быть более точным, эта файловая система находится на устройстве хранения, подключенном к файловой системе через файл устройства и файловую систему на этом устройстве хранения, смонтированную в .
Конечно, мы должны указать имя ISO-образа и сообщить , где мы хотим файловую систему. Мы выбрали .
ISO-образ смонтирован. Напоминание о том, что ISO-образы всегда монтируются в режиме только для чтения, появляется в окне терминала.
Как его включить?
Итак, если вдруг понадобилось сделать флешку только для чтения, то давайте рассмотрим два способа, которые помогут это совершить:
-
Самый простой — использование уже отмеченного переключателя, находящегося на корпусе самой флешки. Если его у вас нет, то можете сразу перейти ко второму способу. В противном случае просто переведите его в активное положение вручную.
-
Второй способ — подключите устройство к вашему компьютеру или ноутбуку с помощью соответствующего входа. Перейдите в «Мой компьютер» и кликните правой кнопкой мыши по иконке подключённого устройства. Выберите пункт «Свойства» на нужной папке, в появившемся окне установите галочку возле надписи: «Только для чтения». Нажмите «Применить» или ОК, закройте окно. Готово! Но так вы можете запретить запись только для определённой папки, но не для всей флешки.
Создание точки монтирования
Вы можете создавать и использовать свои собственные точки монтирования. Мы собираемся создать один с именем и смонтировать наш ISO-образ на этом. Точка монтирования — это просто каталог. Таким образом, мы можем использовать для создания нашей новой точки монтирования.
sudo mkdir / media / dave / isomnt
Теперь мы можем использовать тот же формат команд, что и раньше, для монтирования нашего ISO-образа. На этот раз мы не будем монтировать его в , мы будем монтировать его в :
sudo mount -r -t iso9660 -o loop TinyCore-current.iso / media / dave / isomnt /
Теперь мы можем получить доступ к смонтированной файловой системе с нашей новой точки монтирования.
ls / media / dave / isomnt / cde / по желанию
Но эти пути становятся очень длинными. Это быстро станет утомительным. Давайте сделаем что-нибудь об этом.
Метки файловой системы
Мы можем использовать опцию (метка) с чтобы узнать, какая метка, если таковая имеется, прикреплена к файловой системе. Метки являются не более чем произвольными именами. У них нет функционального назначения.
Мы используем опцию (type), чтобы запросить для создания отчетов только для файловых систем .
mount -l -t vfat
Вы найдете этикетку в квадратных скобках в конце списка. Ярлык для этого дисковода — NORTUN.
Мы можем получить доступ к дисководу гибких дисков через точку монтирования .
кд / минт
Ls
ls -l AMATCH.C
Дискета содержит файлы с исходным кодом на языке Си . Отметка даты одного файла показывает, что он был последний раз изменен в октябре 1992 года. Вероятно, он старше, чем многие наши читатели. (Излишне говорить, что значение NORTUN как ярлыка теряется в глубине веков.)
Если мы повторим нашу команду по чтобы вывести список файлов устройств sd, мы увидим, что теперь их два.
дф | grep / dev / sd
Наш дисковод гибких дисков выглядит так, как мы ожидали, в . Файловая система на дискете в дисководе смонтирована в .
Чтобы размонтировать дискету, мы используем и передаем ей файл устройства в качестве параметра.
sudo umount / dev / sdb
Как узнать имя диска для монтирования
Чтобы смонтировать диск (или файл образа) достаточно указать имя устройства и папку, куда его смонтировать (где будут доступны файлы с этого диска). Как мы уже выяснили, не нужно даже указывать тип файловой системы.
Но чтобы смонтировать нужный диск, нужно правильно указать его название или название его раздела.
Отсюда возникает вопрос, как узнать имя раздела для монтирования? Устройства в Linux имеют имена вида /dev/*. Большинство дисков и USB накопителей имеют имена вида /dev/sd*, где в качестве * (звёздочки) используются буквы от a и далее, то есть b, c, d… Номер буквы соответствует порядковому номеру диска в системе. Если диск разбит на разделы, то после буквы идёт цифра раздела, например, /dev/sda1, /dev/sda2 и так далее. Если диск не разбит на разделы, то его можно смонтировать по имени без цифры, например, /dev/sda. Если же диск разбит на разделы, то нужно указать его имя с цифрой раздела, например, /dev/sda3.
В зависимости от используемой технологии дисков, у них могут быть другие имена. Пример имени диска NVMe: /dev/nvme0n1. В этом случае нумерация разделов также не подчиняется описанным выше правилам, первый и второй разделы имеют имена /dev/nvme0n1p1 и /dev/nvme0n1p2 соответственно.
Итак, необходимо правильно определить имя диска (или имя раздела, если диск разбит на разделы).
Обзорную информацию о дисках в системе может дать команда:
smartctl --scan
Пример вывода:
/dev/sda -d scsi # /dev/sda, SCSI device /dev/sdb -d sat # /dev/sdb , ATA device /dev/nvme0 -d nvme # /dev/nvme0, NVMe device
Эта команда показала, что в системе есть диски трёх типов: SCSI (внутренний жёсткий диск), , ATA (жёсткий диск, подключённый по USB переходнику к компьютеру), NVMe (внутренний твердотельный диск).
На самом деле, вывод команды неполный (пропущена USB флешка) и в нём полностью отсутствует информация о разделах. Тем не менее она может помочь вам сориентироваться в присутствующих на вашей системе дисках.
Хорошим вариантом является следующая программа:
fdisk -l
Она выводит информацию о каждом диске и каждом разделе. В информации присутствует модель диска, размер и тип разделов — основываясь на этих данных можно найти название нужного раздела.
Если вы всё равно не можете разобраться, то со съёмными носителями (внешними USB дисками и флешками), вы можете поступить так: выполнить команду fdisk -l до подключения диска, затем подключить диск/флешку, выполнить команду fdisk -l ещё раз и посмотреть, какой диск добавился.
Если диск монтируется автоматически, то его имя можно увидеть с помощью команда мониторинга:
findmnt -p
Ещё одна команда, показывающая обзорную информацию об именах дисках, их файловых системах, ярлык и занятое пространство (в процентах) и доступный объём свободного места (в гигабайтах):
lsblk -f
Возможно вы сможете найти полезную информацию в LABEL разделов, чтобы показать сразу все разделы, выполните:
blkid
Если вы уже почти определились с разделом и хотите подтвердить свою правоту, то информацию по конкретному разделу можно получить командой вида:
blkid /dev/РАЗДЕЛ
Пример вывода:
/dev/sdb4: BLOCK_SIZE="512" UUID="CA966DBC966DA9A1" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="19fe120d-27b7-40a1-87a0-010d03a2f20e"
Команда file также может рассказать много интересного про раздел:
file -sL /dev/РАЗДЕЛ
Пример вывода:
/dev/sdb4: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 63, heads 255, hidden sectors 1323008, dos < 4.0 BootSector (0x80), FAT (1Y bit by descriptor); NTFS, sectors/track 63, sectors 248745983, $MFT start cluster 786432, $MFTMirror start cluster 2, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number 0ca966dbc966da9a1; contains bootstrap BOOTMGR
Примечания[править]
- Важные параметры SMART
В таблице смотрим колонку RAW_VALUE у параметров с ID №№ 5, 196, 197 и 198:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE … 5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0 … 196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0 197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0030 200 200 000 Old_age Offline - 0 …
Ненулевые Reallocated_Sector_Ct и Reallocated_Event_Count свидетельствуют о физических сбоях, такой диск лучше заменить.
Current_Pending_Sector — число секторов (блоков) с ошибкой чтения. Такой сектор будет возвращён в «хорошие» после успешной записи в него, а в случае неудачной записи за время таймаута он будет переназначен на резервный и контроллер увеличит счётчик Reallocated_Sector_Ct.
Offline_Uncorrectable — блоки, ошибки на которых контроллер диска не смог исправить.
- Время задержки
Таймауты SCT ERC контроллера диска задают время задержек, при которых блок будет помечен сбойным:
- помечается блок, который не прочитан за время SCT ERC Read Timeout;
- переназначается на резервный блок, который не записан за время SCT ERC Write Timeout (и увеличивается счётчик SMART ).
Посмотреть и установить эти таймауты можно командой smartctl -l scterc — изменение таймаутов доступно не на всех HDD: на десктопных изменение таймаутов заблокировано в прошивке.
По умолчанию (на заводе) установлено время 70 секунд.