Şifrelenmiş dizinlerde, Ubuntu'nun (en az 15.10) dosya adı bayt limiti 143 B - ext4 dosya sistemi 255 B limitinden çok daha küçük gibi görünüyor. ve artırmanın bir yolu var mı?
Şifrelenmiş dizinlerde, Ubuntu'nun (en az 15.10) dosya adı bayt limiti 143 B - ext4 dosya sistemi 255 B limitinden çok daha küçük gibi görünüyor. ve artırmanın bir yolu var mı?
Yanıtlar:
Ubuntu sınırı nerede belirlenir,
Bir dosya sistemi sınırıdır. Tüm "ext" 255 karakterlik bir limite sahiptir. İşte birçok dosya sisteminin bir listesi . ReiserFS 4032 bayt gösterir (ancak Linux VFS nedeniyle 255 karakterle sınırlıdır ).
Şifrelenmiş dosya için 144 karakter sınırı yanlış. Bu 143 (olup eCryptfs araçlardan yaratıcısı ). Şifreleme için kalan karakterlere ihtiyaç vardır, bu nedenle üstesinden gelemezsiniz (şifreleme 143 karakterden fazla dosyalarda çalışmaz).
ve arttırmanın bir yolu var mı?
Hayır
Biraz daha bilgi. Bunlar karakterlerde dosya ve dizin boyutu sınırını gösterecektir:
getconf NAME_MAX /dev/sda
getconf PATH_MAX /dev/sda
/usr/include/linux/limits.h
Bu 2 değişkenin bildirimi için bakınız :
#ifndef _LINUX_LIMITS_H
#define _LINUX_LIMITS_H
#define NR_OPEN 1024
#define NGROUPS_MAX 65536 /* supplemental group IDs are available */
#define ARG_MAX 131072 /* # bytes of args + environ for exec() */
#define LINK_MAX 127 /* # links a file may have */
#define MAX_CANON 255 /* size of the canonical input queue */
#define MAX_INPUT 255 /* size of the type-ahead buffer */
#define NAME_MAX 255 /* # chars in a file name */
#define PATH_MAX 4096 /* # chars in a path name including nul */
#define PIPE_BUF 4096 /* # bytes in atomic write to a pipe */
#define XATTR_NAME_MAX 255 /* # chars in an extended attribute name */
#define XATTR_SIZE_MAX 65536 /* size of an extended attribute value (64k) */
#define XATTR_LIST_MAX 65536 /* size of extended attribute namelist (64k) */
#define RTSIG_MAX 32
#endif
Bu değeri değiştirebilirsiniz, ancak kullanılabilir olması için en azından fopen () işlevini yeniden derlemeniz gerekir. Ve diğer işletim sistemleriyle hiçbir uyumluluk olmayacaktır.
Cevabımı şöyle değiştiriyorum: Evet yapabilirsin ama lütfen yapma :)