GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでのファイル名の長さの制限?

解決策 1:

ファイル システムの比較に関するウィキペディアのページを参照してください。特に列 ファイル名の最大長 を参照してください。 .

ファイル名の長さの制限は次のとおりです。 一般的なファイル システム:

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

解決策 2:

ここで、パスの長さの制限がシステムヘッダーにあることを読みました。ファイル名の長さ制限もあります。私のシステムではファイルです:

  /usr/src/linux-headers-2.6.38-10/include/linux/limits.h

および C 言語の定義:

  #define NAME_MAX         255    /* # chars in a file name */
  #define PATH_MAX        4096    /* # chars in a path name including nul */

解決策 3:

<ブロック引用>

Linux にファイル名またはパスの長さの制限はありますか?

はい、ファイル名とパス名の長さは次のように制限されています:

  • WerkkreWが述べたファイルシステムの制限;
  • linux/limits.h で定義された定数 sfp の記載どおり

これらのプロパティを動的に取得するには:

  • 関数 pathconf を使用する と fpathconf Michael Aaron Safyan の提案
  • dogbane で説明されているように、ファイル名 (またはパス名) をどんどん長く作成してください
  • コマンド getconf を使用します Linux でも利用できる tim の提案:

    $ getconf NAME_MAX /mnt/sda2/
    255
    $ getconf PATH_MAX /mnt/sda3/
    4096
    

解決策 4:

時間を節約するため (そして記憶に定着させるため):

ext2、ext3、ext4、zfs:パス名の制限なし。 255 バイトのファイル名制限。

解決策 5:

これらはファイルシステム名の長さです。 「linux」自体にもいくつかあります。たとえば、bits/stdio_lim.h から:

# define FILENAME_MAX 4096

Linux
  1. Linux ファイル記述子の制限はどのように機能しますか?

  2. Linux でゲートウェイ IP アドレスを見つける方法

  3. Linux で「書き込まれた総バイト数」を測定する

  1. Linuxでユーザーが実行するプロセスに制限を設定する方法

  2. OracleLinuxでMySQLマルチマスターレプリケーションを構成する方法

  3. OpenBSD:サブネット外のゲートウェイ (Linux で動作)

  1. Linuxでfdiskを使用してパーティションを管理する

  2. Linuxでドライブをマウントするさまざまな方法?

  3. LinuxのPingコマンドを例で説明