SSD: обрезка для разных файловых систем

Скорее нет

Причина в том, что Python не поддерживает работу с повышенными привилегиями. Худший случай - редактирование системных файлов.

Сравните

sudo sed -i -e "/ \ # LXC_DOMAIN / s / \ # //" / etc / default / lxc-net

с:

out = subprocess.run ('' 'sudo sed -i -e "/ \ # LXC_DOMAIN / s / \ # //" / etc / default / lxc-net' '', shell = Верно, stdout = subprocess.PIPE, stderr = subprocess.STDOUT, env = {"PATH": "/ usr / bin"})

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

1
10.08.2017, 03:19
1 ответ

Обрезка файловой системы состоит из двух шагов:

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

Шаг 2 можно выполнить в любой операционной системе, которая может взаимодействовать с флэш-накопителем. Но шаг 1 требует знания файловой системы. Заставить fstrimработать — единственное решение, и более вероятно, что кто-то заставит его работать для BeFS на Haiku, чем на какой-либо другой ОС.

0
28.01.2020, 00:51

Теги

Похожие вопросы