Я работаю с установкой, где сборочная машина виртуализирована и доступ к хранилищу для процесса сборки осуществляется через общий сетевой ресурс:
ОС хоста VM: Debian 8
VM Manager: VirtualBox
Клиентская виртуальная машина: Debian 9
Сетевой ресурс: SSHFS
Строящийся проект: OpenWRT
SSHFS в целом хорошо себя чувствовала при управлении правами в процессе сборки. Однако проблема поставила меня в тупик:
. /media/openwrt_build/openwrt/include/shell.sh; bzcat /media/openwrt_build/openwrt/dl/u-boot-2014.10.tar.bz2 | tar -C /media/openwrt_build/openwrt/build_dir/host/u-boot-2014.10/.. -xf -
tar: u-boot-2014.10/tools/buildman/buildman: Cannot utime: No such file or directory
tar: u-boot-2014.10/tools/patman/patman: Cannot utime: No such file or directory
tar: Exiting with failure status due to previous errors
Makefile:46: recipe for target '/media/openwrt_build/openwrt/build_dir/host/u-boot-2014.10/.prepared86e9d8870a885c630b99e1ea2fa45daf' failed
make[3]: *** [/media/openwrt_build/openwrt/build_dir/host/u-boot-2014.10/.prepared86e9d8870a885c630b99e1ea2fa45daf] Error 2
make[3]: Leaving directory '/media/openwrt_build/openwrt/tools/mkimage'
tools/Makefile:147: recipe for target 'tools/mkimage/compile' failed
make[2]: *** [tools/mkimage/compile] Error 2
Google предполагает, что Cannot utime: No such file or directory
является обычной реакцией на неудачные попытки сохранения пользователей / групп / прав файлов, извлекаемых из архива. В этом случае я подозреваю, что попытка сохранить права из архива противоречит тому, как настроено монтирование SSHFS для управления правами.
Есть несколько параметров, которые можно установить при монтировании общей папки SSHFS, но я не смог выяснить, что может решить эту проблему. В настоящее время я монтирую папку так:
sshfs nonrootuser1@ip.ad.dr.ess:/folder/to/mount /local/mount/point
Другой вероятной точкой отказа может быть управление правами исходной папки хоста и папки монтирования клиента, однако, опыт других случаев говорит мне, что я, вероятно, не смог бы зайти так далеко, если бы это была проблема.
ls -l
предоставляет следующую информацию о папках хоста и клиента:
drwxrwxrwx 8 nonrootuser1 nonrootuser1 4096 Jun 25 19:39 /folder/to/mount
drwxr-xr-x 2 nonrootuser2 nonrootuser2 4096 Jun 23 12:36 /local/mount/point
Решения и предложения, которые могут помочь решить проблему utime
, приветствуются.