执行nixos-rebuild switch报错:/tmp/.X11-unix为只读文件系统
关于WSL中NixOS执行
nixos-rebuild switch报错的解释 操作背景
- 在WSL中从零重装NixOS的步骤:
wsl --unregister Nixos wsl --import NixOS .\NixOS\ nixos-wsl-installer.tar.gz --version 2 wsl -s Nixos wsl - 使用的是NixOS-WSL 22.05版本的安装包
- 未修改
/etc/nixos/configuration.nix文件,执行命令:
出现以下错误:sudo nixos-rebuild switchfchmod() of /tmp/.X11-unix failed: Read-only file system
错误含义解析
该错误的核心含义是:nixos-rebuild switch过程中调用fchmod系统调用尝试修改/tmp/.X11-unix目录的权限,但该目录所在的文件系统处于只读状态,导致操作失败。
在WSL环境里,/tmp/.X11-unix是用于X11图形转发的套接字目录,默认由Windows主机侧负责挂载管理,且挂载模式为只读。NixOS的配置重建流程会尝试统一调整系统目录权限,却无法修改这个由WSL外部管理的只读目录,因此抛出该错误。
这个错误通常不会影响系统核心配置的更新,仅代表X11相关的权限调整操作失败。如果不需要X11图形转发功能,可直接忽略;若需启用X11,需在/etc/nixos/configuration.nix中配置适配WSL的X11转发规则,避免系统尝试修改这个只读目录的权限。
内容的提问来源于stack exchange,提问作者Pierre-olivier Gendraud
相关产品推荐
相关产品推荐

