1、在linux系统下,默认情况下,所有系统账号与一般身份用户,以及root的相关信息,都记录在/etc/passwd文件里。密码记录/etc/shadow文件中。linux所有的用户组名称都记录在/etc/group内。这3个文件可以说是linux系统中账号、密码、用户信息的集中地。
2、文件属性(共10个):
-rwxrwxrwx
1:文件类型
[d]:目录
[-]:文件
[l]:连接文件
[b]:设备文件中可供存储的接口设备
[c]:设备文件中的串行端口设备,例如键盘、鼠标
234:拥有者权限
567:同用户组权限
8910:其他非本用户组的权限
3、更改文件权限
1)chgrp:改变文件所属用户组
要改成的用户组名称必须在/etc/group里存在,否则就显示错误。比如在/etc/group里有一个名为users的用户组,但是没有testing这个用户
组,若要将一个文件的用户组改为users可以,但改为testing就不行了。
[root@linux ~]# chgrp [-R] dirname/filename ...
参数:
-R:进行递归的持续更改,即连同子目录下的所有文件、目录都更新成这个用户组。
举例:在tmp下面建一个testing文件目录,默认文件组为root,然后将它更改为users
[root@linux ~]# cd /tmp
[root@linux ~]# mkdir testing
[root@linux ~]# ls -al
[root@linux ~]# chgrp users testing
[root@linux ~]# la -al
2)chown:改变文件拥有者
更改之后的用户应该是已经存在于系统中的,也就是在/etc/passwd这个文件中有记录的用户名称才可以改变。
[root@linux ~]# chown [-R] 账号名称:文件或目录
[root@linux ~]# chown [-R]账号名称:用户组名称、文件或目录
参数:
-R:进行递归的持续更改,即连同子目录下的所有文件、目录都更新成这个用户组。
举例:
[root@linux ~]# chown bin install.log
[root@linux ~]# ls -l
[root@linux ~]# chown root root install.log
[root@linux ~]# ls -l
3)chmod:改变文件的属性、SUID等特性
数字方法:
r:4
w:2
x:1
若要将属性改为[-rwxrwx---],则是:
owner = rwx = 4 + 2 + 1 = 7
group = rwx = 4 + 2 + 1 = 7
others = --- = 0 + 0 + 0 = 0
[root@linux ~]# chmod [-R] xyz 文件或目录
参数:
xyz:数字类型权限属性,为rwx属性之和
-R:进行递归的持续更改,即连同子目录下的所有文件、目录都更新成这个用户组。
[root@linux ~]# chmod 770 .bashrc
文件.bashrc属性改为:-rwxrwxrwx---
符号类型:
u:user
g:group
o:others
a:all
如:将文件.bashrc设置为-rwxr-xr-x
[root@linux ~]# chmod u=rwx,go=rx .bashrc
当增加权限时,可以这么做:
[root@linux ~]# chmod a+w .bashrc
所有的权限都增加W一项,如果原来本来就已经有w,也没关系,不会出错。
[root@linux ~]# chmod a-x .bashrc
4、目录属性
[root@linux ~]# cd /tmp
[root@linux ~]# mkdir testing #新建目录testing
[root@linux ~]# chmod 744 testing #修改目录权限为744
[root@linux ~]# touch testing/testing #新建空文件testing
[root@linux ~]# chmod 600 testing/testing #修改空文件testing权限为600
5、linux文件种类
1):普通文件
通常访问的文件,由ls -al显示出来的属性中,第一个属性为[-],例如:[-rwxrwxrwx],根据文件的内容,普通文件可以分为:
-纯文本文件(ASCII):其内容是我们可以直接读到的数据,例如数字、字母等。配置文件基本都属于这种类型。举例来说,使用命令"cat
~/.bashrc"就可以看到该文件的内容。
-二进制文件(binary):linux中可执行文件(脚本、文本方式的批处理文件不算)就是这种格式。举例:命令cat就是一个二进制文件。
-数据格式的文件(data):有些程序在运行过程中,会读取某些特定格式的文件,那么特定格式的文件可以称为数据文件。举例来说:
linux在用户登录时,都会将登录数据记录在/var/log/wtmp文件中,该文件是一个数据文件,它能通过last命令读出来,但使用cat时,会读出
乱码,因为它属于一种特殊格式的文件。
2)目录
第一个属性为[d]
3)连接文件(link)
类似windows下面的快捷方式,第一个属性为[l]
4)设备与设备文件
与系统外设及存储相关的文件,通常都集中在/dev目录下。该文件又分为两种:
-块设备文件:就是存储数据以供系统访问的接口设备,简而言之就是硬盘。如一号硬盘的代码就是/dev/hda1文件,第一个属性为[b]
-字符设备文件:即串行端口的接口设备,例如键盘、鼠标等,第一个属性为:[c]
5)套接字(sockets):
这类文件通常用在网络数据连接。我们可以启动一个程序来监听客户端的要求,客户端就可以通过套接字进行数据通信,第一个属性为[s],通
常在/var/run目录中又这类文件。
6)管道(FIFO,pipe)
FIFO也是一种特殊文件类型,其主要目的是,解决多个程序同时访问一个文件所造成的错误。第一个属性为[p]
6、linux文件扩展名
*.sh:
批处理文件,因为批处理文件由shell写成,所以扩展名为.sh;
*z、*.tar、*.gz、*.zip、*.tgz:
经过打包的压缩文件;
*.html、*.php:
网页相关文件;
.pl:
perl文件
7、目录名称 意义
/bin 该目录中存放Linux的常用命令,在有的版本中是一些和根目录下相同的目录。
/boot 该目录下存放的都是系统启动时要用到的程序,当用lilo引导 Linux时,会用到这里的一些信息
/dev 该目录包含了Linux系统中使用的所有外部设备,它实际上是访问这些外部设备的端口,你可以访问这些外部设备,与访问 一个文件或一个目录没有区别。例如在系统中入“cd/dev/cdrom”,就可以看到光驱中的文件;键入“cd /dev/mouse”即可看鼠标的相关文件。
/cdrom 该目录在刚安装系统时是空的,你可以将光驱文件系统挂在这个目录下, 例如“mount /dev/cdrom /cdrom”
/etc 该目录存放了系统管理时要用到的各种配置文件和子目录,例如网络配置文件、文件系统、X系统配置文件、设备配置信息、设置用户信息等。
/sbin 该目录用来存放系统管理员的系统管理程序。
/home 如果建立一个名为“xx”的用户,那么在/home目录下就有一个对应的“/home/xx”路径,用来存放该用户的主目录。
/lib 该目录用来存放系统动态连接共享库,几乎所有的应用程序都会用到该目录下的共享库
/lost+found 该目录在大多数情况下都是空的。但当突然停电、或者非正常关机后,有些文件就临时存放在这
/mnt 该目录在一般情况下也是空的,你可以临时将别的文件系统挂在该目录下。
/proc 可以在该目录下获取系统信息,这些信息是在内存中由系统自己产生的
/root 如果你是以超级用户的身份登录,这个就是超级用户的主目录
/tmp 用来存放不同程序执行时产生的临时文件
/usr 用户的很多应用程序和文件都存放在该目录下
8、特殊目录
1)建议不可与root分区分开的目录
/etc、/sbin、/bin/、/dev/、/lib/
2)建议最好独立成为单一分区的目录
/home、/usr、/var、/tmp等
9、建议系统分区方式:
- /; 1GB
- /boot; 50MB
- /usr; 10GB
- home;
- /var. 1GB
浙公网安备 33010602011771号