Linux文件
文件属性信息介绍
linux一切皆文件,我们运行以下命令查看文件属性信息。
[root@localhost ~]# ll -i /

文件有8个属性,如图

- Inode(index node)号码,linux文件唯一标识,相当于身份证。
- (drwxr-xr-x.)文件类型及权限信息
- 文件硬链接数
- 文件所有者
- 文件所属组
- 文件大小
- 文件最近修改日期
- 文件名称
文件属性信息详述
文件类型详细说明
上面我们了解到第二列代表的是文件类型及权限,其中第一字母代表的就是文件类型。

- f | - 代表普通文件,包括二进制文件、文本文件、数据类文件
- d 文件夹
- l 链接文件(软链接)
- b 块设备文件(磁盘)
- c 字符设备文件
- s 套接字文件
- p 管道文件
我们能够使用file命令查看文件类型,

另外文件名后缀没有绝对的规定,但是我们为了区分文件类型通过起后缀名的方式方便后续其他人员识别。
软硬链接说明
软连接
软链接相当于windows中快捷方式,它存放指向源文件的路径。
通过ln -s [源文件路径] [软连接名称]创建软链接,

硬链接
硬链接相当于访问文件的一个入口,这个入口数量可以不只一个!他们对应的Inode相同的文件互为硬链接。
通过ln [源文件路径] [硬链接名称]创建硬链接,

硬链接源文件被删除会影响软链接,但是硬链接并不影响,但是互为硬链接的文件皆被删除时等于在磁盘中被删除。
Inode号码说明
每创建一个文件都需要Inode与block,Inode为int数据,而它不是无限大的,文件创建过多便会使Inode号码不足。
block块
我们的磁盘被分为一个个小块来存储数据,这一个个小块即是block,block默认大小是4K。
用户和用户组

用户相当于账号,用户组是某些具有相同属性的账号的集合。
用户分为系统用户和普通用户。
系统用户:uid在 0 - 999 之间的用户,我们就看作系统用户。系统用户一般用在启动应用程序上,一般不需要登录系统。
普通用户:uid在 1000及以上的用户,我们就看作普通用户。普通用户一般用在登录上。
-
useradd [用户名]创建用户
-g 指定用户组
-r 创建系统用户
-M 不创建家目录
-u 指定创建用户的ID -
groupadd [用户组名]创建用户组
-g 指定用户组名的ID -
su - [用户名] | su [用户名]切换用户 -
id [用户名或用户组名]查看用户ID或用户组ID
查看用户详细的文件目录在/etc/passwd,
[root@localhost ~]# cat /etc/passwd

查看用户密码信息目录在/etc/shadow
[root@localhost ~]# cat /etc/shadow

查看用户组信息目录在/etc/group
[root@localhost ~]# cat /etc/group


查看用户组密码信息目录在/etc/gshadow
[root@localhost ~]# cat /etc/gshadow


测验
测验问题:如何在不使用useradd命名情况下创建新用户?
我们不妨通过useradd命令创建新增用户后,查看/home/新用户目录下的文件,

其实在/etc/skel/目录下有同样的文件,如图:

创建新用户会将/etc/skel目录下的文件拷贝到新用户家目录下,注意这是三个隐藏文件。有了此情报,我们只需要观察/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow这四个文件中用户格式并模仿编写,然后再将/etc/skel拷贝到家目录下即可,当然现在还只是一厢情愿。
那么我们尝试编写这些文件,
-
/etc/passwd![image]()
-
/etc/shadow![image]()
-
/etc/group![image]()
-
/etc/gshadow![image]()
在/home/目录下创建test2文件夹,拷贝/etc/skel/.*隐藏文件到/home/test2/,

输入su test2切换用户,

至此,模仿useradd命令完毕。






浙公网安备 33010602011771号