Переместите файл в корневой каталог другого пользователя (без sudo)

У меня есть несколько файлов, которые я хочу переместить в чей-либо пользовательский корневой каталог. У меня нет полномочий записать в корневой каталог того пользователя, но я знаю его пароль.

Я знаю, как скопировать использование файла scp (см. здесь). Однако, если я хочу переместить файл, копирование и затем удаление исходного файла неэффективны. Есть ли способ переместить файл без использования sudo (Я не знаю пароля корня)?

1
задан 20 March 2017 в 13:18

3 ответа

Вам не нужен пароль корня для sudo, Вам нужно Ваш пароль; на самом деле в нормальной установке Ubuntu нет никакого пароля root.

, Но, если Вы не можете, или не хотеть использовать sudo, Вы могли бы удостовериться файл, и это - каталог, имеют чтение-запись (изменяют) полномочия для всех, затем входят в систему как другой человек и обычно перемещают его. Или, сделайте каталог в корневом каталоге другого человека и установите его на перезаписываемый, таким образом, можно переместить вещи туда как сами.

Это - основное поведение Linux.

0
ответ дан 7 December 2019 в 14:01

На самом деле нам, возможно, понадобится еще некоторая информация. Например, Вы не должны знать, что пароль 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

работы также.

0
ответ дан 7 December 2019 в 14:01

Вы можете:

  1. Сделайте свой корневой каталог читаемым миром и записываемым.
  2. Вход в систему в его учетную запись.
  3. Переместите свои файлы в его каталог.
  4. Владение изменения упомянутых файлов.
  5. Выход из системы его учетной записи.
  6. Вернитесь полномочия своего корневого каталога.

Подробное пошаговое руководство

Предположите, что Вы - 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 .

Закройте терминал, и Вы сделаны!

2
ответ дан 7 December 2019 в 14:01

Другие вопросы по тегам:

Похожие вопросы: