这个问题与此相关: apt-mirror:无法在 /usr/bin/apt-mirror 第 342 行创建 /dir:/mirror 目录但是那里的答案没有帮助,因为设置有点不同。
我需要运行 apt-mirror 来将文件存储到 NTFS 格式的外部 USB 硬盘上。运行 apt-mirror 时会遇到与用户 Miphix 在其帖子中遇到的相同错误。
正如手册页中所述,我习惯于
su - apt-mirror -c apt-mirror
并收到此错误
apt-mirror: can't create /media/usb/apt-mirror/mirror directory at /usr/bin/apt-mirror line 342
这是由于尝试在已经存在目录的地方创建目录而导致的。
以用户 apt-mirror 身份运行 apt mirror 的答案不行在具有 NFTS 的 USB HDD 上,因为安装后驱动器chown apt-mirror:apt-mirror {dir}
什么也不做。这是根据无法在 ntfs usb 驱动器上进行 chmode 和 chown,因为在具有 NTFS 的外部 USB 驱动器上只有默认所有权。我尝试更改挂载目录,但挂载后它被转换为 root:root。
由于新下载将有 130GB 且需要几天时间,因此我需要使用现有的存储库并进行更新。此外,我无法将其复制到本地硬盘,因为空间不足。
有任何想法吗?
答案1
希望这不是最好的和最后一个,但我找到了一种让它发挥作用的方法。
我通过 /etc/fstab 添加了 NTFS USB 驱动器,并从 smb 挂载中回收了选项。该行如下所示
in /etc/fstab add
/dev/sdc1 /media/usbdrive ntfs defaults,credentials=/home/user/.smbcredentials,uid=1000,gid=1000,iocharset=utf8 0 0
这样,apt-mirror 就可以无任何提示地启动了。也许并不是所有选项都必需(我没有进一步测试),但它确实可以工作。
答案2
看起来事情可能变得相当琐碎。我现在似乎可以工作了。
答案与上面链接的帖子非常接近apt-mirror:无法在 /usr/bin/apt-mirror 第 342 行创建 /dir:/mirror 目录,但并不完全相同。
如果是 NTFS 驱动器,权限系统将不起作用。(我猜)Linux 设置了一些解决方法,允许本地用户访问驱动器,尽管那里的大多数文件都归 root 所有(这很有趣,但又是另外一个故事。如果有人了解这方面的背景,请在评论中放一个链接)。因此,解决方案非常简单:运行 apt-mirror,什么都不做。
复制粘贴此处是一个使用 apt-mirrror 在 /dev/sdb 上使用外部 USB HDD 的完整示例过程(请不要在(包括)‘//’后输入注释):
$ sudo fdisk -l|grep /dev/sd // find USB device name
Disk /dev/sdb: 2000 GiB // example output
/dev/sdb1 2048 15973654123 1185893215654 2000.0G // example output, bogus values
$ sudo mkdir /mnt/testdrive
$ sudo mount /dev/sdb1 /mnt/testdrive
$ apt-mirror
...
some lengthy output here
...
$ sudo umount /dev/sdb1 // unmount the
'$' 是提示符。它标记包含命令的行,其他行是屏幕输出
与上述另一篇文章相比,重要的变化是
$ apt-mirror
它以普通的非特权用户身份运行 apt-mirror。我认为 apt-mirror 帮助文件和 wiki 中的陈述具有误导性。至少在我的情况下,它们不起作用。完成。