fstrim выравнивает более половины размера раздела, даже если раздел монтируется с отбрасыванием

Когда я установил свой SSD, я просто смонтировал его и не потел. Однако сегодня я читал о плюсах и минусах использования fstrim вместо этого и решил запустить программу, чтобы получить представление о том, сколько времени это займет (все еще с моими разделами, установленными с discard ). Команда заняла несколько минут на обоих моих корневых и домашних разделах. Для моего домашнего раздела я использовал -v и получил следующее:

 $ sudo fstrim -v /home /home: 137494052864 bytes were trimmed 

Это больше, чем количество свободного места на разделе!

 $ df -h /home Filesystem Size Used Avail Use% Mounted on /dev/sda2 206G 78G 118G 40% /home 

Последующие пробеги заканчиваются менее чем за секунду, например:

 $ sudo fstrim -v /home /home: 0 bytes were trimmed 

Разумеется, если бы у меня всегда был раздел, монтированный с discard , fstrim не должен обрезать большое количество данных? Опция discard определенно включена, вот соответствующие строки fstab :

 UUID=xxxxxxxx... / ext4 noatime,discard,errors=remount-ro 0 1 UUID=xxxxxxxx... /home ext4 noatime,discard,errors=remount-ro 0 2 

И mount выходные линии:

 /dev/disk/by-uuid/xxxxxxxx... on / type ext4 (rw,noatime,discard,errors=remount-ro,stripe=128,data=ordered) /dev/sda2 on /home type ext4 (rw,noatime,discard,errors=remount-ro,stripe=128,data=ordered) 

SSD – это TOSHIBA THNSNS256GMCP. Почему это происходит?

  • Невозможно включить TRIM на SSD
  • SSD: как часто я должен делать fstrim?
  • Есть ли TRIM на Samsung 840 Pro с версией прошивки DXM06B0Q?
  • Настройка RAID-1 mdadm на SSD и HDD
  • Почему fstrim, похоже, не обрезает блоки данных на btrfs (+ ecrypts)?
  • Как запустить SSD trim fstrim на btrfs при установке нескольких подвоев?
  • Обрезка с LVM и dm-crypt
  • Кэш LVM и TRIM
  • One Solution collect form web for “fstrim выравнивает более половины размера раздела, даже если раздел монтируется с отбрасыванием”

    Две вещи здесь:

    1. fstrim обрезает все данные, которые нераспределены в файловой системе (ну, не все данные, только блоки данных, которые не выделены, я не думаю, что неиспользуемые части таблицы inode или части не полностью используемых блоков обрезаются), независимо от того, используется ли discard или нет. fstrim не может знать, какой из этих нераспределенных блоков был «обрезан» или еще не был в прошлом, но он (на самом деле ядро, вся работа fstrim выполняется в FITRIM ioctl ), однако отслеживает, какая группа блоков была обрезана и не будет обрезать их снова, если с тех пор не было никакого освобождения в этой группе блоков, если вы не запрашиваете FITRIM с меньшей минимальной длиной (от проверки кода ext4, это может быть другим для других файловых систем), которое объясняет, почему вы получаете 0 при следующем запуске.

      Обратите внимание, что это не вредит обрезке блока, который уже был обрезан. Это просто говорит SSD, что он может делать все, что захочет, с ним (например, стереть его, чтобы он мог быть готов снова использовать что-то еще).

    2. В выводе df «доступное» значение не учитывает пространство, зарезервированное для root , вы заметите, что 206 – 76 – 130G, а не 118G. 12G (около 5%) зарезервированы. См. tunefs -m чтобы изменить, сколько зарезервировано.
    Interesting Posts

    Инструмент для уменьшения размера раздела и создания нового из командной строки

    Clang / LLVM устанавливается в Slackware?

    Asus G750JH с предустановленной Windows 8 – я хочу с двойной загрузкой ArchLinux

    Почему «.» Требуется скопировать файл из одного каталога в другой каталог?

    Каковы все эти «sd» устройства в / proc / devices

    Объединение частей оригинального Android с новыми источниками для создания нового изображения

    emacs python2.7

    Как скопировать или переместить в папку в Nautilus 2.30.1, как в проводнике Windows?

    разрешение на запись в папку

    Как исправить ошибку загрузки UUID-диск не готов или нет, где не удалось загрузить microcode_amd.bin и HDIO_GET_IDENTITY?

    защищенная паролем доля samba

    Экспорт данных netstat из терминала в файл csv

    Могу ли я установить ubuntu на образ Virtualbox и использовать его где угодно?

    tunnel rsync: // протокол по ssh

    не может подключиться к dnsmasq на локальной машине, порт открыт, но соединение отказано

    Linux и Unix - лучшая ОС в мире.