麒麟OS防止他人查看文件夹有五种方法:一、用文件保护箱整体加密并隐藏路径;二、通过ACL设置other::---禁止非授权用户访问;三、启用KYSEC fpro模块设deny模式强制禁读;四、用ecryptfs透明挂载加密;五、设chmod 700权限并限制上级目录遍历。

如果您希望在麒麟操作系统中防止他人查看特定文件夹,避免未授权访问或数据泄露,则可利用系统内置的多层级访问控制与加密机制实现有效隔离。以下是多种可行方法:
一、使用文件保护箱对文件夹整体加密
文件保护箱是银河麒麟桌面操作系统V10 SP1及后续版本原生集成的安全组件,采用国密算法对整个文件夹进行容器级加密,所有进出操作自动加解密,无需手动干预,且原路径文件夹被隐藏,仅可通过保护箱界面访问。
1、点击屏幕左下角「开始菜单」,在搜索栏输入“文件保护箱”并打开应用。
2、首次启动时需输入当前系统用户密码完成身份认证。
3、点击右上角「新建保护箱」按钮,选择「文件夹保护」模式。
4、在弹出窗口中浏览并选中目标文件夹路径,勾选「启用加密」选项。
5、设置独立保护箱密码,并选择是否生成密钥文件建议勾选并保存至U盘等离线介质。
6、确认后系统将创建虚拟挂载点,原文件夹被隐藏,仅可通过文件保护箱界面访问其内容。
二、通过ACL机制为文件夹配置细粒度访问控制
Linux ACL(访问控制列表)允许为特定用户或组授予/拒绝对目录的精确权限,适用于不依赖图形界面、需绕过应用层权限框架的场景,可实现非所有者用户完全不可见该文件夹。
1、打开终端,执行ls -ld /path/to/target/folder确认目标文件夹归属用户与权限位。
2、启用该文件系统ACL支持:执行sudo tune2fs -o acl /dev/sdXN需替换为实际分区设备名,如/dev/sda1。
3、为指定应用运行用户添加读写权限:执行sudo setfacl -m u:appuser:rwx /path/to/target/folder。
4、禁止其他非授权用户访问:执行sudo setfacl -m o::--- /path/to/target/folder。
5、验证配置有效性:执行getfacl /path/to/target/folder,确认输出中包含user:appuser:rwx且other::---条目。
三、启用Kylin Security Center内核级文件保护策略
KYSEC子系统的fpro模块可在VFS层拦截对指定路径的所有访问请求,其策略优先级高于普通ACL与SELinux,适用于涉密目录的强制隐藏或禁读场景,使非root用户无法通过任何常规命令列出或进入该目录。
1、以root身份打开终端,执行sudo -i切换至超级用户。
2、检查fpro服务状态:运行getstatus | grep "file protect",确认返回值为on。
3、将目标文件夹路径加入保护列表:执行echo "/home/用户名/文档" > /proc/sys/kernel/fpro_protect路径必须为绝对路径,且不能以符号链接结尾。
4、设置保护类型为禁读:执行echo "deny" > /proc/sys/kernel/fpro_mode。
5、验证生效:尝试以普通用户执行ls /home/用户名/文档,应提示Permission denied。
四、结合ecryptfs实现透明挂载加密
ecryptfs是Linux内核原生支持的堆叠式加密文件系统,可在用户主目录下创建加密私有目录,所有写入内容自动加密存储,挂载后透明访问,卸载后目录内容不可读,适合长期存放敏感资料。
1、打开终端,执行sudo apt install ecryptfs-utils安装工具包。
2、执行ecryptfs-setup-private启动向导,按提示输入登录密码及挂载密码。
3、向导完成后,执行ecryptfs-mount-private挂载加密目录。
4、将需保护的文件夹软链接至~/Private/下对应子路径:ln -s /path/to/sensitive/folder ~/Private/secure_folder。
5、执行ecryptfs-umount-private卸载后,~/Private/目录内容全部变为加密乱码,他人即使获得磁盘镜像也无法解密,除非拥有原始挂载密码。
五、设置文件夹基础权限并禁用其他用户遍历权限
通过修改目录权限位,阻止其他用户进入父路径并列出子项,是最轻量级但有效的隐藏手段。该方法不加密数据,但可使文件夹在常规文件管理器和ls命令中完全不可见。
1、打开终端,执行sudo chmod 700 /path/to/target/folder,仅保留所有者读、写、执行权限。
2、确保其所有上级目录至少具备rx权限给所有者,但对group和others移除x权限,例如执行chmod 750 /home/用户名。
3、执行ls -ld /path/to/target/folder,确认权限显示为drwx------。
4、切换至另一普通用户账户,执行ls /home/用户名,确认目标文件夹名称不出现。
5、尝试直接cd /path/to/target/folder,应提示Permission denied。

















