Linux文件夹权限777,无法创建文件
2017-01-09 18:01
429 查看
问题描述
在linux系统中,使用mysql导出csv文件,默认文件夹是/tmp目录,可以导出成功,然后我在/tmp/下面创建了一个lx目录,并将/tmp/lx的权限设置为777,也就是/tmp与/tmp/lx的权限都是777,再将mysql数据导出到lx目录,报错:ERROR 1 (HY000) at line 16 in file: './export.sql': Can't create/write to file '/tmp/lx/t_User.csv' (Errcode: 13 - Permission denied)
解决方法
我作为一个linux的菜鸟,完全无法理解这种现象,只能google、百度各种找资料,最后终于有人提到估计是SELinux的原因。于是继续找资料,在此摘录几条我认为比较重要的:SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。
对访问的控制彻底化MAC(Mandatory Access Control)
对于所有的文件,目录,端口这类的资源的访问,都可以是基于策略设定的,这些策略是由管理员定制的、一般用户是没有权限更改的。
TE (Type Enforcement)– 对于进程只赋予最小的权限
Te概念在 SELinux里非常的重要。它的特点是对所有的文件都赋予一个叫type的文件类型标签,对于所有的进程也赋予各自的一个叫 domain的 标签。Domain标签能够执行的操作也是由access vector在策略里定好的。
domain迁移 –防止权限升级
对于用户只赋予最小的权限
反正SELinux听起来是很高大上的,但是作为一个Linux菜鸟,不打算从更改权限入手解决问题,而打算使用更直接的方法:关闭 SELinux服务,对,就是关闭。
关闭SELinux的方法:
1. 临时关闭: 使用命令
setenforce 0
2. 永久关闭: 修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。
使用
setenforce 0关闭后,再试了一下上面失败的mysql导出文件,果然没问题。
相关文章推荐
- linux下php无法创建文件夹和文件的问题
- php linux下无法创建777权限目录的问题
- linux 更改权限后也无法创建目录和文件问题处理
- PHP调用Linux的命令行执行文件压缩命令&&创建文件夹修改权限
- ubuntu chmod 无法更改 文件夹权限 系统提示“不允许的操作 2、linux 如何修改只读文件 3、ubuntu安装
- linux系统sudoers文件夹权限777以及/etc/profile文件修改后无法进入系统问题
- 15 Linux更改权限解决新建用户不能读写创建文件/文件夹的问题
- 真机调试时 无法在sdcard创建文件夹 或者push文件时没有权限
- java 在linux 下创建文件及文件夹 权限
- samba使linux普通用户具有创建文件夹、读写文件的权限
- Linux只读权限对于文件和文件夹的一点差异讨论
- LINUX中 设置了umask 创建的默认文件和目录的权限
- Linux( Ubuntu10.04 LTS ) 下的文件和文件夹权限
- xp下删除windows7,无法删除windows7文件夹,无法删除windows7文件,双系统卸载,取得文件权限
- linux的文件夹/文件目录权限
- linux修改文件夹、文件目录权限 大全
- linux chmod命令参数及用法详解--文件文件夹权限设定命令
- linux chmod命令参数及用法详解--文件文件夹权限设定命令
- Linux 文件、文件夹默认权限
- linux创建用户 限制权限-用户(User)和用户组(Group)配置文件详解