一.操作系统

敲命令之前记住三点

1.我是谁? whoami

2.我在哪? pwd

3.我要⼲什么?

4.操作系统的⽬录结构

Linux的⽬录结构:

“/”表示根⽬录,根⽬录是Linux⽬录结构中的最顶级的⽬录,类似于windows的C:\ D:\

/boot⽬录:存放的是系统的启动配置⽂件和内核⽂件

/dev⽬录:存放的是Linux的设备⽂件

/etc⽬录:存放的是Linux的配置⽂件

/home⽬录:存放的是Linux普通⽤户的家⽬录

/media⽬录:挂载点⽬录

/mnt⽬录:挂载点⽬录

/run⽬录:挂载点⽬录

/opt⽬录:存放软件⽂件的⽬录

/proc⽬录:存放的是进程⽂件

/srv⽬录:存放⼀些资源⽂件

/sys⽬录:存放⼀些资源⽂件(系统资源)

/tmp⽬录:存放的是⼀些临时⽂件(⾮常重要)

/usr⽬录:Linux软件默认安装的⽬录

/var⽬录:存放log⽇志⽂件的⽬录

/bin->/usr/bin :存放的是普通⽤户能执⾏的命令

/lib->/usr/lib:存放的是32位的函数⽂件

/lib64->/usr/lib64:存放的是64位的函数⽂件

/sbin->/usr/sbin:存放的是超级⽤户能执⾏的命令

/root:是root⽤户的家⽬录

 

 

 

su切换⽤户

普通⽤户切换到任何⽤户都需要输⼊密码

root⽤户切换到任何⽤户都不需要输⼊密码

语法su - username

二.文件管理与目录管理

⽂件的增删改查

文件属性的查看ls

ls -l查看文件的详细信息

-a参数表示显示以"."开头的⽂件,在Linux中,以"."开头的⽂件是隐藏⽂件

-d表示显示⽬录本身的属性,⽽不是⽬录下的内容的属性

-h参数易读

⽂件内容的查看

⽂本⽂件内容的查看

cat ⽂本⽂件的路径1 ⽂本⽂件的路径2

head ⽂本⽂件的路径 ,显示⽂件的前10⾏内容

head -n 5 ⽂本⽂件的路径 , 显示⽂件的前5⾏内容

head -5 等于 head -n 5

tail ⽂本⽂件的路径, 显示⽂件的后10⾏内容

tail -n 5 ⽂本⽂件的路径, 显示⽂件的后5⾏内容

tail -f ⽂本⽂件的路径 , 不断的查看⽂件的后10⾏内容

more 当⽂件内容⾮常多的时候,cat命令会⼀次性将所有的内容输出到屏幕上,假如说有1万⾏。

对于⽂本内容较多的⽂件,more命令可以分⻚显示这些内容。

假如⼀个⽂件有⼀万⾏,100⾏⼀⻚,那么more命令就能将这1万⾏内容分成100⻚

回⻋:可以让你看下⼀⾏内容

空格:可以让你看下⼀⻚的内容

q:可以退出more的状态

more命令不⽀持向前翻⻚

less和more差不多,less的好处是可以向前翻⻚

 

文件的创建

touch 文件路径1 文件路径2     创建文本文件

mkdir 文件路径1 文件路径2     创建目录文件

 

文件的删除

rm命令 文件路径1 文件路径2

-i参数能提示是否删除⼀个⽂件

-f参数,强制删除,不提醒

-r参数能赋予rm删除⽬录的能⼒

常用命令rm-rf极其危险的命令

ll=ls -l

rm= rm -i,通过alias命令设置别名。

rmdir只能删除空目录

 

 

文件的修改

cp(copy)

mv(move)

指定多⽂件拷⻉

cp 源⽂件1 源⽂件2 .... ⽬的⽬录path

cp如果最后⼀个⽂件是⼀个存在的⽬录,就将cp指定的⽂件拷⻉到⽬标⽬录

拷⻉且改名(备份)

cp 源⽂件 ⽬的⽬录

cp如果最后⼀个⽂件并不是⼀个存在的⽬录,就将cp指定的⽂件拷⻉到⽬标名字的上层⽬录,并且将名字更改为⽬标

