LINUX.ORG.RU
решено ФорумAdmin

scp не сохраняет владельца.

 


0

1

server A:

root@ZMTest:~# ls -la /var/lib/mysql/
total 28696
drwx------  5 mysql mysql     4096 Jul 21 15:53 .
drwxr-xr-x 45 root  root      4096 Jul 22 06:42 ..
-rw-r--r--  1 root  root         0 Jun 21 00:15 debian-5.5.flag
-rw-rw----  1 mysql mysql  5242880 Jul 21 16:08 ib_logfile0
-rw-rw----  1 mysql mysql  5242880 Jul 21 15:53 ib_logfile1
-rw-rw----  1 mysql mysql 18874368 Jul 21 16:08 ibdata1
drwx------  2 mysql root      4096 Jun 21 00:15 mysql
-rw-rw----  1 root  root         6 Jun 21 00:15 mysql_upgrade_info
drwx------  2 mysql mysql     4096 Jun 21 00:15 performance_schema
drwx------  2 mysql mysql     4096 Jul  2 23:05 zm

root@ZMTest:~# scp -rp /var/lib/mysql/ root@srv2:/tmp/test

server В:

root@srv2:/tmp/test# ls -la mysql/
total 28696
drwx------ 5 root root     4096 июля  21 15:53 .
drwxr-xr-x 3 root root     4096 июля  22 09:28 ..
-rw-r--r-- 1 root root        0 июня  21 00:15 debian-5.5.flag
-rw-rw---- 1 root root 18874368 июля  21 16:08 ibdata1
-rw-rw---- 1 root root  5242880 июля  21 16:08 ib_logfile0
-rw-rw---- 1 root root  5242880 июля  21 15:53 ib_logfile1
drwx------ 2 root root     4096 июня  21 00:15 mysql
-rw-rw---- 1 root root        6 июня  21 00:15 mysql_upgrade_info
drwx------ 2 root root     4096 июня  21 00:15 performance_schema
drwx------ 2 root root     4096 июля   2 23:05 zm

На сервере B, не важно в какой каталог копирую. Всегда теряю владельца. Что я делаю не так?

Вот команда mount:

server A:

root@ZMTest:~# mount
/dev/mapper/ZMTest--vg-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
/dev/sda1 on /boot type ext2 (rw)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)

server B:

root@srv2:/tmp/test# mount
/dev/sda3 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)

★★★★★

scp знать не знает ничего о владельцах и правах. Пользуй tar.

tar -cf - <отсюда> | ssh user@host tar -xf- -C <туда>

Lavos ★★★★★
()
Ответ на: комментарий от Lavos

«f -» совершенно лишний ;) если -f не указывать, то используется стандартный ввод или вывод в зависимости от операции )

aol ★★★★★
()
Ответ на: комментарий от aol

Мне почему-то понятнее с '-', не знаю почему.

Lavos ★★★★★
()
Ответ на: комментарий от aol

если -f не указывать, то используется стандартный ввод или вывод в зависимости от операции

Может в gnutar так оно и есть, а в других по-умолчанию tape

sdio ★★★★★
()
Ответ на: комментарий от DALDON

А, значит права таки умеет, не знал. Но тут только times/modes, owner/group то нет.

Lavos ★★★★★
()
Ответ на: комментарий от DALDON

Вот это жесть... Спасибо! Я развидел это!

Кроме «Спасибо!» ничего не понял? Это такой сленг модный-молодежный?

sdio ★★★★★
()
Ответ на: комментарий от sdio

в гнутаре вот как:

ENVIRONMENT
TAPE Device or file to use for the archive if --file is not specified. If this environment variable is unset, use stdin or stdout instead.

про другие не скажу.

aol ★★★★★
()
Ответ на: комментарий от aol

А ты уверен что у него TAPE не определенна? Нет, зато безапелляционно заявил «f -» совершенно лишний

sdio ★★★★★
()
Ответ на: комментарий от sdio

Спасибо! Я понял, что mode , это есть mode, и не имеет никакого отношения к владельцу. Никогда не знал до этого прежде, всегда считал, что scp умеет сохранять владельца, пока не столкнулся явно. У меня банально mysql не поднялся, с ошибками 13 (permission denied), после scp. Я прям удивлён, почему не может scp сохранять владельца - мне не понятно.

DALDON ★★★★★
() автор топика

Не проще ли выставить права на каталог и решить задачу средствами ОС?

Помнится на Яндекс root была задачка:

«Как сделать так, чтобы все вновь созданные файлы в каталоге /opt принадлежали той же группе, что и сама папка /opt?»

Собственно решение ее:

$ chmod g+s /opt
dbzer0
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.