размеры файловой системы stat

С stat 8.13 на Linux на Debian – среди многих других – предлагаются следующие FORMAT-директивы ( --format= ):

В сочетании с --file-system ( -f ):

  • %s Размер блока (для более быстрой передачи)
  • %S Фундаментальный размер блока (для количества блоков)

Вопрос (ы) : Что именно имеется в виду?

Лучше всего предположить, что %s , %S равно %b (отображение в блоках) и %B (размер блока отображения), где последние для файлов, а первые два – для файловых систем. Это верно?

  • Что вы можете сделать с файлом без запуска отметки «Изменить»?
  • Проверьте формат файловой системы с помощью BusyBox (stat -f и df -T не работают)
  • получить исходную дату создания html-файла
  • Рождение пуст на ext4
  • И «stat -f» и «cat / etc / fstab» показывают идентификаторы файловой системы?
  • Когда «relatime» сделал дефолт?
  • Список файлов с меткой времени с эпохи
  • Как проверить групповые разрешения файла
  • One Solution collect form web for “размеры файловой системы stat”

      %S fundamental block size (for block counts) 

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

    Например,

     $ echo > a # create a file containing a single byte $ du -ha # see how much disk space it's using 4.0K a $ stat -f -c '%S' . # see what stat thinks the block size is 4096 $ tune2fs -l /dev/mydrive | grep '^Block size' 4096 

    Я не уверен на 100%, что он всегда работает так. Например, я ожидаю, что он также может решить распечатать 512 или 1024 , даже если размер базового блока отличается, если stat -c %b FILE * stat -f -c %S FILE = du --block-size=1 FILE , Точная реализация будет зависеть от файловой системы.


     %s block size (for faster transfers) 

    предлагает количество байтов, которые вы должны читать за раз, если вы копируете большие файлы, например, что вы должны использовать в качестве параметра bs (blockize) при использовании dd . Но в системах, которые я проверил, он всегда печатает 4096 , даже если более крупные значения могут быть быстрее. См. Есть ли способ определить оптимальное значение параметра bs для dd? для более подробного обсуждения этого.


    Технически эта информация (и вся информация из stat -f ) поступает из системного вызова statvfs .

    %s соответствует полю f_bsize , а %Sf_frsize .

    Таким образом, вы можете изучить их точные значения, начиная со страницы statvfs man

      unsigned long f_bsize; /* Filesystem block size */ unsigned long f_frsize; /* Fragment size */ 
    Linux и Unix - лучшая ОС в мире.