一、Linux的目录结构
Linux的文件系统时采用层级的梳妆目录结构,在此结构的最上层时根目录"/",然后在此目录下再创建其他的目录
在Linux的世界里,一切皆文件
1.1、Linux几个重要目录
总结:
Linux的目录中有且只有一个根目录
Linux的各个目录存放的内容时规划好的,不用乱放文件
Linux是以文件的形式管理我们的设备,因此Linux系统,一切皆为文件
Linux的各个文件目录下存放的内容,必须要有一个认识
在脑海中应该要有一颗Linux目录树
1.1.1 /bin
/usr/bin、/usr/local/bin 是Binary的缩写,这个目录存放着最常使用的命令
1.1.2 /sbin
/usr/sbin、/usr/local/sbin s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序
1.1.3 /root
该目录为系统管理员,也称作超级权限这的用户主目录
1.1.4 /lib
系统开机所需要的最进本的动态连接共享库,其作用类似于windows里的DLL文件,几乎所有的应用程序都需要用到这些共享库。
1.1.5 /etc
所有的系统管理所需要的配置文件和子目录
1.1.6 /usr
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的Program files目录
1.1.7 /boot
存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
1.1.8 /dev
类似于windows的设备管理器,把所有的硬件用文件的形式存储
1.1.9 /media
linux系统会自动识别一些设备,例如U盘,光驱等等,当识别后,linux会把识别的设备挂载到这个目录下
1.1.10 /mnt
系统提供该目录时为了让用户临时挂载别的文件系统,我们可以将外部的存储挂载在/mnt上,然后进入到该目录就可以查看里面的内容了。
别的文件系统类似于Linux和Windows共享的文件系统
二、vi和vim编辑器
正常模式:vi 某个文件进去即可,这时候是一个只读模式
插入模式:按下 i,I,o,O,a,A,r,R等任何一个字母之后才会进入到编辑模式,一般按i即可
命令行模式:在这个模式中,可以提供你相关指令,完成读取,存盘,替换,离开vim,显示行号等的动作则是在此模式中达成的
2.1 常用的快捷键
-
拷贝当前行,yy,拷贝当前行向下的5行 5yy,并粘贴
-
删除当前行,dd,删除当前行向下的5行 5dd
-
在文件中查找某个单词,命令行下 / 关键字,回车查找,输入n就是查找下一个
-
设置文件的行号,set nu,取消文件的行号 set nonu
-
编辑/etc/profile文件,使用快捷键到底文档的最末行G和首行 gg
-
在一个文件中输入hello,然后又撤销这个动作 u
三、进程服务管理
3.1 进程
每一个进程都会对应一个父进程,而这个父进程可以复制多个子进程
每个进程都是可能以2种方式存在的,前台和后台,所谓前台进程就是用户目前的屏幕上可以进行操作的,后台进程则是实际在操作,但是由于屏幕上无法看到的进程,通常使用后台的方式执行。
在Linux中,每个执行的程序代码都称之为一个进程,每个进程都分配一个ID号。
一般的系统服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束。
3.2 常用的命令
3.2.1 ps -aux
查看系统执行的进程
说明:查看进程使用的指令是 ps,一般来说使用的参数是ps -aux
ps -a:显示当前终端的所有进程信息
ps -u:以用户的格式显示进程的信息
ps -x:显示后台进程运行的参数
基本介绍
ps命令是用来查看当前系统中有哪些正在执行,以及它们的执行状态,可以不加任何参数
字段信息
PID:进程识别号
TTY:终端机号,使用的终端
TIME:此进程所消耗CPU时间
COMMAND :正在执行的命令或进程名
%CPU%:占用的cpu
%MEM%:占用内存
VBZ:使用的虚拟内存
RSS:使用的物理内存
STAT:进程的状态 s:休眠 r:运行
START:启动时间
PPID:就是PID的父进程
3.2.2 ps -aux | grep sshd
查看有没有sshd的进程
3.2.3 kill和killall
介绍
当某个进程执行到一半需要停止时,或是已经消了很大的系统资源时,此时可以考虑停止该进程,使用kill来完成此任务。
使用
ps -aux |grep sshd 查找sshd连接的进程
kill 1064 终止这个id连接sshd
kill -9 pid 强制终止
killall gedit 删除所有gedit,比如有多个记事本打开,全部关了
3.3 服务管理
介绍
服务本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如(mysql,sshd,防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点
service服务管理指令
service 服务名 start|stop|restart|reload|status
注意: 在CentOS7.0后不再使用service,而是systemctl
3.3.1 服务级别
服务的运行级别
查看或者修改默认的级别:vi /etc/inittab
Linux有7种运行级别,常用的级别是3和5
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常运行
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS),不支持网络
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设置一为6,否则不能正常启动
思考
如果不小心将默认的运行规则设置为0或者7,怎么处理?
进入到系统的运行级别配置文件: cd /etc/inittab 将运行级别改一下即可
进入单用户模式,修改成正常的即可
3.3.2 防火墙服务指令
service iptables status :查看防火墙指令
service iptables stop:关闭防火墙
3.3.3 设置级别自启动
chkconfig --list | grep xxx 查看某个服务在该用户运行级别下的运行状态
如:chkconfig --list | grep sshd
题目
请将sshd服务在运行级别为5的情况下,不要自启动
chkconfig --level 5 sshd off
显示当前系统所有服务的各个运行级别的运行状态
chkconfig --list
请查看ssh服务的运行状态
service sshd status
将sshd服务在运行级别5下设置为不自动启动
chkconfig --level 5 iptables off
在所有运行级别下关闭防火墙
chkconfig iptables off
在所有运行级别下开启防火墙
chkconfig iptables on
意思就是,在不同的运行级别中,哪些服务是开启的,哪些服务是关闭的
3.3.4 动态监控进程
介绍
top与ps命令很相似,它们都用来显示正在执行的进程。top与ps最大的不同之处,在于top在执行一段时间可以更新正在运行的进程
基本语法
top
-d 秒数,指定top命令每隔几秒更新,默认是3秒钟在top命令的交互模式中可以执行的命令
-i 使top不显示任何闲置或者是僵死的进程
-p 透过指定监控进程ID来仅仅监控某个进程的状态
交互操作说明
P 以CPU使用频率排序,默认就是此项
M 以内存的使用率排序
N 以PID排序
q 退出top
意思猜想---》输入top后,会出现相关的进程参数,再按上面几个数字,进程参数会以相关的顺序排序。
应用实例
监视特定用户
输入top命令,查看执行的进程
u:然后输入u回车,再输入用户名即可
终止指定的进程
输入top,查看执行的进程,再输入k回车,输入要终止的pid进程号
指定系统状态更新的时间(每隔10自动更新)
top -d 10
3.3.5 监控网络状态
查看系统网络情况netstat
选项说明
1. -an 按一定顺序排列输出
-p 显示哪个进程在调用
检测主机连接命令ping:
是一种网络检测检测工具,它主要是用于检测远程主机是否正常,或是两部主机间的解释是否为断,网线是否脱落或网卡故障
常用的指令
netstat -anp | more
netstat -anp | grep sshd
四、实用指令
4.1 开机重启
shutdown -h now 立刻进行关机
shutdown -h 1 hello,1分钟后就会关机了
halt 关机
reboot 重启
sync 把内存的数据同步到磁盘
注意:不管是重启还是关闭系统,首先要执行sync命令,把内存中的数据写到磁盘中
在实际的开发环境中禁止使用root账号登陆
logout 注销用户,在图形运行级别无效
4.2 用户管理
介绍
Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号进入系统。
4.2.1 添加用户
语法: useradd 用户名
当创建用户成功后,会自动的创建和用户同名的家(/home)目录
也可以通过useradd -d 指定目录,新的用户名,给新创建的用户指定家目录 useradd -d /home/tiger/ xh xh是用户名
注意: Linux的用户需要至少要属于一个组
设置密码
给用户指定一个密码
passwd xh
删除用户
userdel 用户名
题目
删除用户xm,但是要保留家目录
userdel xm
删除用户xh以及用户主目录
userdel -r xh
4.2.2 查询用户信息
语法: id 用户名
4.2.3 切换用户
语法: su - 切换用户名
细节说明
从权限高的用户切换到权限低的用户,不需要输入密码,反之需要
当需要返回到原来的用户时,使用exit指令
4.2.4 查看当前用户/登陆用户
语法: whoami/who am i
4.3 用户组管理
4.3.1 增加/删除组
groupadd /groupdel 组名
4.3.2 增加用户时加上组
useradd -g 用户组 用户名
4.3.3 修改用户的组
usermod -g 用户组 用户名
4.3.4 相关文件
/etc/passwd 文件
用户(user)的配置文件:记录用户的各种信息
/etc/shadow 文件
口令的配置文件
每行的含义:登陆名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动的时间:失效时间:标志
/etc/group 文件
组(group)的配置文件,记录Linux包含的组的信息
每行的含义:组:口令:组标识号:组内用户列表
4.4 文件操作指令
4.4.1 ls
基本语法:ls [选项] [目录或者是文件]
常用的选项
-a: 显示当前目录所有的文件和目录,包括隐藏的
-l: 以列表的方式显示信息
4.4.2 pwd
基本语法:pwd (功能描述:显示当前工作目录的绝对路径)
4.4.3 cd
基本语法: cd [参数]
绝对路径和相对路径
cd~ 或者 cd : 回到自己的家目录
cd ..回到当前目录的上一级目录
4.4.4 mkdir
基本语法: mkdir 选项 要创建的目录
常用的选项
-p : 创建多级目录
mkdir -p /home/animal/tiger
4.4.5 rmdir
基本语法
rmdir [选项] 要删除的空目录
强制删除
rm -rf 当目录下面有文件的时候,使用强制删除
4.4.6 touch
基本语法
touch 文件名称
创建新的文件
4.4.7 cp
cp指令拷贝文件到指定目录
基本语法
cp [选项] source dest
常用选项
-r : 递归复制整个文件夹
强制覆盖重名文件不提示
\cp
4.4.8 rm
基本语法
rm 选项 要删除的文件或目录
常用选项
-r : 递归删除整个文件夹
-f : 强制删除不提示