Вы могли бы использовать GNU find
:
find . -type f -printf "%m\t%f\n"
Чтобы получить полный путь к файлу, используйте директиву p
вместо f
:
find . -type f -printf "%m\t%p\n"
Чтобы ограничить результаты до текущего каталога, укажите -maxdepth
:
find . -maxdepth 1 -type f -printf "%m\t%f\n"
Если вам нужны результаты и для файлов и для каталогов, удалите предикат -тип
:
find . -printf "%m\t%p\n"
Я автор этих инструкций на chtaube.eu :)
dd немного непоследователен, когда речь идет о размерах: bs=1M
определяет размер блока в 1 мебибайт, что означает 1024*1024 байта. 30 мебибайт равен 30*1024*1024 = 31457280 байт. В окончательном выводе dd
используется десятичный мегабайт с 1 Мб = 1000*1000 байт. Поэтому он отображается как 31 Мб. Так что беспокоиться не о чем. Я консервативно выбрал размер несколько меньше 32 мегабайт, чтобы он поместился на USB флешку, рекламируемую как "32 Мб".
Я только что проверил этот вопрос с parted
на Arch Linux и Debian и смог воспроизвести его.
По-моему, это выглядит как косметическая проблема parted
, так как вывод команды p
(печать) показывает "пустую" файловую систему, в то время как раздел на самом деле корректно создан как FAT16.
Вы можете проверить это с помощью fdisk -l FreeDos-img
так же, как я сделал это в том типичном скрипте ниже:
ct@darkstar ~/tmp % dd if=/dev/zero of=Freedos.img bs=1M count=30
30+0 records in
30+0 records out
31457280 bytes (31 MB) copied, 0.150141 s, 210 MB/s
ct@darkstar ~/tmp % parted Freedos.img
WARNING: You are not superuser. Watch out for permissions.
GNU Parted 3.1
Using /home/ct/tmp/Freedos.img
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit %
(parted) mklabel msdos
(parted) mkpart primary fat16 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? i
(parted) set 1 boot on
(parted) p
Model: (file)
Disk /home/ct/tmp/Freedos.img: 100%
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 0.00% 100% 100% primary boot, lba
(parted) q
ct@darkstar ~/tmp % fdisk -l Freedos.img
Disk Freedos.img: 30 MiB, 31457280 bytes, 61440 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0007cae1
Device Boot Start End Blocks Id System
Freedos.img1 * 1 61439 30719+ e W95 FAT16 (LBA)
ct@darkstar ~/tmp %
Так что на вашей стороне не должно быть ничего плохого. В любом случае, спасибо, что указал на это. Я взгляну глубже на поведение parted
и соответственно обновлю руководство на своей странице.