China

没有密码的 Vagrant NFS 共享

没有密码的 Vagrant NFS 共享
– 2024 年新更新

Digital Marketer Journal 收錄了來自當前各個數字營銷領域的專業人士撰寫的文章。 我們每天都會添加新帖子。 行業趨勢、產品變化、功能公告等都可以在此博客中找到。

自从我几个月前切换以来,Vagrant 一直运转得很好,根据需要旋转 trim 小的 Ansible 提供的 Ubuntu 盒子。 由于我使用 Virtual Box 作为提供者并且共享文件夹只能处理少数几个文件,因此我的活动项目可以作为 NFS 共享点使用。 在 OS X 上运行,Vagrant 的 NFS 共享通过修改配置 /etc/exports,不幸的是,这需要管理员权限和密码提示。

值得庆幸的是,有人分享了一个变通的 shell 脚本,它调整了 sudoers,所以 vagrant up 不再需要密码。 它工作得很好,直到最近。

随着 Vagrant 1.3 的发布,NFS 密码提示又回来了。 修改后的 sudoers 命令不再有效。

更新sudoers

所有 sudo 命令都被记录下来,因此找出更改的内容只是使用 Vagrant 1.2.7 检查日志,然后安装 Vagrant 1.3.x 并寻找更改的稍微笨拙的事情。 这比尝试通过 Ruby 代码的差异来重建各种命令要有效得多。

在以前版本的 Vagrant 白名单中,这些命令允许编辑 /etc/exports 没有密码:

/usr/bin/su root -c echo '*' >> /etc/exports
/usr/bin/sed -e /*/ d -ibak /etc/exports

在 Vagrant 1.3.x 中,更新了这些命令:

/bin/bash -c echo '*' >> /etc/exports
/usr/bin/sed -E -e /*/ d -ibak /etc/exports

基于原始 shell 脚本,这里是需要添加的块 /etc/sudoers 使用 NFS 共享进行无密码启动:

Cmnd_Alias VAGRANT_EXPORTS_ADD = /bin/bash -c echo '*' >> /etc/exports
Cmnd_Alias VAGRANT_NFSD = /sbin/nfsd restart
Cmnd_Alias VAGRANT_EXPORTS_REMOVE = /usr/bin/sed -E -e /*/ d -ibak /etc/exports
%staff ALL=(root) NOPASSWD: VAGRANT_EXPORTS_ADD, VAGRANT_NFSD, VAGRANT_EXPORTS_REMOVE

我还发布了原始解决方法的更新分支 install_vagrant_sudoers.sh:

與 没有密码的 Vagrant NFS 共享
屬於同一類別的相關文章

總結
數字改變你的生活 | 數字營銷技巧、趨勢和策略的第一資源,可幫助您建立成功的在線業務。 訂閱我們的每週時事通訊,它會在 7 分鐘或更短的時間內提供您實際需要的最具可操作性、戰術性和及時性的營銷技巧。 免費獲得競爭優勢。
類別

Leave a Reply

Your email address will not be published.

Back to top button