我正在处理一个写入外文件的MySQL查询。我每天或每两天运行一次此查询,因此我希望能够删除输出文件而不必求助于su或sudo。我能想到的唯一方法是将outfile写入mysql用户以外的其他人所拥有的文件。这可能吗?
编辑:我没有将输出重定向到文件,而是使用选择查询的INTO OUTFILE部分输出到文件。
如果有帮助:
mysql --version
mysql Ver 14.12 Distrib 5.0.32, for pc-linux-gnu (x86_64) using readline 5.2
输出文件是由mysqld进程创建的,而不是由客户端进程创建的。因此,输出文件必须归mysqld进程的uid和gid所有。
如果从可以访问文件的uid或gid下的进程访问文件,则可以避免必须使用sudo来访问文件。换句话说,如果mysqld创建由uid和gid“ mysql”
/“ mysql”拥有的文件,则将您自己的帐户添加到“ mysql”组中。然后,如果文件的许可模式包括组访问权限,则应该可以访问该文件。
编辑:
您正在/
tmp中删除目录权限模式为rwxrwxrwt的文件。粘性位(’t’)表示仅当您的uid与文件的所有者相同时,才可以删除文件,而不管文件或目录的权限如何。
如果将输出文件保存在未设置粘性位的另一个目录中,则应该可以正常删除该文件。
请从手册页中阅读有关粘性(8)的摘录:
粘性目录
设置了“粘滞位”的目录将成为仅附加目录,或更准确地说,将成为限制删除文件的目录。如果用户具有目录的写许可权,并且该用户是文件的所有者,目录的所有者或超级用户,则粘性目录中的文件只能由用户删除或重命名。此功能有用地应用于诸如/
tmp之类的目录,该目录必须是可公开写入的,但应拒绝用户任意删除或重命名彼此文件的许可。
问题内容: 但是我仍然不能以计算神的热爱,以不同的用户身份运行。这是我所做的步骤: 下载适用于jenkins的macosx pkg(LTS) 安装插件等和git 尝试建立它 我不断收到无法克隆的错误,因为詹金斯一直以匿名身份开始: 如何设置它,让詹金斯像我一样运行?我正在使用jenkins Web UI,因此它位于localhost:8080 我也尝试使用/ login登录,但是我什至无法使用我的
问题内容: 伙计们,我需要在Ubuntu 14.04下以其他用户身份启动docker守护进程。我在sudoers和docker的组中都拥有该用户,但是,我需要的是docker守护进程以“测试”用户身份运行。 test @ test:/ usr / bin $启动docker 开始:拒绝发送消息,1条匹配规则;type =“ method_call”,sender =“:1.88”(uid = 11
我目前正在为一个学校项目创建一个API,一切都很好。我的设置是:节点v10、Postgres、Koa等等... 我目前有以下内容:
问题内容: 在Windows上以Python用户身份启动子进程的最佳方式是什么?最好是XP及更高版本,但如果仅在Vista和7上运行,我也可以接受。 问题答案: 我不确定您是否可以使用标准python库执行此操作。但是,pywin32软件包具有win32process.CreateProcessAsUser函数,可能是您需要的。
问题内容: 我有必须作为user2运行的script.sh。但是,此脚本只能在我的应用程序的user1下运行。 我想运行以下命令: 但无需密码即可运行。 我也希望这是非常严格的限制,因为在user1中只能在user2下运行script.sh,而不能在其他任何情况下运行。 我已经尝试过使用sudoers文件执行此操作,但经过数小时的尝试,它才变得无穷无尽。 如果有人可以提供一个明确的示例说明如何完成
问题内容: 我刚刚开始使用Jenkins CI,遇到了一个问题,我很想在文档或在线中找到答案。想知道是否有人可以提供一些建议? 我正在尝试使用它来自动部署托管在Github组织存储库(即私有)上的Django项目的dev和stage分支。目前,我有一个用户“ django”,可以通过Github部署密钥访问Github存储库。我的Jenkins用户无法访问该存储库。解决此问题的最佳实践是什么-我应