apt-mirror:无法在 /usr/bin/apt-mirror 第 342 行创建 /media/usb/apt-mirror/mirror 目录 - 在 USB 驱动器上

apt-mirror:无法在 /usr/bin/apt-mirror 第 342 行创建 /media/usb/apt-mirror/mirror 目录 - 在 USB 驱动器上

这个问题与此相关: 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 中的陈述具有误导性。至少在我的情况下,它们不起作用。完成。

相关内容