UNIX systems with
disk quotas (
24.17
)
won't let you change the owner (
22.20
)
of a file;
only the superuser can use
chown
.
Here's a workaround for those systems.
-
The file's current owner should make sure that the new owner has write
permission on the directory where the file is and read permission on the
file itself:
jerry%
ls -ld . afile
drwxr-xr-x 2 jerry 512 Aug 10 12:20 .
-rw-r--r-- 1 jerry 1934 Aug 10 09:34 afile
jerry%
chmod go+w .
-
The new owner (logged in as herself) should rename the file, make a
copy, and delete the original file.
If the new owner is there at the same time,
su
(
22.22
)
is probably the fastest way to change accounts:
-f
|
jerry%
su laura
Password:
laura%
mv afile afile.tmp
laura%
cp -p afile.tmp afile
laura%
ls -l afile
-rw-r--r-- 1 laura 1934 Aug 10 09:34 afile
laura%
rm -f afile.tmp
laura%
exit
jerry%
chmod go-w .
|
The
cp -p
(
18.15
)
command preserves the file's original permissions and
last modification time.
After the new owner (
laura
) is done copying, the old owner (
jerry
)
takes away the directory's write permission again.