Solusi 1:
Lihat halaman Wikipedia tentang perbandingan sistem file, terutama di kolom Panjang nama file maksimum .
Berikut beberapa batas panjang nama file dalam sistem file populer:
BTRFS 255 bytes
exFAT 255 UTF-16 characters
ext2 255 bytes
ext3 255 bytes
ext3cow 255 bytes
ext4 255 bytes
FAT32 8.3 (255 UCS-2 code units with VFAT LFNs)
NTFS 255 characters
XFS 255 bytes
Solusi 2:
Saya pernah membaca di sini bahwa batas panjang jalur ada di header sistem. Batas panjang nama file juga ada. Di sistem saya itu file:
/usr/src/linux-headers-2.6.38-10/include/linux/limits.h
dan C-lang mendefinisikan:
#define NAME_MAX 255 /* # chars in a file name */
#define PATH_MAX 4096 /* # chars in a path name including nul */
dan beberapa lagi.
Solusi 3:
Apakah ada batasan nama file atau panjang jalur di Linux?
Ya, panjang nama file dan nama path dibatasi oleh :
- batasan sistem file seperti yang dinyatakan oleh WerkkreW;
- konstanta yang didefinisikan dalam
linux/limits.h
seperti yang dinyatakan oleh sfp.
Untuk mendapatkan properti ini secara dinamis:
- Gunakan fungsi
pathconf
danfpathconf
seperti yang diusulkan oleh Michael Aaron Safyan - Buat nama file (atau pathname) lebih panjang dan lebih panjang seperti yang dijelaskan oleh dogbane
-
Gunakan perintah
getconf
seperti yang diusulkan oleh tim yang juga tersedia di Linux:$ getconf NAME_MAX /mnt/sda2/ 255 $ getconf PATH_MAX /mnt/sda3/ 4096
Solusi 4:
Dan demi menghemat waktu (dan menautkannya ke memori):
ext2, ext3, ext4, zfs:tidak ada batasan nama path; Batas nama file 255 byte.
Solusi 5:
Itu adalah panjang nama sistem file. "linux" sendiri juga memiliki beberapa. Misalnya, dari bits/stdio_lim.h:
# define FILENAME_MAX 4096