Cygwin中nano保存文件默认权限为rw-r--r--,如何修改无需手动调整?
解决Cygwin中nano保存文件无执行权限且chmod失效的问题
一、修复chmod无法使用的问题
chmod失效大概率是因为Cygwin挂载Windows分区时默认启用了noacl选项,导致POSIX权限被忽略。按以下步骤调整:
- 打开Cygwin终端,用nano编辑fstab配置文件:
nano /etc/fstab - 找到对应C盘的挂载行,类似:
修改为:C:/cygwin / ntfs binary,auto 0 0
(C:/cygwin / ntfs binary,auto,posix=0,acl 0 0acl开启访问控制列表支持,posix=0保证权限兼容Windows,这样chmod就能正常生效) - 保存退出后重启Cygwin终端,此时执行
chmod +x 你的脚本文件名就能给文件添加执行权限。
二、让nano默认保存带执行权限
如果不想每次手动执行chmod,可修改nano配置实现自动添加:
- 编辑用户专属的nano配置文件:
nano ~/.nanorc - 在文件末尾添加一行:
set executable - 保存退出后,nano会自动识别脚本类文件(如.sh后缀),保存时自动添加执行权限,普通文本文件不受影响。
三、调整umask(可选,不推荐)
若想让所有新创建文件默认带执行权限(安全性较低,仅适合特定场景),可修改Shell的umask设置:
- 编辑bash配置文件:
nano ~/.bashrc - 添加一行:
(默认umask 0022对应文件权限rw-r--r--,改为0000后默认权限为rwxrwxrwx)umask 0000
内容的提问来源于stack exchange,提问作者Jenna
相关产品推荐
相关产品推荐

