linux - Linux上 '/opt'文件夹的正确使用

标签 linux ubuntu filesystems file-permissions

Linux系统:Ubuntu 14.04 LTS

我将一些应用程序(例如 xxx)复制到 /opt 文件夹,以供其他用户帐户使用。然后启动它,我使用:

sudo /opt/xxx_folder/xxx

(当然,链接到/usr/local/bin或/usr/bin等)来启动它;

问题:我将应用程序的结果/项目存储到我的本地文件夹(如 /home/myuser/xxx_data)。当然,该文件夹及其数据 xxx_data 属于 root(而不是 myuser)。因此,每次我想使用另一个应用程序而不是作为根用户编辑这些文件时,我都必须更改所有者。

问题:有没有办法将应用程序xxx安装到/opt,这样我就不需要以root身份启动它们?

或者也许您会看到另一种方法来解决这个“root 用户问题”?

最佳答案

您可以向这样的任何文件添加执行权限。

sudo chmod +x file.sh

如果您想对该文件夹中的所有文件执行此操作,请尝试以下操作:

sudo chmod +x /opt/*

请注意,+x 只是为您的登录用户添加执行权限。我认为默认情况下所有用户都已读取 (+r),因此如果您还想添加写入权限:

sudo chmod +xw /opt/*

我个人将所有自定义脚本保存在 bin 文件夹中,例如/opt/bin/ 然后执行:

sudo chmod +x /opt/bin/*

要在没有完整路径的情况下运行脚本,请将以下内容添加到 ~/bashrc 文件中,将 bin 或 full opt 文件夹添加到您的路径:

PATH=$PATH:/opt/bin

如果您最终不使用 bin 文件夹,请将上面的内容编辑为 /opt 而不是 /opt/bin

关于linux - Linux上 '/opt'文件夹的正确使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40692906/

相关文章:

ubuntu - ffmpeg:无法在流 #1 中找到编解码器无的标记,容器当前不支持编解码器

c# - 检测 File.Move 是否需要 'Copy -> Delete' 或只是改变文件系统表中的位置

windows - 为应用程序选择合适的文件扩展名

linux - 如何使用 grep 只获取一行的一部分

.net - 无法使用 Ubuntu 在 Raspberry Pi 上执行 Windows Form .exe

linux - 在 VMware VCenter 连接自动化中运行 powershell/powercli 脚本

ubuntu - 如何解决在 Linux 上安装 Minikube for Kubernetes 时出现的错误

android - 从 Chrome 文件系统播放视频在 Android 上不起作用

PHP 从 SFTP 下载文件

php - (CentOS 6)通过crontab运行Artisan命令导致Reflection异常