我得到了一个需要sudo的脚本,但是脚本必须按照原用户设置参数,比如:
chown "${USER}:${USER}" dir
Run Code Online (Sandbox Code Playgroud)
如果我将它设置在 sudo 下,我只会得到chmod root:root
,这无济于事。
那么如何在 sudo 之前获取用户名呢?
我已经在 Ubuntu 上使用 apt-get 几年了,并尝试了几次 aptitude。我在一些博客中读到,一旦您在系统上使用了其中一种工具,就应该坚持使用它,而不是使用另一种,因为它们的工作方式不同,并且会导致问题。
现在,在阅读apt-get 和 aptitude 之间有什么区别?,我不明白为什么。
那么这是真的吗?在这种情况下,像 Ubuntu 这样的系统可能会在后台使用 apt-get 进行自动更新,是否甚至建议使用 aptitude ?
我在 Ubuntu 服务器上有一个远程裸 Git 存储库,其中的文件归用户my_project
和组所有my_project
,并相应地设置了权限。所有提交者都是他们自己在组中my_project
。
当有人提交然后my_user
通过 SSH从任何带有用户的 Ubuntu 笔记本电脑推送到服务器时,远程存储库中的一些文件被创建(更新?),因此它们现在属于用户和组my_user
。
当然,当其他人想要提交时,他现在无法提交,因为他没有写权限。我可以将权限设置为 777,但这不是最佳选择。
有什么办法可以在保持受限写入权限的同时解决这个问题?
我在一条看起来像这样的路径上有图片:
/0/1/2/3/4/01234/screenshots/1.jpg
Run Code Online (Sandbox Code Playgroud)
访问它的 URL 如下所示:
/static/0/1/2/3/4/01234/screenshots/1.jpg
Run Code Online (Sandbox Code Playgroud)
我希望它看起来像这样:
/0/1/2/3/4/01234/a-desc-of-the-picture/screenshots/1.jpg
Run Code Online (Sandbox Code Playgroud)
或者类似的东西。目标是在 SEO 的 URL 中包含关键字。
但是想告诉nginx服务
/0/1/2/3/4/01234/screenshots/1.jpg
Run Code Online (Sandbox Code Playgroud)
当他看到:
/0/1/2/3/4/01234/a-desc-of-the-picture/screenshots/1.jpg
Run Code Online (Sandbox Code Playgroud)
我不希望它将用户重定向到正确的 URL,我只希望它在内部进行映射。
是否可以 ?我怎样才能做到这一点?