У меня есть несколько файлов, которые я хочу переместить в чей-либо пользовательский корневой каталог. У меня нет полномочий записать в корневой каталог того пользователя, но я знаю его пароль.
Я знаю, как скопировать использование файла scp
(см. здесь). Однако, если я хочу переместить файл, копирование и затем удаление исходного файла неэффективны. Есть ли способ переместить файл без использования sudo
(Я не знаю пароля корня)?
Вам не нужен пароль корня для sudo, Вам нужно Ваш пароль; на самом деле в нормальной установке Ubuntu нет никакого пароля root.
, Но, если Вы не можете, или не хотеть использовать sudo, Вы могли бы удостовериться файл, и это - каталог, имеют чтение-запись (изменяют) полномочия для всех, затем входят в систему как другой человек и обычно перемещают его. Или, сделайте каталог в корневом каталоге другого человека и установите его на перезаписываемый, таким образом, можно переместить вещи туда как сами.
Это - основное поведение Linux.
На самом деле нам, возможно, понадобится еще некоторая информация. Например, Вы не должны знать, что пароль root использует sudo. Если Ваш пользователь находится в sudo группе, можно использовать sudo с регулярным паролем пользователя. Так, Если это верно:
sudo mv file_to_move /home/desired_user
, Если Вы не можете использовать sudo, можно записать простой сценарий удара, чтобы скопировать файл с scp и после этого удалить его. Но, если у Вас есть установленный rsync:
rsync -avz --remove-source-files -e ssh file_to_move desired_user@127.0.0.1:/home/desired_user
работы также.
Вы можете:
Предположите, что Вы - becko, и Вы хотите переместить файлы в корневой каталог боба. Таким образом пути для Ваших домов следующим образом (по умолчанию):
becko: /home/becko/
bob: /home/bob/
Теперь скажем, пути файлов, которые Вы хотите переместить, следующие:
/home/becko/file_01
/home/becko/file_02
/home/becko/file_03
Теперь, с этим введением, мы можем запустить.
Примечание: Этот пример предполагает, что все соответствующие файлы являются одним уровнем ниже Вашего корневого каталога.
В то время как зарегистрированный как самостоятельно, откройте терминал (Ctrl+Alt+T)
.
Перейдите к своему корневому каталогу и сделайте его читаемым миром:
$ cd ~
$ chmod 0777 .
Затем с помощью примера, обеспеченного выше:
$ su - bob
Вам предложат с его паролем.
После входа в систему необходимо видеть следующую подсказку (или что-то близко к нему):
bob@hellsdesk:~$
Теперь Вы находитесь в корневом каталоге боба. Теперь, время для перемещения материала.
Следующие команды должны сделать это:
$ mv /home/becko/file_01 .
$ mv /home/becko/file_02 .
$ mv /home/becko/file_03 .
Примечание: Для меня владение изменилось на боба автоматически, но могло бы также быть безопасным, чем извините. :)
Команды:
$ chown bob:bob file_01
$ chown bob:bob file_02
$ chown bob:bob file_03
Это легкое. Введите:
$ logout
Ваша подсказка должна затем возвратиться к чему-то как:
becko@hellsdesk:~$
По умолчанию полномочия 0755. Так, мы сделаем это:
$ chmod 0755 .
Закройте терминал, и Вы сделаны!