Вот, сейчас сделал:
[dimich tmp]$ dd if=/dev/zero of=fat.img bs=1048576 count=4
4+0 records in
4+0 records out
4194304 bytes (4,2 MB) copied, 0,00844826 s, 496 MB/
[dimich tmp]$
[dimich tmp]$ mkfs.msdos ./fat.img
mkfs.msdos 3.0.1 (23 Nov 2008)
[dimich tmp]$
[dimich tmp]$ sudo mount -o loop,iocharset=utf8,codepage=866 -t vfat ./fat.img /mnt/img/
[dimich tmp]$ sudo touch "/mnt/img/This is long filename.txt"
[dimich tmp]$ sudo touch "/mnt/img/Длинное имя в кириллице.txt"
[dimich tmp]$ sudo umount /mnt/img/
[dimich tmp]$
[dimich tmp]$ hexedit ./fat.img
...
000019F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00001A00 42 66 00 69 00 6C 00 65 00 6E 00 0F 00 43 61 00 Bf.i.l.e.n...Ca.
00001A10 6D 00 65 00 2E 00 74 00 78 00 00 00 74 00 00 00 m.e...t.x...t...
00001A20 01 54 00 68 00 69 00 73 00 20 00 0F 00 43 69 00 .T.h.i.s. ...Ci.
00001A30 73 00 20 00 6C 00 6F 00 6E 00 00 00 67 00 20 00 s. .l.o.n...g. .
00001A40 54 48 49 53 49 53 7E 31 54 58 54 20 00 00 4D 8D THISIS~1TXT ..M.
00001A50 4A 3A 4A 3A 00 00 4D 8D 4A 3A 00 00 00 00 00 00 J:J:..M.J:......
00001A60 43 74 00 00 00 FF FF FF FF FF FF 0F 00 BF FF FF Ct..............
00001A70 FF FF FF FF FF FF FF FF FF FF 00 00 FF FF FF FF ................
00001A80 02 20 00 3A 04 38 04 40 04 38 04 0F 00 BF 3B 04 . .:.8.@.8....;.
00001A90 3B 04 38 04 46 04 35 04 2E 00 00 00 74 00 78 00 ;.8.F.5.....t.x.
00001AA0 01 14 04 3B 04 38 04 3D 04 3D 04 0F 00 BF 3E 04 ...;.8.=.=....>.
00001AB0 35 04 20 00 38 04 3C 04 4F 04 00 00 20 00 32 04 5. .8.<.O... .2.
00001AC0 84 8B 88 8D 8D 8E 7E 31 54 58 54 20 00 64 85 8D ......~1TXT .d..
00001AD0 4A 3A 4A 3A 00 00 55 8D 4A 3A 00 00 00 00 00 00 J:J:..U.J:......
00001AE0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
...