文件权限模拟练习
[root@wen ~]# groupadd incahome
[root@wen ~]# usersdd oldboy -g incahome
-bash: usersdd: command not found
[root@wen ~]# useradd oldboy -g incahome
[root@wen ~]# id oldboy
uid=502(oldboy) gid=502(incahome) 组=502(incahome)
[root@wen ~]# useradd oldgirl
[root@wen ~]# id oldgirl
uid=503(oldgirl) gid=503(oldgirl) 组=503(oldgirl)
[root@wen ~]# useradd test
[root@wen ~]# id test
uid=504(test) gid=504(test) 组=504(test)
------------
[root@wen ~]# mkdir /oldboy
[root@wen ~]# echo "echo oldboylinux" >/oldboy/test.sh
[root@wen ~]# cat /oldboy/test.sh
echo oldboylinux
[root@wen ~]# ll /oldboy/test.sh
-rwxr-xr-x 1 root root 17 10月 17 17:40 /oldboy/test.sh
------------------
更改用户和组
[root@wen ~]# cat /oldboy/test.sh
echo oldboylinux
[root@wen ~]# /oldboy/test.sh
oldboylinux
[root@wen ~]# chown oldboy.incahome /oldboy/test.sh
[root@wen ~]# ll /oldboy/test.sh
-rwxr-xr-x 1 oldboy incahome 17 10月 17 17:40 /oldboy/test.sh
-------------
更改权限
[root@wen ~]# chmod g+w,o-x /oldboy/test.sh
[root@wen ~]# ll /oldboy/test.sh
-rwxrwxr-- 1 oldboy incahome 25 10月 17 17:56 /oldboy/test.sh
------------
linux普通文件的读,写,执行权限总结:
1.可读r:表示具有读取阅读文件内容的权限;
2.可写w:表示具有新增,修改文件内容的权限;
a.如果没有r配合,那么vi编辑文件会提示无法编辑(但可强制编辑,echo可以重定向或追加)
b.删除文件(修改文件名等)的权限是受父目录的权限控制,和文件本身权限无关;
3.可执行x:表示具有执行文件的权限
a.文件本身要能够执行
b.普通用户同时还需要具备r的权限才能
c.root只有x的权限就能执行
有关文件删除的说明:
linux中的文件名是存在于父目录的block里面,并指向这个文件的inode节点,这个文件的inode节点再标记指向存放这个文件的block的数据块。我们删除一个文件,实际上并不清除inode节点和block的数据。只是在这个文件的父目录里面的block中,删除这个文件的名字和这个inode的对应关系,使这个文件名消失,并且无法指向这个文件的inode节点,当没有文件名指向这个inode节点的时候,系统会同时释放inode节点和存放这个文件的数据块,并且更新inode MAP 和block MAP,让这些位置用于放置其他新的文件数据。因此,修改删除文件名都是在操作文件的上级目录block,修改或删除的文件名和inode的关联数据,因此和上级目录权限关联。