Linux下的与用户及权限管理
Linux是一个多用户系统,为了安全和稳定的考虑,Linux有权管理机制。
Linux权限管理下的三个主体:
- 用户本人
- 同组用户(同一个部门)
- 其他所有用户
对于所有的文件,又有三个权限: - r:read ,读权限
- w::write , 写权限
- x: exectue ,执行权限
通过
ls -l
命令查看文件的详细信息
以上详细信息的第一个字段,就纪录了文件的基本分类和权限信息,比如:
drwxr-xr-x
中,d代表它是一个目录
-rw-r--r--
中,"-"代表的是普通文件
我们可以总结为:
对于一个文件的详细,总共有十列
第一列表示文件的属性,比如是文件还是目录
之后每三列为一个单元,分别对应了用户本人、同组用户、其他用户的权限。
如果没有这个权限,则用’-’(减号)代替。
如:
drwxr-xr-x
如果想修改文件的权限,可以通过chmod(change mode)命令。
语法为:
chmod xxx 文件名
用数字的办法表示权限
简单来说就是用数字之和来表示每个用户的权限
- r: 4
- w:2
- x:1
如:
drwxr-xr-x
代表的权限数字格式为:
755
我们使用:
chmod 775 Music
之后可得到:
我们发现Music的属性的确变为了
drwxrwxr-x,而不是原来的drwxr-xr-x
用户管理相关的命令
无敌且危险的root
在Linux系统中,有一个root账号,这个账号拥有整个系统的所有权限。
因为权限很高,所以也很危险。所以强烈不推荐使用root作为常用账号。
正因为如此,很多发行版本的默认登录账号,并不是root,甚至就没有root账号。
一般可以通过
su
切换成root。
此外,还可以通过更安全的sudo来临时地以root权限运行命令。
它的使用方法,就是在普通命令前,加上“sudo ”即可。
如
sudo cat /etc/shadow
一些用户管理的相关命令:
设置密码:
passwd
增加账号:
sudo adduser atom2
目录结构
Linux下的文件系统和Windows有较大不同。
Linux下的所有目录,都是由根目录("/")开始的。
我们可以使用cd命令切换目录
cd /
并查看根目录下的目录:
ls
结果为:
所有Linux发行版本,都有类似的目录结构。他们大多数由特定的意义,我们学习其中
的部分:
- bin:这个目录下,保存了各种可执行文件。
- sbin:与系统管理有关的可执行文件
- etc:存放配置文件(比如/etc/passwd保存了用户基本信息)
- lib:放库文件
- home:是所有“用户目录”的根目录,每个用户独立的目录,一般以/home/<用户
ID>命名。控制台一般以“~”带代表这个路径。 - root:root目录就是root用户的HOME目录
- dev:设备文件,是Linux对硬件文件化的封装
- proc:虚拟的文件系统,提供了重要的内核信息
- usr:因为历史遗留问题,出现了usr目录,usr目录的中的结构与根目录相似。推
荐大家将自己后续的内容,放在usr目录对应的目录下。
manual page文档系统
Linux自带帮助文档,是自学的一个好方法
语法为:
man 想查询的命令
如:
man ls
就可以进入到ls的帮助文档。
- j、k:向下和向上移动
- Ctrl+F:向下翻页
- Ctrl+B:向上翻页
- /<关键字>:搜索字符串
比如:" /l " 如果想在多个结果中调准,可以按n(next),或者N。 - q:退出
- G:跳转到最后
Linux的所有公开标准知识,全部在Manual page中。
比如Linux的系统调用、Linux的命令。
Linux对知识进行了分类:
1 可执行程序或shell命令
2 系统调用(内核提供的函数)
3 库函数
4 Special files (usually found in /dev)
5 文件格式和标准
6 Games
7 Miscellaneous
8 系统管理命令
如果想指定类别进行检索:
man 2 mkdir #查找系统调用中的mkdir
man 1 mkdir #查找命令中的mkdir
文本编辑器
在windows下,文本编辑大家一定不陌生。
Ubuntu中由可视化的文本编辑器,gedit。
但是,gedit并不是Linux的标配。
vi才是Linux的标配。
vi的发明年代,还没有鼠标,它的所有操作是通过键盘操作。
使用vi创建一个文件
vi first.txt
注意:
ubuntu是不显示后缀名的,他的所有的格式都是由文件的具体内容来决定的。
vi有两种模式:
命令模式
这个模式下,vi接受快捷键做各种操作
编辑模式
只有进入到编辑模式,才能写文字
- 进入到编辑模式的方式为:i
- 退出编辑模式:可以按ESC或者Ctrl+C退出编辑模式
- 退出程序: 在命令模式下,按:q。可以退出程序(但是不保存不准退出)。
- 保存:按:w可以保存。
- 我们也可以使用:q!直接退出(不保存),或者:wq保存并退出。
- 移动:h,j,k,l分别对应了左、下、上、右.
- 翻页的快捷键同man Ctrl+f 向下 Ctrl+b 向上
- 还可以通过数字+gg的方式,跳转到指定行。比如2gg
- $可以跳转到行尾,^可以跳转到行首
插入文本的方式 - i:当前字符后插入文字
- o:在下一行插入
- O:在上一行插入
- r:修改一个字符
- R:修改多个字符
撤销重做 - 在命令模式下,按u可以撤销
- Ctrl + r是重做
复制粘贴 - yy:复制当前行,p命令可以粘贴。y3y表示复制3行
- 我们还可以使用v命令,进入到可视化模式。进入到可视化模式后再按y,可以复
制选中的内容。
apt软件包管理系统
操作系统需要配合应用软件,才能满足日常工作需求。
Linux下也有类似“应用商店”的软件包管理系统,它可以根据我们需求,去自动寻找服
务器上匹配的软件,并且自动下载、解压、安装。
并且该包管理系统,会维护已经安装或者未安装的软件信息,方便我们写在、更新。
Linux下流行的包关系系统有两大类:
- apt:ubuntu、树莓派等发行版本使用
- yum:红帽、centos等使用
apt源地址的替换
我们默认的apt服务器是国外的网站,速度一般比较慢。
实际上,全球有很多apt的服务器网站,到底使用哪个服务器,是在
/etc/apt/sources.list
中配置的。
deb http://us.archive.ubuntu.com/ubuntu/ trusty 1 main restricted
以上的第二个字段(网址)是服务器地址。
trusty是ubuntu 14所对应的名称。不同的ubuntu系统有不同的代码,这个代号需要与
当前系统一致。