解决:Ubuntu共享文件夹复制后,cd 命令提示当前目录权限不够

最近因为虚拟机系统崩掉了,重新搭建了新的系统,发现复制共享文件夹后总是提示权限不够的问题,还引发了新的问题,导致/etc/profile 以及.bashrc中设置的环境变量在该目录下每次新开终端都需要source,弄得很心烦。
经过排查是因为将共享文件复制到当前目录时,我给的权限是
chmod -R 666 file

根据在我之前对linux权限的认识,认为工程文件夹只需要读写权限即可,而只有最终生成的可执行文件才需要执行权限,所以只给了文件夹读写权限,所以每次cd的时候都会提示权限不够,应该也是因为这个问题,设置的环境变量每次也需要重启。

事实上,共享文件夹下的文件每次复制都需要额外设置它的权限,会增加额外的工作量,并且有时候会产生很多奇怪的问题。这是因为自动mount的共享文件夹(比如/media/sf_share)所有者为root,所有组为vboxsf,并且只有这两者可以访问。所以可以按照以下命令,将当前用户添加到vboxsf工作组,则可以拥有对其进行操作的权限:

udo usermod -aG vboxsf username
其中,username是你的用户名

另外,经过查资料,linux的权限中文件的读写和文件夹的读是有区别的,常用的操作的权限如下:

r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。
w(Write,写入):对文件而言,具有新增,修改,删除文件内容的权限;对目录来说,具有新建,删除,修改,移动目录内文件的权限。
x(eXecute,执行):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。

1、目录的只读访问不允许使用cd进入目录,必须要有执行的权限才能进入。
2、只有执行权限只能进入目录,不能看到目录下的内容,要想看到目录下的文件名和目录名,需要可读权限。
3、一个文件能不能被删除,主要看该文件所在的目录对用户是否具有写权限,如果目录对用户没有写权限,则该目录下的所有文件都不能被删除,文件所有者除外
4、目录的w位不设置,即使你拥有目录中某文件的w权限也不能写该文件

### 解决 VirtualBox 中 Ubuntu 访问 Windows 共享文件夹权限 denied 的方法 当在 VirtualBox 安装的 Ubuntu 虚拟机中尝试访问共享文件夹时,可能会遇到权限被拒绝的情况。以下是解决问题的具体方式: #### 1. **确认共享文件夹已正确设置** 确保在 VirtualBox 主界面中,Windows 上的共享文件夹已被正确配置为可自动挂载和永久可用。如果未启用这些选项,则可能导致无法正常访问。 #### 2. **手动挂载共享文件夹并调整权限** 即使共享文件夹能够成功挂载,仍需通过 `mount` 命令指定合适的权限参数。可以按照以下步骤操作: ```bash sudo mkdir -p /mnt/shared_folder sudo mount -t vboxsf shared_name /mnt/shared_folder ``` 其中,`shared_name` 是你在 VirtualBox 设置中的共享名称[^1]。完成挂载后,可以通过修改目录权限使普通用户也能访问该路径: ```bash sudo chmod 755 /mnt/shared_folder sudo chown $USER:$USER /mnt/shared_folder ``` #### 3. **安装增强功能 (VirtualBox Guest Additions)** 为了更好地支持主机与虚拟机之间的交互,建议安装 VirtualBox 提供的增强功能包。具体步骤如下: - 在 VirtualBox 界面菜单栏选择 “设备 -> 插入增强功能 CD 镜像”。 - 执行以下命令以安装增强功能: ```bash sudo apt update sudo apt install build-essential dkms linux-headers-generic cd /media/$USER/VBox_GAs_* sudo sh ./VBoxLinuxAdditions.run ``` 完成后重启虚拟机即可生效[^3]。 #### 4. **检查 SELinux 或 AppArmor 是否阻止访问** 某些情况下,SELinux 或 AppArmor 可能会对文件系统的跨平台访问施加额外限制。可通过临时禁用来测试是否存在此类干扰: ```bash sudo setenforce 0 # 对于 SELinux sudo aa-disable /usr/bin/mount.vboxsf # 对于 AppArmor ``` 如果问题因此得到解决,则应进一步研究如何针对特定场景配置安全策略而非完全关闭保护机制。 #### 5. **更新 Linux 内核及相关驱动程序** 保持操作系统及其组件处于最新状态有助于兼容性和稳定性提升。定期运行升级指令可以帮助修复潜在漏洞以及改进性能表现: ```bash sudo apt update && sudo apt full-upgrade -y ``` --- ### 总结 上述措施涵盖了从基础环境搭建到高级调试技巧等多个层面的内容,旨在全面应对因权限不足而导致无法正常使用 Windows 共享文件夹的问题。实际应用过程中可根据具体情况灵活选用相应解决方案。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值