Linux(二)——Linux目录树和用户管理

Linux文件目录

Linux的理念之一就是“万物皆文件”,即使是硬件设备,也会在Linux中映射成文件来操控,这听起来相当炫酷。

Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。深刻理解Linux树状文件目录是非常重要的:
在这里插入图片描述
每个目录都有自己的职能,用来存放不同类型的文件。先挑重点的来看:

  • /bin (/usr/bin 、 /usr/local/bin) 是Binary的缩写, 这个目录存放着各种各样的 命令
  • /home 存放普通用户的主目录。每个用户都有一个自己的主目录,文件名默认是用户名。
  • /root该目录为系统管理员,也称作超级权限者的用户主目录。
  • /etc 存放系统管理所需要的全部配置文件和子目录
  • /usr用户的许多应用程序和文件都存放在这里,类似于windows下的ProgramFiles
  • /boot存放的是启动Linux时使用的一些核心文件。
  • /media挂载Linux自动识别的设备,比如U盘,光驱等 。
  • /mnt 专门用来供用户临时挂载别的文件系统 。
  • /var这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件。
  • /usr/local这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序。
  • /srv service缩写,该目录存放一些服务启动之后需要提取的数据。
  • /tmp 这个目录是用来存放一些临时文件的。
  • /sys 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统
  • /proc 是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息。
  • /dev 类似于windows的设备管理器,把所有的硬件用文件的形式存储。
  • /selinux [security-enhanced linux] 360 ELinux是一种安全子系统,它能控制程序只能访问特定文件。
  • /opt 这是给主机额外安装软件包所摆放的目录。如安装ORACLE数据库就可放到该目录下。默认为空。

总结一下,Linux中只能有一个根目录,那个目录该放什么文件应该有一定的认识,文件不能乱放。

用户管理

用户与用户组

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。一般来说,用户的主目录是在Home目录下,以用户名为目录名保存。

用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护

每个用户至少有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。

管理用户

用户的管理是由root用户来做的,也就是系统管理员,所以,以下部分操作必须要先切换到root用户才能完成。切换到root用户的命令是su -,之后输入密码就行了。

  • 新增用户 useradd [选项] 用户名

选项包括:

-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。(覆盖)
-G 用户组,用户组 指定用户所属的附加组。(添加)
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号

当创建用户成功后,会自动的创建和用户同名的主目录,默认放在/Home/下。主目录并不是固定的,你可以根据useradd -d 目录 -m 用户名在创建用户的同时为他指定一个主目录,-m表示当目录不存在就创建一个。

-g参数用来为用户指定一个用户组,如果我们没有为新建的用户指定用户组,那么系统会自动创建一个同名的用户组并把该用户归属到该用户组

  • 指定或修改密码 password 用户名

新增用户后记得为他设定密码,密码不宜过于简单。

  • 删除用户 userdel [选项] 用户名
  1. userdel xxx 删除xxx用户的账号;
  2. userdel -r xxx 删除xxx用户的账号,并将其主目录一并删除

可见,-r 参数会在删除账号的同时删掉其主目录,一般情况下我们建议保留,也就是不适用 -r 参数。

  • 修改用户信息 usermod [选项] 用户名

根据实际情况更改用户的有关属性,如用户号、主目录、用户组等,选项与添加用户时一样,使用对应的参数即可。

  • 查询用户信息 id 用户名

使用这个命令可以查看都用户的uid和gid及附加组信息。如果用户不存在是会返回no such user的提示。

  • 切换用户 su - 用户名

当想要执行某个操作而发现当前用户权限不够时,就可以使用这个命令来切换用户,如果su命令不加参数,默认是切换到root用户。

从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。 如果要返回到原来用户时,使用exit指令即可。

  • 查看当前用户 whoami / who am I

  • 切换当前用户的用户组 newgrp 组名

如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。前提条件是用户组确实是该用户的主组或附加组。

管理用户组

系统可以对有共性的多个用户进行统一的管理。

  • 新增用户组 groupadd [选项] 组名

可以使用的选项有:

-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
  • 删除用户组 groupdel 组名

  • 修改用户组属性 groupmod [选项] 组名

常用的选项有:

-g GID 为用户组指定新的组标识号。
-n 新用户组 将用户组的名字改为新名字

相关的文件

上面已经讲到,万物皆文件,我们对用户和用户组的操作实际上是对文件的修改,/etc目录下就存放着所有的关于系统管理所需要的文件。与用户和用户组相关的信息都存放在这里,这些文件包括/etc/passwd, /etc/shadow, /etc/group等。

  • /etc/passwd 用户(user)的配置文件,记录用户的各种信息。
    每行的含义: 用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
  • /etc/shadow 口令(密码)的配置文件。
    每行的含义: 登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警 告时间:不活动时间:失效时间:标志
  • /etc/group 组(group)的配置文件,记录Linux包含的组的信息
    每行的含义: 组名:口令:组标识号:组内用户列表

这些文件都非常重要,如果没有需要的话最好不要轻易改动。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值