linux操作系统提供了较为全面的用户权限控制方法,本文的讲解基于下面的问题。
比如我建立两个文件夹itart(IT文章)和enterArt(娱乐文章),其用户分别为user1和user2,要求:
(1)登录的匿名用户只能看到这两个文件夹,但没有任何权限;
(2)用户user1登录后,只能看见itart文件夹并有读写权限,而对于enterArt文件夹,user1用户不可以看见该文件夹或能看见但没有任何权限;
(3)用户user2登录后,只能拥有enterart的操作权限,而对itart没有任何权限。
下面针对这个问题,给出详细的解决方案:
文件权限分别有三小组,分别是用户权限、组权限和它人权限,每小组由三个标志位组成,比如 rwxr-xr--,这表示这个文件的属主可读可写可进入,同组的人只能看到和执行,不能写;而其它人只能看到并读取但不能执行
对于文件夹的x,则表示可进入
假设itart和enterart这两个文件夹都在/home/ftproot/这个文件夹下,那么现在就要对/home/ftproot/ 、/home/ftproot/itart 和 /home/ftproot/enterart 这三个文件夹添加权限,以下命令均以root执行
初始化权限:所有文件夹权限去掉:
chmod 000 /home/ftproot
chmod 000 /home/ftproot/itart
chmod 000 /home/ftproot/enterart
(1)匿名用户看见itart和enterart这两个文件夹
也就是说它人要有r权限,对于文件夹还要有x权限(没有r权限则无法列出目录文件名,没有x权限则不能进入目录)
chmod o+rx /home/ftproot
这样,就可以看到itart和enterart两个文件夹了
(2)user1只具有itart的操作权限
chmod u+rwx /home/ftproot/itart
chown user1 /home/ftproot/itart
第一个是改权限,第二个是把itart目录改成user1用户所有,这样user1用户登录后可以看到itart目录了。
(3)至于enterart目录,由于在之前已经给/home/ftproot赋了rx权限,所以user1登录后是可以看到enterart目录的。不过已前已经有chmod 000 /home/ftproot所以user1权限全无,user1无法进入enterart目录(没x权限),也无法列出enterart底下有什么文件(即无法列目录,因为没有r权限),也因为没有w权限所以不能写。
对于enterart和user2进行相同的操作,同样可以达到权限控制的目的。
新闻热点
疑难解答