没有将SQLite数据库放在NFS上的createrepo的解决方法?

时间:2018-04-05 19:53:24

标签: sqlite centos7 yum nfs

我想在(我的)NFS上构建一个本地YUM存储库,这样它就不会占用主机的空间而其他人可以访问它。当我尝试在NFS目录中创建存储库时,出现了以下错误。

[root@d62539456920 /]# createrepo /data/docker-ce-stable/ -g comps.xml
Could not create exclusive lock in /data/docker-ce-stable/repodata and sqlite database generation enabled. Is this path on nfs? Is your lockd running?

有没有人找到一种方法,你可以让createrepo使用这些目录而不将SQLite DB放在NFS中?

2 个答案:

答案 0 :(得分:1)

您可以使用临时文件夹构建,然后将sqlite文件夹(repodata)同步/复制到您的nfs共享位置。例如:

createrepo path_to_repo_folder -o /tmp
rsync -a --delete /tmp/repodata/ path_to_repo_folder/repodata/

如果您拥有大型回购并且正在使用--update

,则可能需要同步这两种方式

答案 1 :(得分:1)

您可以使用nolock选项挂载NFS挂载。我也遇到了同样的问题,而且似乎奏效了。

autofs示例:

/mnt/sata/software         -fstype=nfs,nolock,soft  10.0.0.251:/storage/sata/files/software