Вы могли бы превратить это в хороший вопрос, если вы можете изменить его, чтобы быть более конкретным. Как это, нет правильного ответа. Я, может, считаю это очень широкий вопрос, но другие должны прийти и выразить свое мнение, чтобы мы могли действительно начать, чтобы определить, будут ли подобные вопросы в рамках сайта. Что-то не работает, как вы ожидаете, когда вы попытаетесь запустить удаленную команду без кавычек? Привет @vinc17, все работает, но я могу использовать команду `УПП`. Когда я запускаю его, я всегда получаю эту ошибку `псевдо-терминал не будет выделяться, потому что стандартный ввод не является терминалом.` Пожалуйста, как можно решить эту проблему?

Прибавление чисел легко. Проблема в том, есть много различных чисел, которые нужно сложить.

Сколько дискового пространства будет использовать файл?

Основная идея заключается в том, что файл, содержащий в n байт использует Н байт дискового пространства, плюс немного по некоторым контролировать информацию: файл метаданных (разрешения, штампы и т. д.), и немного накладных расходов на информацию о том, что системе нужно найти, где хранится файл. Однако существует множество осложнений.

Микроскопические осложнений

Думаю, для каждого файла серия книг в библиотеке. Небольших файлов сделать один объем, но большие файлы состоят из многих томов, как энциклопедия. Для того, чтобы быть в состоянии найти файлы, есть каталог, который ссылается на каждый объем. Каждый объем имеет значительные издержки из-за обложки. Если файл очень маленький, эта нагрузка является относительно большой. Также сам каталог занимает немного места.

Немного более технический, в типичном простая файловая система, пространство разделено на блоки. Типичный размер блока составляет 4 КИБ. Каждый файл занимает целое число блоков. Если размер файла не кратен размеру блока, последний блок только частично. Так файл 1 байт и 4096-байтный файл, как занимают 1 блок, а файл 4097 байт занимает два блока. Вы можете наблюдать это с дю команду: если ваша файловая система имеет 4 КИБ размер блока, то ду будет отчет 4 КИБ на 1-байтовый файл.

Если файл большой, то дополнительные блоки нужны только для того чтобы хранить список блоков, которые составляют файл (это косвенные блоки; более сложные файловые системы могут оптимизировать это в виде экстентов). Те не показывают в файле размер как сообщили ЛС-л или GNU ду ... ... очевидны-размер; дю, какие отчеты использование диска в отличие от размеров, не учитывает их.

