Как скопировать любые файлы или каталоги от одного пользователя другому пользователю на той же машине через терминал ?
Предположим, что в домашнем каталоге пользователя USER1 находится один файл test.txt . Мне нужно скопировать этот файл в домашний каталог пользователя USER2 на моем компьютере. Как я могу сделать это через терминал?
если у вас нет привилегий sudo, но вы можете войти с двумя пользователями, вы можете использовать scp с localhost:
источник
Как USER1:
Как USER2:
Как USER1:
источник
Предположим, что у вас либо не установлен ssh, либо вы не можете делиться ключами / секретами.
Предположим, что user1 находится в group1, а user2 в group2, и user1! = User2 и group1! = Group2.
Создайте общую группу group3s.
Добавьте и user1, и user2 в group3s.
Создайте каталог во взаимно доступном месте, где один пользователь владеет, но имеет групповое владение group3s.
Но предположим, что вы не можете создать новую общую группу и поместить обоих пользователей в эту группу?
Создайте каталог и дайте ему 770 разрешений,
Затем от имени пользователя root / admin измените владельца группы на группу другого пользователя,
Команда chmod g + s устанавливает бит setgid, так что для файлов, помещенных в каталог, для владельца группы установлено значение group2.
источник
Любой другой ответ здесь требует root-доступа, позволяет любому пользователю на том же компьютере скопировать файл или требует совместного использования пароля. Вот метод, который не делает:
Пусть
USER2
(назовем его Бобом) выполнить следующие команды (вы можете заменить/tmp
любой каталог, на который у обоих пользователей есть разрешения на запись, но/tmp
он идеален, потому что по умолчанию он липкий, что не позволяет злонамеренному пользователю подорвать этот процесс. Бобом, который читается всем миром, тоже работает):Это создает файл, который доступен для записи во всем мире, но не для чтения.
Затем
USER1
запустите (назовем ее Алиса) (если вы параноик, Алиса может сначала проверить разрешения, чтобы убедиться, что файл принадлежит Бобу):Это перезаписывает содержимое
/tmp/test.txt
. Если вы хотите проверить целостность файла, Алиса также должна сгенерировать хеш файла. Например:Вместо этого вы можете подписать файл цифровой подписью или любым другим способом гарантировать его целостность.
И, наконец, Боб перемещает файл и становится его владельцем:
И Боб может проверить целостность, если он хочет. Если это так, он должен проверить, чтобы убедиться, что только Алиса может писать
/tmp/test.txt
.Если файл был скопирован правильно, это не должно отображать вывод.
источник
Перед копированием одного пользователя другому необходимо войти в систему как пользователь su, а затем использовать команду cp
источник
USER2
но оставит все как естьroot
. -1