无法编辑系统目录中的服务文件 - 只读文件系统

时间:2017-03-08 12:26:54

标签: linux file-permissions coreos

我想编辑位于/usr/lib/systemd/system的服务文件。即使我以root(sudo)编辑它,它也会显示Can't open file for writing

我认为这是一个权限问题,但在尝试为文件添加权限时,我得到:chmod: changing permissions of 'flannel-docker-opts.service': Read-only file system

由于那不是媒体(USB或其他东西),我认为我不应该安装它?

我在使用coreOS btw。

2 个答案:

答案 0 :(得分:2)

此问题更适用于Container Linux(特别是coreOS)。

有两种方法可以覆盖默认容器Linux设置:

  1. 将单元文件从/ usr / lib64 / systemd / system复制到/ etc / systemd / system并修改所选设置
  2. 使用systemd drop-in units
  3. 我用过后者。

    我正在配置位于系统目录中的文件flannel-docker-opts.service。我使用系统插件解决了这个问题。第一步是在flannel-docker-opts.service.d中创建目录/etc/systemd/system。我通过更改在该目录中创建了一个配置文件。

    官方coreOS documentation

    中的更多信息

答案 1 :(得分:0)

如果文件系统以只读方式挂载,则chmod将无法工作,因为它也是一个写入操作。

尝试将其重新写入读写:

sudo mount -o remount,rw '/usr/lib/systemd/system/yourfile'