Linux 的每个档案中,依据权限分为使用者、群组与其他人三种身份;
群组最有用的功能之一,就是当你在团队开发资源的时候,且每个帐号都可以有多个群组的支援;
利用 ls -l 显示的档案属性中,第一个栏位是档案的权限,共有十个位元,第一个位元是档案类型,接下来三个为一组共三组,为使用者、群组、其他人的权限,权限有 r,w,x 三种;
如果档名之前多一个『 . 』,则代表这个档案为『隐藏档』;
更改档案的群组支援可用 chgrp,修改档案的拥有者可用 chown,修改档案的权限可用 chmod
chmod 修改权限的方法有两种,分别是符号法与数字法,数字法中 r,w,x 分数为 4,2,1;
对档案来讲,权限的效能为:
r:可读取此一档案的实际内容,如读取文字档的文字内容等;
w:可以编辑、新增或者是修改该档案的内容(但不含删除该档案);
x:该档案具有可以被系统执行的权限。
对目录来说,权限的效能为:
r (read contents in directory)
w (modify contents of directory)
x (access directory)
要开放目录给任何人浏览时,应该至少也要给予 r 及 x 的权限,但 w 权限不可随便给;
Linux 档名的限制为:单一档案或目录的最大容许档名为 255 个字元;包含完整路径名称及目录(/) 之完整档名为 4096 个字元
根据 FHS 的官方文件指出, 他们的主要目的是希望让使用者可以瞭解到已安装软体通常放置于那个目录下
FHS 订定出来的四种目录特色为:shareable, unshareable, static, variable 等四类;
FHS 所定义的三层主目录为:/, /var, /usr 三层而已;
有五个目录不可与根目录放在不同的 partition,分别为/etc, /bin, /lib, /dev, /sbin 五个。
本章练习
1、请说明/bin 与/usr/bin 目录所放置的执行档有何不同之处?
/bin 主要放置在开机时,以及进入单人维护模式后还能够被使用的指令,至于/usr/bin 则是大部分软件提供的指令放置处。
2、请说明/bin 与/sbin 目录所放置的执行档有何不同之处?
/bin 放置的是一般使用者惯用的指令,至于/sbin 则是系统管理员才会使用到的指令。不过/bin与/sbin 都与开机、单人维护模式有关。 更多的执行档会被放置到/usr/bin 及/usr/sbin 底下。
3、哪几个目录不能够与根目录(/)放置到不同的 partition 中?并请说明该目录所放置的资料为何?
/etc(设定档), /bin(一般身份可用执行档), /dev(装置档案), /lib(执行档的函式库或核心模组等), /sbin(系统管理员可用指令)
4、试说明为何根目录要小一点比较好?另外在分割时,为什么/home, /usr, /var, /tmp 最好与根目录放到不同的分割槽? 试说明可能的原因为何(由目录放置资料的内容谈起)?
根据 FHS 的说明,越小的/可以放置的较为集中且读取频率较不频繁,可避免较多的错误。 至于/home(使用者家目录), /usr(软体资源), /var(变动幅度较大的资料), /tmp(系统暂存,资料莫名)中, 因为资料量较大或者是读取频率较高,或者是不明的使用情况较多,因此建议不要与根目录放在一起, 也会有助于系统安全。
5、早期的 Unix 系统档名最多允许 14 个字元,而新的 Unix 与 Linux 系统中,档名最多可以容许几个字元?
由于使用 Ext2/Ext3 档案系统,单一档名可达 255 字元,完整档名 (包含路径) 可达 4096 个字元
6、当一个一般档案权限为 -rwxrwxrwx 则表示这个档案的意义为?
任何人皆可读取、修改或编辑、可以执行,但不一定能删除。
7、我需要将一个档案的权限改为 -rwxr-xr-- 请问该如何下达指令?
chmod 754 filename 或 chmod u=rwx,g=rx,o=r filename
8、若我需要更改一个档案的拥有者与群组,该用什么指令?
chown, chgrp
9、Linux 传统的档案系统为何?此外,常用的 Journaling 档案格式有哪些?
传统档案格式为:ext2,Journaling 有 ext3 及 Reiserfs 等
10、请问底下的目录与主要放置什么资料:
/etc/, /etc/init.d, /boot, /usr/bin, /bin, /usr/sbin, /sbin, /dev, /var/log
/etc/: 几乎系统的所有设定档案均在此,尤其 passwd,shadow
/etc/init.d: 系统开机的时候载入服务的 scripts 的摆放地点
/boot: 开机设定档,也是预设摆放核心 vmlinuz 的地方
/usr/bin, /bin: 一般执行档摆放的地方
/usr/sbin, /sbin: 系统管理员常用指令集
/dev: 摆放所有系统装置档案的目录
/var/log: 摆放系统登录档案的地方
11、若一个档案的档名开头为『 . 』,例如 .bashrc 这个档案,代表什么?另外,如何显示出这个档
名与他的相关属性?
有『 . 』为开头的为隐藏档,需要使用 ls -a 这个 -a 的选项才能显示出隐藏档案的内容,而使用 ls -al 才能显示出属性。
阅读(1761) | 评论(0) | 转发(0) |