1、查看文件夹下所有文件命令
ls -al
-l 显示文件属性
-a 显示隐藏文件,例如.abc
ls -l相当于ll
显示文件详细信息
- 权限:
权限包含档案类型、不同用户的可读、可写、可执行等权限
档案类型包括
【d=文件夹,-=文件,l=链接,b=可存储的接口设备,c=鼠标、键盘之类】
-
连结:表示有多少个档名连结到此节点
-
拥有者:文档所属用户 群组:文档所属群组,并不一定是用户的群组
-
文件容量:文件大小,默认单位为bytes 修改日期:建档或最近修改日期
-
档名:文档名称
2、文件权限重要性
2.1. 系统保护功能:比如一些重要的执行文件或配置文件,保密性极高,不能让除root用户外其他用户随意处理,否则有系统崩溃,密码泄露的危险
2.2. 团队开发软件或数据共享的功能:[-rwxrwx—]
2.3. 未将权限设定妥当的危害:根据第一条所描述的,若让其他用户拥有root用户权限,易造成程序混乱,系统崩溃,密码泄露等危险
3、修改文件属性与权限
3.1 改变用户群组:chgrp
[root@www ~]# chgrp [-R] dirname/filename ...选项与参数:
-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件、目录都更新成为这个群组之意。常常用在变更某一目录内所有的文件之情况。
范例:
[root@www ~]# chgrp users install.log
[root@www ~]# ls -l
-rw-r--r-- 1 root users 68495 Jun 25 08:53 install.log
[root@www ~]# chgrp testing install.log
chgrp: invalid group name `testing' <== 发生错误讯息啰~找不到这个群组名~
3.2 改变文件拥有者:chown
[root@www ~]# chown [-R] 账号名称 文件或目录
[root@www ~]# chown [-R] 账号名称:组名 文件或目录选项与参数:
-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都变更
范例:将install.log的拥有者改为bin这个账号:
[root@www ~]# chown bin install.log
[root@www ~]# ls -l
-rw-r--r-- 1 bin users 68495 Jun 25 08:53 install.log
范例:将install.log的拥有者与群组改回为root:
[root@www ~]# chown root:root install.log
[root@www ~]# ls -l
-rw-r--r-- 1 root root 68495 Jun 25 08:53 install.log
3.3改变权限: chmod
数字类型改变权限 | r:4 、w:2、x:1、-:0 |
---|---|
计算方式 | 4+2+1=7、0+0+0=0 |
顺序 | 用户、群组、其他 |
命令 | chmod 777 文件名 |
除此之外
目录权限
r:
- 可查看目录名称
w:
- 建立新的文件与目录;
- 删除已经存在的文件与目录(不论该文件的权限为何!)
- 将已存在的文件或目录进行更名;
- 搬移该目录内的文件、目录位置。
x:
- 可进入该目录
例题:
文件夹tests,权限[drw-r–r--],用户:a
文件test1在tests下,权限[drw-r–r--],用户:root
问用户a能否删除test1文件?
答:可以,详见w的第二条
4、文件种类
-
Linux文件长度限制
单一文件或目录的最大容许文件名为 255 个字符;
包含完整路径名称及目录 (/) 之完整档名为 4096 个字符。 -
Linux文件名的限制
避免一些特殊字符:* ? > < ; & ! [ ] | \ ’ " ` ( ) { } + -
5、Linux目录配置
5.1、 Linux目录依照FHS(Filesystem Hierarchy Standard )来进行配置,有以下四种大类
可分享的(shareable) | 不可分享的(unshareable) | |
---|---|---|
不变的(static) | /usr (软件放置处) | /etc (配置文件) |
/opt (第三方协力软件) | /boot (开机与核心档) | |
可变动的(variable) | /var/mail (使用者邮件信箱) | /var/run (程序相关) |
/var/spool/news (新闻组) | /var/lock (程序相关) |
- 可分享的:可以分享给其他系统挂载使用的目录
- 不可分享的:自己机器上面运作的装置文件或者是与程序有关的socket文件等, 由于仅与自身机器有关
- 不变的:有些数据是不会经常变动的,跟随着distribution而不变动。 例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等;
- 可变动的:经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等
5.2、 FHS针对目录树架构仅定义出以下三层目录底下应该放置什么数据而已
/ (root, 根目录):与开机系统有关;
/usr (unix software resource):与软件安装/执行有关;
/var (variable):与系统运作过程有关。
5.3、 根目录 (/) 的意义与内容
FHS:根目录(/)所在分割槽应该越小越好, 且应用程序所安装的软件最好不要与根目录放在同一个分割槽内,保持根目录越小越好。 如此不但效能较佳,根目录所在的文件系统也较不容易发生问题;
根目录与开机有关,开机过程中仅有根目录会被挂载, 其他分割槽则是在开机完成之后才会持续的进行挂载的行为。就是因为如此,因此根目录下与开机过程有关的目录, 就不能够与根目录放到不同的分割槽去!以下为不可分割的目录
- /etc:配置文件
- /bin:重要执行档
- /dev:所需要的装置文件
- /lib:执行档所需的函式库与核心所需的模块
- /sbin:重要的系统执行文件
其他
- . :代表当前的目录,也可以使用 ./ 来表示;
- … :代表上一层目录,也可以 …/ 来代表。