Скрипт Python не может перемещать файл между смонтированными томами докера, в то время как команда mv можетPython

Программы на Python
Ответить
Anonymous
 Скрипт Python не может перемещать файл между смонтированными томами докера, в то время как команда mv может

Сообщение Anonymous »

Думаю, я правильно настроил тома Docker, но не могу понять, почему команда mv Success вызывается из интерактивной оболочки Bash.
FROM ubuntu:rolling

RUN apt update

RUN apt install -y python3 python3-venv

USER ubuntu

$ docker run --rm --interactive --tty --volume .:/home/ubuntu/data --volume $HOME/Downloads:/home/ubuntu/downloads --workdir /home/ubuntu/data vntk2:latest bash

>>> import pathlib
>>> pathlib.Path('/home/ubuntu/downloads/SoftwareEngineer.pdf').exists()
True
>>> pathlib.Path('/home/ubuntu/downloads/SoftwareEngineer.pdf').rename(pathlib.Path('/home/ubuntu/data/'))
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python3.12/pathlib.py", line 1365, in rename
os.rename(self, target)
OSError: [Errno 18] Invalid cross-device link: '/home/ubuntu/downloads/SoftwareEngineer.pdf' -> '/home/ubuntu/data'
>>>

ubuntu@d3d1c2e286c2:~/data$ mv /home/ubuntu/downloads/SoftwareEngineer.pdf /home/ubuntu/data/
ubuntu@d3d1c2e286c2:~/data$ ls -lah /home/ubuntu/data/
total 820K
drwxrwxr-x 8 ubuntu ubuntu 4.0K Dec 8 00:03 .
drwxr-x--- 1 ubuntu ubuntu 4.0K Dec 8 00:02 ..
-rw-rw-r-- 1 ubuntu ubuntu 765K Nov 15 12:14 SoftwareEngineer.pdf
ubuntu@d3d1c2e286c2:~/data$


Подробнее здесь: https://stackoverflow.com/questions/792 ... command-co
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»