From 369565a3ac6492586b27c70a651b2af8e28e220a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 3 Aug 2012 11:53:44 +0100 Subject: Document problems copying long filenames from NTFS to Linux filesystems (RHBZ#845488). (cherry picked from commit 7fa67427c6b2725bdcce52c08511f8813b7bd42e) --- src/guestfs.pod | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/guestfs.pod b/src/guestfs.pod index 9292c001..eb74fbf6 100644 --- a/src/guestfs.pod +++ b/src/guestfs.pod @@ -645,6 +645,28 @@ replacement will work. To resolve the case insensitivity of paths, call L. +=head3 LONG FILENAMES ON NTFS + +NTFS supports filenames up to 255 characters long. "Character" means +a 2 byte UTF-16 codepoint which can encode the most common Unicode +codepoints. + +Most Linux filesystems support filenames up to 255 I. +This means you may get an error: + + File name too long + +when you copy a file from NTFS to a Linux filesystem if the name, when +reencoded as UTF-8, would exceed 255 bytes in length. + +This will most often happen when using non-ASCII names that are longer +than ~127 characters (eg. Greek, Cyrillic) or longer than ~85 +characters (Asian languages). + +A workaround is not to try to store such long filenames on Linux +native filesystems. Since the L format can store unlimited +length filenames, keep the files in a tarball. + =head3 ACCESSING THE WINDOWS REGISTRY Libguestfs also provides some help for decoding Windows Registry -- cgit