@item auto
If the copy-on-write operation is not supported then fall back
to the standard copy behavior.
+
+@item never
+Disable copy-on-write operation and use the standard copy behavior.
@end table
This option is overridden by the @option{--link}, @option{--symbolic-link}
static char const *const reflink_type_string[] =
{
- "auto", "always", NULL
+ "auto", "always", "never", NULL
};
static enum Reflink_type const reflink_type[] =
{
- REFLINK_AUTO, REFLINK_ALWAYS
+ REFLINK_AUTO, REFLINK_ALWAYS, REFLINK_NEVER
};
ARGMATCH_VERIFY (reflink_type_string, reflink_type);
selected by --sparse=auto. Specify --sparse=always to create a sparse DEST\n\
file whenever the SOURCE file contains a long enough sequence of zero bytes.\n\
Use --sparse=never to inhibit creation of sparse files.\n\
+"), stdout);
+ fputs (_("\
\n\
When --reflink[=always] is specified, perform a lightweight copy, where the\n\
data blocks are copied only when modified. If this is not possible the copy\n\
fails, or if --reflink=auto is specified, fall back to a standard copy.\n\
+Use --reflink=never to ensure a standard copy is performed.\n\
"), stdout);
emit_backup_suffix_note ();
fputs (_("\
cp --reflink=auto --sparse=always "$a_other" b || fail=1
test -s b || fail=1
+# --reflink=auto should be overridden by --reflink=never
+cp --reflink=auto --reflink=never "$a_other" b || fail=1
+test -s b || fail=1
+
Exit $fail