NTFSCP(8)

๐Ÿ’… NTFSCP(8) โ€” the ntfscp girlie's guide ๐Ÿ’…

okay so this is a System Manager's Manual page, section 8, and it's all about ntfscp. bestie, buckle up, we're copying files onto NTFS volumes and it's gonna slay โœจ


๐ŸŒธ NAME ๐ŸŒธ

ntfscp โ€” copy file to an NTFS volume. that's it. that's the whole job. iconic honestly ๐Ÿซถ


๐ŸŽ€ SYNOPSIS ๐ŸŽ€

ntfscp [options] device source_file destination

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

so ntfscp will copy file to an NTFS volume. simple. destination can be either file or directory, and the vibes change depending on which:

  • if destination is a directory specified by name, then source_file gets copied into this directory. cozy, normal, we love her ๐Ÿ’–
  • if destination is a directory and specified by inode number, then an unnamed data attribute is created for this inode and source_file is copied into it.
โš ๏ธ WARNING bestie listen to me: it's unusual to have unnamed data streams in the directories. think twice before specifying directory by inode number. like, actually think. twice. ๐Ÿ˜ญ

โœจ OPTIONS โœจ

okay so here's the whole menu of what ntfscp accepts. nearly all options have two equivalent names โ€” the short name is preceded by - and the long name is preceded by --. any single letter options that don't take an argument can be combined into a single command, e.g. -fv is equivalent to -f -v. long named options can be abbreviated to any unique prefix of their name. iykyk ๐Ÿ’…

  • -a, --attribute NUM โ€” write to this attribute. that's the one. ๐ŸŽฏ
  • -i, --inode โ€” treat destination as inode number. (remember the warning above, bestie, i'm not repeating myself... okay i literally just repeated myself but whatever)
  • -m, --min-fragments โ€” minimize fragmentation when allocating space to the attribute. mostly useful when creating big files. no crumbs left behind ๐Ÿ“
  • -N, --attr-name NAME โ€” write to attribute with this name.
  • -n, --no-action โ€” use this option to make a test run before doing the real copy operation. volume will be opened read-only and no write will be done. rehearsal era, no commitment ๐Ÿ’€
  • -f, --force โ€” this will override some sensible defaults, such as not working with a mounted volume. use this option with caution. she's a little reckless, respect her ๐Ÿ™ˆ
  • -h, --help โ€” show a list of options with a brief description of each one. the classic "help me help you" moment.
  • -q, --quiet โ€” suppress some debug/warning/error messages. shhh. ๐Ÿคซ
  • -t, --timestamp โ€” copy the modification time of source_file to destination. this is not compatible with --attr-name and --attribute. pick a lane, bestie ๐Ÿšซ
  • -V, --version โ€” show the version number, copyright and license ntfscp. the receipts โœจ
  • -v, --verbose โ€” display more debug/warning/error messages. the opposite of quiet, she's a talker ๐Ÿ—ฃ๏ธ

๐ŸŒˆ DATA STREAMS ๐ŸŒˆ

okay this part is lowkey the most important lore drop so pay attention ๐Ÿงš

all data on NTFS is stored in streams, which can have names. a file can have more than one data streams, but exactly one must have no name. the size of a file is the size of its unnamed data stream.

usually when you don't specify stream name you are access to unnamed data stream. but if you want access to named data stream you need to add ":stream_name" to the filename. for example: by opening "some.mp3:artist" you will open stream "artist" in "some.mp3". ๐Ÿ’–

but windows usually prevent you from accessing to named data streams, so you need to use some program like FAR or utils from cygwin to access named data streams. windows said no โŒ named streams said yes โœ…


๐Ÿ”ฅ EXAMPLES ๐Ÿ”ฅ

copy new_boot.ini from /home/user as boot.ini to the root of an /dev/hda1 NTFS volume:

ntfscp /dev/hda1 /home/user/new_boot.ini boot.ini

copy myfile to C:\some\path\myfile:stream (assume that /dev/hda1 letter in windows is C):

ntfscp -N stream /dev/hda1 myfile /some/path

ate. no cap. ๐Ÿซถ


๐Ÿ’€ BUGS ๐Ÿ’€

there are no known problems with ntfscp. flawless, unbothered, moisturised, in her lane. ๐Ÿ‘‘

but if you find a bug please send an email describing the problem to the development team: ntfs-3g-devel@lists.sf.net โ€” they want the tea โ˜•


๐Ÿ‘‘ AUTHORS ๐Ÿ‘‘

ntfscp was written by Yura Pakhuchiy, with contributions from Anton Altaparmakov and Hil Liao. it was ported to ntfs-3g by Erik Larsson. the founding mothers and fathers of the copy function, we stan ๐ŸŒŸ


๐Ÿ’œ DEDICATION ๐Ÿ’œ

with love to Marina Sapego. ๐ŸŽ€ that's so sweet i'm literally crying ๐Ÿ˜ญ


โญ AVAILABILITY โญ

ntfscp is part of the ntfs-3g package and is available from: https://github.com/tuxera/ntfs-3g โ€” go get her ๐Ÿ›๏ธ


๐ŸŽ€ SEE ALSO ๐ŸŽ€

  • ntfsprogs(8) โ€” go read that next, bestie, it's giving expanded universe ๐ŸŒŒ

and that's the whole page!! this gorgeous piece of documentation is from ntfs-3g 2026.9.28, dated September 2007, and it's NTFSCP(8) in the System Manager's Manual. slay, bye, go copy some files ๐Ÿ’…โœจ๐Ÿฆ‹

๐Ÿ“ฆ where this page comes from