Отказано в разрешении scp в каталоге /tmp

Когда я копирую файл с помощью scp из удаленного места в каталог /tmp/ на локальном компьютере, все проходит успешно. Однако, когда я копирую другой файл с помощью scp с того же компьютера (т. е. удаленный и локальный компьютеры одинаковы), я получаю сообщение об ошибке «Отказано в доступе».

scp user@host-b:/usr/U91/host-b/trace/server_console_host-b.trc /tmp успешно.

scp user@host-a:/usr/U91/host-a/trace/server_console_host-a.trc /tmp завершается с ошибкой: /tmp/server_console_host-a.trc: Permission denied

Даже обычная копия не работает: cp /usr/U91/host-a/trace/server_console_host-a.trc /tmp/ cp: cannot create regular file ‘/tmp/server_console_host-a.trc’: Permission denied

Я не могу понять, почему scp с удаленного компьютера работает успешно, а другие терпят неудачу.

Примечание. Все приведенные выше команды выполняются на хост-машине.


person Krishna Chaurasia    schedule 31.12.2018    source источник
comment
Я определил проблему. В /tmp уже был файл с таким же именем, который принадлежал другому владельцу, поэтому scp потерпел неудачу, поскольку у него не было разрешения перезаписать существующий файл из-за другого пользователя. scp работал правильно после удаления файла из /tmp.   -  person Krishna Chaurasia    schedule 01.01.2019


Ответы (1)


Возможно ли, что вы изменили владельца /tmp на host-a?

/tmp должен выглядеть так...

ls -la / |grep tmp
**drwxrwxrwt.**  16 root root  4096 Dec 31 11:05 tmp

Может что-то для вас, чтобы прочитать о. ;-) https://askubuntu.com/questions/432699/what-is-the-t-letter-in-the-output-of-ls-ld-tmp

person NicoS    schedule 31.12.2018
comment
drwxrwxrwt 356 root root 122880 Dec 31 05:20 tmp. Кроме того, я считаю, что все упомянутые выше команды используют один и тот же каталог /tmp, поэтому я не могу понять, почему это будет работать для одного, а не для других. - person Krishna Chaurasia; 31.12.2018
comment
Могу я попросить показать нам разрешение на этот файл на каждом хосте? Что заставляет меня задуматься, так это следующая строка: Даже обычная копия не работает: cp /usr/U91/host-a/trace/server_console_host-a.trc /tmp/ cp: невозможно создать обычный файл '/tmp/server_console_host-a.trc' : В доступе отказано - person NicoS; 31.12.2018
comment
Оба одинаковы: -rw-r--r-- 1 user sys 203529 Dec 29 11:54 server_console_host-a.trc для хоста a и -rw-r--r-- 1 user sys 3791296 Dec 31 05:31 server_console_host-b.trc для хоста b. - person Krishna Chaurasia; 31.12.2018
comment
странно... это работает от имени другого пользователя или к другой цели (например, к домашнему каталогу пользователей)? - person NicoS; 31.12.2018
comment
Я определил проблему. В /tmp уже был файл с таким же именем, который принадлежал другому владельцу, поэтому scp потерпел неудачу, поскольку у него не было разрешения перезаписать существующий файл из-за другого пользователя. scp работал правильно после удаления файла из /tmp. - person Krishna Chaurasia; 01.01.2019