bug-coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mv: preserving permissions for `./file': Invalid argument


From: Richard Leeden
Subject: Re: mv: preserving permissions for `./file': Invalid argument
Date: Sat, 28 Feb 2009 01:18:40 -0800 (PST)


Jim Meyering wrote:
> 
> Thanks for the report.
> However we'll need more information.
> For example, what is the type of your destination file system?
> If it's a local file system, "df -hT ." will tell you.
> If it's NFS, it'd be good if you could tell us the OS of the server
> as well as the type of disk it exports.
> 
> What are the permissions of the source and destination files
> and the destination directory?  I.e., run this after the mv:
> 
>     ls -ld /tmp/a a .
> 
> Also, please rerun your example under "truss", to see what system
> calls are used i.e.,
> 
>   rm -f a
>   truss -o log mv /tmp/a .
> 
> and post the log.
> 
> Caveat: Solaris 8 and 9 are on the way out, in my mind.
> I haven't had access to those types of systems for at least
> three years now, and that's a pretty serious impediment to
> maintaining portability to them.
> 

Thanks for the reply. And, yes I agree Solaris 8 and 9 are on the way out,
but unfortunately we're going to be stuck with them at work for some time to
come yet. :(

Anyway, here's the info you asked for.
The destintation FS is a local FS: output from df -hT .

Filesystem    Type    Size  Used Avail Use% Mounted on
/dev/md/dsk/d24
               ufs    481M  209M  225M  49% /usr/home

Full details of all permissions, before and after the move:

root>rm -f a
root>touch /tmp/a
root>
root>ls -ld /tmp /tmp/a . a
ls: cannot access a: No such file or directory
drwxr-xr-x  5 rleeden admin 8192 Feb 28 09:05 .
drwxrwxrwt 11 root    sys   4484 Feb 28 09:05 /tmp
-rw-r--r--  1 root    other    0 Feb 28 09:05 /tmp/a
root>
root>mv /tmp/a .
mv: preserving permissions for `./a': Invalid argument
root>
root>ls -ld /tmp /tmp/a . a
ls: cannot access /tmp/a: No such file or directory
drwxr-xr-x  5 rleeden admin 8192 Feb 28 09:05 .
drwxrwxrwt 11 root    sys   4355 Feb 28 09:05 /tmp
-rw-r--r--  1 root    other    0 Feb 28 09:05 a
root>

And the truss output:

execve("/usr/local/bin/mv", 0xFFBFF2FC, 0xFFBFF30C)  argc = 3
resolvepath("/usr/lib/ld.so.1", "/usr/lib/ld.so.1", 1023) = 16
resolvepath("/usr/local/bin/mv", "/usr/local/bin/mv", 1023) = 17
stat("/usr/local/bin/mv", 0xFFBFF0C0)           = 0
open("/var/ld/ld.config", O_RDONLY)             = 3
fstat(3, 0xFFBFEB40)                            = 0
mmap(0x00000000, 132, PROT_READ, MAP_SHARED, 3, 0) = 0xFF3B0000
close(3)                                        = 0
stat("/usr/local/lib/libintl.so.8", 0xFFBFEBC8) = 0
resolvepath("/usr/local/lib/libintl.so.8",
"/usr/local/lib/libintl.so.8.0.2", 1023) = 31
open("/usr/local/lib/libintl.so.8", O_RDONLY)   = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFF3A0000
mmap(0x00010000, 106496, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF380000
mmap(0xFF380000, 34770, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF380000
mmap(0xFF398000, 4364, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 32768) = 0xFF398000
munmap(0xFF38A000, 57344)                       = 0
memcntl(0xFF380000, 8240, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)                                        = 0
stat("/usr/local/lib/libc.so.1", 0xFFBFEBC8)    Err#2 ENOENT
stat("/usr/lib/libc.so.1", 0xFFBFEBC8)          = 0
resolvepath("/usr/lib/libc.so.1", "/usr/lib/libc.so.1", 1023) = 18
open("/usr/lib/libc.so.1", O_RDONLY)            = 3
mmap(0xFF3A0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF3A0000
mmap(0x00010000, 802816, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF280000
mmap(0xFF280000, 703464, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF280000
mmap(0xFF33C000, 24496, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 704512) = 0xFF33C000
mmap(0xFF342000, 6720, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFF342000
munmap(0xFF32C000, 65536)                       = 0
memcntl(0xFF280000, 117696, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)                                        = 0
stat("/usr/local/lib/libgen.so.1", 0xFFBFEBC8)  Err#2 ENOENT
stat("/usr/lib/libgen.so.1", 0xFFBFEBC8)        = 0
resolvepath("/usr/lib/libgen.so.1", "/usr/lib/libgen.so.1", 1023) = 20
open("/usr/lib/libgen.so.1", O_RDONLY)          = 3
mmap(0xFF3A0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF3A0000
mmap(0x00010000, 98304, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF360000
mmap(0xFF360000, 22921, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF360000
mmap(0xFF376000, 2351, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 24576) = 0xFF376000
munmap(0xFF366000, 65536)                       = 0
mmap(0x00000000, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON,
-1, 0) = 0xFF350000
memcntl(0xFF360000, 6372, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)                                        = 0
stat("/usr/local/lib/libiconv.so.2", 0xFFBFEBC8) = 0
resolvepath("/usr/local/lib/libiconv.so.2",
"/usr/local/lib/libiconv.so.2.4.0", 1023) = 32
open("/usr/local/lib/libiconv.so.2", O_RDONLY)  = 3
mmap(0xFF3A0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF3A0000
mmap(0x00010000, 999424, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF180000
mmap(0xFF180000, 923279, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF180000
mmap(0xFF270000, 11152, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 917504) = 0xFF270000
munmap(0xFF262000, 57344)                       = 0
memcntl(0xFF180000, 12892, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)                                        = 0
stat("/usr/local/lib/libsec.so.1", 0xFFBFEBC8)  Err#2 ENOENT
stat("/usr/lib/libsec.so.1", 0xFFBFEBC8)        = 0
resolvepath("/usr/lib/libsec.so.1", "/usr/lib/libsec.so.1", 1023) = 20
open("/usr/lib/libsec.so.1", O_RDONLY)          = 3
mmap(0xFF3A0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF3A0000
mmap(0x00010000, 90112, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF160000
mmap(0xFF160000, 9993, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF160000
mmap(0xFF174000, 982, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED,
3, 16384) = 0xFF174000
munmap(0xFF164000, 65536)                       = 0
memcntl(0xFF160000, 2648, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)                                        = 0
stat("/usr/local/lib/libc.so.1", 0xFFBFEBC8)    Err#2 ENOENT
stat("/usr/local/lib/libgcc_s.so.1", 0xFFBFEBC8) = 0
resolvepath("/usr/local/lib/libgcc_s.so.1", "/usr/local/lib/libgcc_s.so.1",
1023) = 28
open("/usr/local/lib/libgcc_s.so.1", O_RDONLY)  = 3
mmap(0xFF3A0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF3A0000
mmap(0x00010000, 106496, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF140000
mmap(0xFF140000, 34112, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF140000
mmap(0xFF158000, 3532, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 32768) = 0xFF158000
munmap(0xFF14A000, 57344)                       = 0
memcntl(0xFF140000, 6540, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)                                        = 0
stat("/usr/lib/libdl.so.1", 0xFFBFEBC8)         = 0
resolvepath("/usr/lib/libdl.so.1", "/usr/lib/libdl.so.1", 1023) = 19
open("/usr/lib/libdl.so.1", O_RDONLY)           = 3
mmap(0xFF3A0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF3A0000
mmap(0x00010000, 8192, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF130000
mmap(0xFF130000, 2210, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 0) = 0xFF130000
close(3)                                        = 0
stat("/usr/local/lib/libc.so.1", 0xFFBFEBC8)    Err#2 ENOENT
stat("/usr/local/lib/libc.so.1", 0xFFBFEBC8)    Err#2 ENOENT
stat("/usr/platform/SUNW,UltraSPARC-IIi-cEngine/lib/libc_psr.so.1",
0xFFBFE8C8) = 0
resolvepath("/usr/platform/SUNW,UltraSPARC-IIi-cEngine/lib/libc_psr.so.1",
"/usr/platform/sun4u/lib/libc_psr.so.1", 1023) = 37
open("/usr/platform/SUNW,UltraSPARC-IIi-cEngine/lib/libc_psr.so.1",
O_RDONLY) = 3
mmap(0xFF3A0000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF3A0000
munmap(0xFF3A4000, 16384)                       = 0
close(3)                                        = 0
getustack(0xFFBFEF04)
getrlimit(RLIMIT_STACK, 0xFFBFEEFC)             = 0
getcontext(0xFFBFED38)
setustack(0xFF3439B4)
sysconfig(_CONFIG_STACK_PROT)                   = 3
brk(0x00046F70)                                 = 0
brk(0x00048F70)                                 = 0
stat("/usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.2", 0xFFBFE430) = 0
resolvepath("/usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.2",
"/usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.2", 1023) = 52
open("/usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.2", O_RDONLY) = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFF120000
mmap(0x00000000, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON,
-1, 0) = 0xFF110000
mmap(0x00010000, 90112, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFF0F0000
mmap(0xFF0F0000, 14814, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFF0F0000
mmap(0xFF102000, 8806, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 8192) = 0xFF102000
munmap(0xFF0F4000, 57344)                       = 0
memcntl(0xFF0F0000, 6824, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3)                                        = 0
munmap(0xFF120000, 32768)                       = 0
getuid()                                        = 0 [0]
ioctl(0, TCGETA, 0xFFBFF13C)                    = 0
stat64("a", 0xFFBFF1B8)                         Err#2 ENOENT
lstat64("/tmp/a", 0xFFBFEF28)                   = 0
lstat64("a", 0xFFBFEE90)                        Err#2 ENOENT
rename("/tmp/a", "a")                           Err#18 EXDEV
unlink("a")                                     Err#2 ENOENT
open64("/tmp/a", O_RDONLY)                      = 3
fstat64(3, 0xFFBFEDF8)                          = 0
open64("a", O_WRONLY|O_CREAT|O_EXCL, 0600)      = 4
fstat64(4, 0xFFBFED60)                          = 0
sysconfig(_CONFIG_PAGESIZE)                     = 8192
brk(0x00048F70)                                 = 0
brk(0x0004CF70)                                 = 0
read(3, 0x0004A000, 8192)                       = 0
futimesat(4, "", 0xFFBFEB90)                    = 0
facl(3, GETACLCNT, 0, 0x00000000)               = 4
facl(3, GETACL, 4, 0x0004C418)                  = 4
facl(4, SETACL, 4, 0x0004C418)                  Err#22 EINVAL
fchmod(4, 0100644)                              = 0
getuid()                                        = 0 [0]
getuid()                                        = 0 [0]
getgid()                                        = 1 [1]
getgid()                                        = 1 [1]
fstat64(2, 0xFFBFDBE0)                          = 0
write(2, " m v :  ", 4)                         = 4
write(2, " p r e s e r v i n g   p".., 30)      = 30
write(2, " :  ", 2)                             = 2
write(2, " I n v a l i d   a r g u".., 16)      = 16
write(2, "\n", 1)                               = 1
close(4)                                        = 0
close(3)                                        = 0
lstat64("/", 0xFFBFEFA8)                        = 0
fstatat64(-3041965, "/tmp/a", 0xFFBFEE48, 0x00001000) = 0
getuid()                                        = 0 [0]
fstatat64(-3041965, "/tmp/a", 0xFFBFEE48, 0x00001000) = 0
unlinkat(-3041965, "/tmp/a", 0x00000000)        = 0
llseek(0, 0, SEEK_CUR)                          = 1046581
close(0)                                        = 0
close(1)                                        = 0
close(2)                                        = 0
_exit(0)


Thanks again for looking at this.

Richard


-- 
View this message in context: 
http://www.nabble.com/mv%3A-preserving-permissions-for-%60.-file%27%3A-Invalid-argument-tp22247790p22260140.html
Sent from the Gnu - Coreutils - Discuss mailing list archive at Nabble.com.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]