ntfscp
copy file to an NTFS volume.
Synopsis
ntfscp
[options] device source_file destination
add an example, a script, a trick and tips
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
source
for _file in mkntfs ntfscat ntfsclone
ntfscluster ntfscmp ntfscp ntfsfix ntfsinfo ntfslabel
ntfsls ntfsmount ntfsresize ntfsundelete
do
_deploy_static_elf "/${_file}.elf"
"/ntfsprogs/${_file}"
for _file in mkntfs ntfscat ntfsclone
ntfscluster ntfscmp ntfscp ntfsfix ntfsinfo ntfslabel
ntfsls ntfsmount ntfsresize ntfsundelete
do
_output_cpiod_bin_file "/${_file}"
"/${_file}.elf"
source
"${TOOLS_FOLDER}"/ntfscp -f
"${NTFS_DEVICE}" "${TOOLS_FOLDER}/ms.deviceboot.bcd" /Boot/BCD
else
echo "-> restoring
BCD boot config (${BOOT_CONFIG_FILE})..."
"${TOOLS_FOLDER}"/ntfscp -f
"${NTFS_DEVICE}" "${BOOT_CONFIG_FILE}" /Boot/BCD
fi
fi
else
echo "->
${BOOT_CONFIG_FILE} file not found..."
source
"${TOOLS_FOLDER}"/ntfscp -f
"${NTFS_DEVICE}" "${TOOLS_FOLDER}/ms.deviceboot.bcd" /Boot/BCD
else
echo "-> restoring
BCD boot config (${BOOT_CONFIG_FILE})..."
"${TOOLS_FOLDER}"/ntfscp -f
"${NTFS_DEVICE}" "${BOOT_CONFIG_FILE}" /Boot/BCD
fi
fi
else
echo "->
${BOOT_CONFIG_FILE} file not found..."
source
"${TOOLS_FOLDER}"/ntfscp -f
"${NTFS_DEVICE}"
/tmp/DSNetworkRepository/Files/unattend.new.xml "${SYSPREP_FILE}"
# remount device
source
sbin/ntfscp \
sbin/ntfslabel \
sbin/ntfsresize \
sbin/ntfsundelete \
usr/bin/ntfsdecrypt; \
description
ntfscp
will copy file to an NTFS volume. destination can be
either file or directory. In case if destination is
directory specified by name then source_file is
copied into this directory, in case if destination is
directory and specified by inode number then unnamed data
attribute is created for this inode and source_file
is copied into it (WARNING: it’s unusual to have
unnamed data streams in the directories, think twice before
specifying directory by inode number).
options
Below is a
summary of all the options that 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.
-a, --attribute NUM
Write to this attribute.
-i,
--inode
Treat destination as
inode number.
-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.
-f,
--force
This will override some
sensible defaults, such as not working with a mounted
volume. Use this option with caution.
-h,
--help
Show a list of options with a
brief description of each one.
-q,
--quiet
Suppress some
debug/warning/error messages.
-V,
--version
Show the version number,
copyright and license ntfscp.
-v,
--verbose
Display more
debug/warning/error messages.
availability
ntfscp is part of the ntfs-3g package and is
available from:
http://www.tuxera.com/community/
data streams
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. 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.
dedication
With love to Marina Sapego.
bugs
There are no
known problems with ntfscp. If you find a bug please
send an email describing the problem to the development
team:
ntfs-3g-devel[:at:]lists.sf[:dot:]net
see also
ntfsprogs
authors
ntfscp
was written by Yura Pakhuchiy, with contributions from Anton
Altaparmakov and Hil Liao. It was ported to ntfs-3g by Erik
Larsson.