名字

cp -r可以拷⻉⽬录

cp -a 可以保留⽂件的原有属性

 

 

管道

①管道的左边和右边都有命令

②管道左边的命令会产⽣输出结果,输出结果经过了管道之后,就会变成输

⼊。

③管道右边的命令,总是接收输⼊的命令

grep (抓) 过滤⽂件中的内容,如果过滤的内容存在,就将改⾏显示出来

grep 内容 普通⽂本⽂件

-i 不区分⼤⼩写

-v 反向抓取(我抓取的内容是123,加上-v,就是除了123,都抓取)

-A 向前抓取

-B 向后抓取

-n 显示⾏号

-E expression 正则表达式

 

通配符

?就是通配符的一个,"?"表示一个非空的任意字符

 

\表示转移字符,能让特殊字符失去原有的功能

 

[ ]表示匹配"[]"包含的其中的一个字符

 

*表示匹配任意数量的字符

 

正则表达式

^ 表示以什么什么开头

$ 表示以什么什么结尾

. 表示匹配任意⼀个⾮空字符

.* 表示匹配任意⾮空字符串

.* 表示有1~n个.

.? 表示匹配任意两个⾮空字符

? 表示可以重复前⾯指定的字符1次或0次

三. 用户用户组管理

用户的增删改查

增useradd

删userdel

改usermod

查id,grep username /etc/passwd

 

用户组的增删改查

增groupadd

删groupdel

改groupmod

查grep 组名 /etc/group

 

主要组(指定用户组) 私有组(没有指定用户组时自动创建与用户同名的用户组)

添加附加组(attached group),⼀个⽤户只可以属于⼀个primary

group,但是可以同时属于多个attached group

useradd -g 指定的是添加⽤户该⽤户的primary group,-G 指定的是

添加该⽤户的attached group。

创建⽤户的时候指定⽤户组

grep hzz /etc/passwd

 

用户密码管理

设置密码

 passwd 用户名

⽤户的密码信息存放在/etc/shadow中

 grep 用户名 /etc/shadow

-d 参数可以删除⼀个⽤户的密码

使⽤passwd命令控制⽤户的密码信息

 passwd -n 3 -x 10 -w 5 -i 2 tgb 

passwd的账号失效⽇期-e,直接加⽤户名,能将该⽤户的密码直接设置过

期 passwd -e tgb

锁定⽤户的密码

 passwd -l tgb

-u 解锁密码

使⽤chage(change age)来修改⽤户的密码信息

chage -d 1300 -m 2 -M 20 -W 10 -I 4 -E 2021-1-1 tgb

 

用户组密码信息gpasswd 用户组

newgrp groupname,能让⼀个⽤户临时的切换到另外⼀个组,那么切换成

功之后,该⽤户创建的⽂件就都属于切换后的组。

touch /etc/nologin 除了root之外的所有⽤户都进制登录。

rm -rf /etc/nologin 解除⽤户登录限制

四. 权限

r=read读 4

w=write写 2

x=execute执行 1

chgrp修改用户组权限

chown修改拥有人与用户组权限

chmod设置文件权限

SET UID特殊权限应用于可执行的普通文件,当一个文件被设置SET UID特殊权限时,任何人一旦执行 该文件,都会临时获得文件拥有人的权限。

SET GID特殊权限应用于目录文件,当一个目录被设置SET GID特殊权限时,任何用户在该目录下创建 文件, 文件的所属组都会变成被设置SET GID那个目录的所属组。

系统缺省权限设置umask

创建目录的最终权限,就是目录777减去umask的后3位 创建普通文件的最终权限,就是666减去umask的后3位

 

五. 进程

进程管理

  1. 进程概念-运⾏中的程序

进程是正在执⾏的⼀个程序或命令,每⼀个进程都是⼀个运⾏的实体,都有⾃⼰的地址空间,并占⽤⼀定的系统资源。程序消耗的是磁盘资源,进程消耗的是内存和CPU资源

  1. 进程管理

进程管理的作⽤

(1)判断服务器健康状态

(2)查看系统中所有进程

(3)“杀死”进程