Некоторые файловые системы пытаются повторно использовать свободное место в последнем блоке, чтобы упаковать несколько файлов решка в одном блоке. Некоторые файловые системы (такие как системы ext4 с ОС Linux 3.8 использовать 0 блоков для мелких файлов (несколько байт), которая полностью помещается в inode.

Макроскопические осложнений

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

Размер, сообщаемые дю может быть меньше, если файл сжимается. Unix-системах традиционно поддерживают грубой форме сжатия: если файл содержит только нулевые байты, то вместо сохранения блока нулей, файловой системы можно вообще опустить этот блок. Файл с опущенных блоков, как это называется разреженный файл. Разреженные файлы не создаются автоматически, если файл содержит большой ряд байтов null, приложение должно организовать для файл становятся редкими.

Некоторые файловые системы, такие как файловая система Btrfs и ZFS в поддержку общего назначения на сжатие.

Дополнительные осложнения

Две основные функции современных файловых систем, таких как ZFS и Btrfs сделать отношения между размером файла и дискового пространства существенно более отдаленные: снимки и дедупликации.

Снимки находятся в замороженном состоянии файловой системы на определенную дату. Файловые системы с поддержкой данной функции может содержать несколько снимков, сделанных в разные даты. Эти снимки взять номер, конечно. С одной стороны, если вы удалите все файлы из текущей версией файловой системы, файловая система не станет пустым, если есть оставшиеся снимки.

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

Дедупликация - это хранилище метод оптимизации, который состоит из избегая хранения идентичных блоков. С типичными данными, ищет дубликаты не всегда стоит усилий. Как в ZFS и ее поддержка дедупликации в качестве дополнительной функции.

Почему из дю отличается от суммы размеры файлов?

Как мы видели выше, размер сообщили ДУ для каждого файла обычно складывается из размеров блоков, и экстенты, используемого файла. Обратите внимание, что по умолчанию, ЛС-л список размеров в байтах, но дю список размеров в КБ, или в 512-байтовых блоков (секторов) на некоторых более традиционных систем (дю -к сил использование килобайт). Большинство современных системах поддержки ЛС-ЛГ и Дю-сек , чтобы использовать “человеко-читаемый” числа, используя К, М, Г, и т. д. достаточно (для КИБ, МИБ, гиб) по мере необходимости.

При запуске ДУ на каталог, он резюмирует использования диска всех файлов в дерево каталогов, включая каталоги сами. Каталог содержит сведения (имена файлов, и указание на то, где метаданных файла), поэтому она требует немного места для хранения. Небольшой каталог будет занимать один блок, большой каталог потребуют дополнительных блоков. Объем хранилища, используемый в каталог, иногда зависит не только от содержащихся в ней файлов, а также порядок, в котором они были вставлены и в котором одни файлы удаляются (с некоторыми файловыми системами, это может оставить отверстия — компромисс между дисковым пространством и производительностью), но разница будет мизерная (дополнительный блок и там и там). При выполнении команды ls-ЛД /некоторые/КАТАЛОГ, КАТАЛОГ, размер указан. (Заметим, что “общая ННН” линии в верхней части на выходе из Общ -л это не связано число, это сумма размеров блоков из перечисленных элементов, выраженная в КБ или секторами).

Имейте в виду, что дю включает Dot-файлов , которые ЛС не показывают, если вы не использовать или -это вариант.

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

На некоторых файловых системах, таких как в ZFS на Linux, дю не доклад в полном объеме дискового пространства, занимаемого расширенные атрибуты файла.

Помните, что если есть точки монтирования в каталоге, дю будет рассчитывать все файлы на эти точки монтирования, а также, если с учетом вариант. Так что если, например, вы хотите общий размер файлов в корневую файловую систему, запустить дю-х /, а не дю /.

Если файловая система смонтирована на непустую директорию, файлы в этой папке спрятаны смонтированной файловой системе. Они по-прежнему занимают свое место, но дю не найдет их.

Удаленные файлы

Когда файл удален, это только удаляет запись каталога, не обязательно самого файла. Необходимы два условия для того, чтобы на самом деле удалить файл и таким образом освободить пространство на диске:

  • Счетчик ссылок на файл, не нужно опускаться до 0: если файл имеет несколько жестких ссылок, удаление не влияет на другие.
  • Пока файл открыт какой-то процесс, данные остаются. Только когда все процессы закрыл файл удален. Выход Термоблок -м или lsof выводит на точку монтирования включает в себя процессы, которые открыли файл на файловой системе, даже если файл удален.
  • даже если процесс был удаленный файл открытым, файл это пространство не может быть истребовано, если этот файл серверной части цикла устройства. losetup -в (как корень) могу вам сказать, что петля устройства в настоящее время созданы и на какой файл. Цикл устройств должен быть разрушен (с losetup -Д) перед дисковое пространство может быть восстановлено.

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

Что означают эти цифры из ДФ точно?

Типичная файловая система содержит:

  • Блоки, содержащие файлы (включая каталоги) данными и метаданными (включая косвенные блоки, и расширенные атрибуты в некоторые файловые системы).
  • Свободные блоки.
  • Блоков, зарезервированных для пользователя root.
  • суперблоки и другой информации управления.
  • Иноды
  • В журнале

Только первый вид сообщает дю. Когда дело доходит до ДФ, что идет в “используется”, “доступно”, а общее число столбцов зависит от файловой системы (конечно, использовал блоки (в том числе непрямые) всегда в “используется” колонки, и неиспользуемые блоки всегда в “наличии” колонки).

Файловой системы в файловые системы ext2 и Ext3/Ext4 и резерв 5% пространства для пользователя root. Это полезно для корневой файловой системы, чтобы сохранить систему, если она заполняется (в частности для лесозаготовки, и пусть системный администратор хранить бит данных в процессе устранения неполадок). Даже для данных разделов, таких как /дома, сохраняя это пространство полезным, потому что почти вся файловая система подвержена фрагментации. Линукс пытается избежать фрагментации (которая замедляет доступ к файлам, особенно на вращающихся механических устройств, таких как жесткие диски), предварительно выделив множество последовательных блоков, когда файл записывается, но если там не так много последовательных блоков, что не может работать.

Традиционные файловые системы, включая файловую систему EXT4, но не в Btrfs, оставляем фиксированное число индексных дескрипторов , когда файловая система создана. Это значительно упрощает конструкцию системы, но имеет недостаток, что количество индексных дескрипторов должен быть рассчитан правильно: слишком много индексных дескрипторов, пространство впустую; слишком мало дескрипторов в файловой системе может не хватить индексных дескрипторов, прежде чем запускать из космоса. Команда ДФ-Я сообщает, сколько индексных дескрипторов используется и сколько доступно (файловые системы, где понятие не применимо, может сообщить 0).

Работает tune2fs -л на Тома, содержащего файловую систему ext2 и Ext3/Ext4 разделов файловой системы передает какую-то статистику, включая общее количество и количество свободных индексных дескрипторов и блоков.

Еще одна особенность, которая может смутить вопрос подразделов (поддерживается в файловой системе Btrfs, и в ЗФС под названием наборов данных). Несколько подразделов в одной плоскости, но имеют разные корни дерева каталогов.

Если файловая система смонтирована по сети (НФС, Самба и т. д.) и сервер экспортирует часть этой системы (например, сервер имеет /домашний файловую систему, и экспорт /дома/боб), то ДФ на клиента, отражает данные по всей файловой системе, а не только на ту часть, которая идет на экспорт и установленный на клиенте.

Что места на моем диске?

Как мы видели выше, общий размер сообщает ДФ не всегда занимает все управляющие данные файловой системы на счет. Использование файловой системы-специальные инструменты, чтобы получить точный размер файловой системы, если это необходимо. Например, с ext2 и Ext3/Ext4 разделов, запустить tune2fs -л и умножить на размер блока блоком графа.

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

На Linux, lsblk представляет хороший обзор доступных томах. Для получения дополнительной информации или если у вас нет lsblk, используют специализированное управление томами или разделами инструменты, чтобы проверить, какие разделы у вас есть. В Linux, есть ЛВС, ВГС, ПВС для ЛВМ, программа fdisk для традиционных ПК-стиле (“МБР”) разделы (а также GPT на последних систем), помощью gdisk для ОПС разделы, подразделы для BSD disklabels, рассталисьи т. д. Под Linux, кошка /proc/перегородок дает краткое резюме. Типовые установки имеют не менее двух разделов или томов, используемой операционной системы: файловая система (иногда больше), и поменять объем.

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

Наконец, обратите внимание, что большинство компьютерных программ используют единицы на основе полномочий 1024 = 210 (потому что программисты любят бинарных и полномочия 2). Так что 1 кб = 1024 Б, 1 МБ = 1048576 Б 1 ГБ = 1073741824, 1 ТБ = 1099511627776 Б, ... официально, эти единицы называются kibibyte КБ, мебибайт МИБ и т. д., но большинство программ просто сообщает K или КБ, м и МБ и т. д. С другой стороны, производители жестких дисков систематически использовать метрику (1000 единиц). Так что 1 ТБ составляет всего 931 GIB или 0.904 Тиб.