如何在 13.10 中设置 umask?

如何在 13.10 中设置 umask?

显然,有一个Upstart 中的错误它随 Ubuntu 13.10 一起提供,它覆盖通过 $HOME/.profile 或 /etc/login.defs 设置的 umask。

Upstart 已更新以修复 Trusty 中的此问题,但我该如何在 Ubuntu 13.10 中解决这个问题呢?

错误报告提到在 $HOME/.config/upstart 中为您正在运行的任何会话创建一个 Upstart 覆盖作业。该怎么做?

报告还提到禁用用户会话的 Upstart,如果我没有理解错的话,13.10 之前版本就是这样的。但是这样做有什么副作用吗?

我如何才能知道更新后的 Upstart 是否能找到升级到 13.10 的方法?

答案1

我似乎已经解决了这个问题。以下是我所做的:

  1. 我将 gnome-session.conf 从 /usr/share/upstart/sessions 复制到 $HOME/.config/upstart 中的 gnome-session.override
  2. 我编辑了 gnome-session.override 并umask 0002在之前添加了一行 exec gnome-session --session=$DESKTOP_SESSION
  3. 我编辑了 $HOME/.bashrc,并在文件末尾添加了 umask 002

第 2 步使桌面会话中新创建的文件可写,但终端的 umask 似乎仍然是 0022,这促使执行第 3 步。我也为其他用户重复了这些步骤。

欢迎提出评论,因为我不确定这是否是最好的解决方案。

答案2

尝试从 Trusty 安装 upstart 1.11-0ubuntu1;它对我来说有效。

  1. 下载适合您的架构的最新发布的软件包:
    https://launchpad.net/ubuntu/trusty/+package/upstart

  2. 使用以下命令安装:
    sudo dpkg -i upstart_1.11-*.deb

  3. 重启。

相关内容