1. Linux权限管理
-rw-r--r--
- 文件类型(-文件 d目录 l软链接)
rw- u所有者权限
r-- g所属组权限
r-- o其他人
改变文件权限:
chmod [选项] 模式 文件名
- 常用选项 -R 递归
chmod u+x cangls.av # 所有者赋予x权限
chmod g+w,o+w furong.av
chmod u=wrx,g=wrx furong.av
chmod a=wrx furong.av # 给所有人都赋予权限
# 以上都不方便 使用数字4 2 1 对应以上权限
chmod 644 cangls.av
权限的作用:
- 对文件的作用
- r:读取文件内容(cat more head tail)
- w:编辑、新增、修改文件内容(vi echo)但不能删除文件
- x:可执行
- 对目录的作用
- r:可以查看目录下文件名(ls)
- w:具有修改目录结构的权限:新建文件和目录,删除此目录下文件和目录,重命名茨木下文件和目录,剪切(touch rm mv cp)
- x:可进入目录(cd)
- 对文件来讲,最高权限是执行,对目录来讲,最高权限是写
其他权限命令:
chown 用户名 文件名
chgrp 组名 文件名
2. Linux软件安装管理
2.1 软件包分类
- 源码包
- 二进制包(RPM包、系统默认)
2.2 RPM包的安装
RMP包比较头疼的问题是依赖问题,因此一般不用rpm命令进行软件的安装, 而是使用该命令查看安装了哪些rpm包
rpm -qa | grep xxx(要查询的文件名)
2.3 yum在线安装
# 配置yum的源文件
vi /etc/yum.repos.d/CentOS-Base.repo
[base] 容器名称,一定要写在[]中
name 容器说明,可以自己随便写
mirrorlist 镜像站点
baseurl yum源头服务器的地址
enabled 此容器是否生效,如果不写默认生效
# linux中可以在文件名后加.bak使其失效
常用yum命令
yum list
yum search
yum -y install 包名安装 # -y 就是默认输入y
yum -y remove 包名 # 卸载命令,尽量不要卸载
yum -y update 包名 # 升级 如果不加报名则自动全部升级
2.4 源码包的安装
2.4.1 区别
- 安装之前的区别:概念上的区别
- 安装之后的区别:安装位置的区别
RPM包的安装位置,建议安装在默认位置下。这样可以使用卸载命令自动删除,也可以使用service命令启动(实际上是执行了*/etc/rc.d/init.d/xxx(包名) start*)
安装目录 | 解释 |
---|---|
/etc/ | 配置文件安装目录 |
/usr/bin/ | 可执行的命令安装目录 |
/usr/lib/ | 程序所使用的的函数库保存位置 |
/usr/share/doc/ | 基本的软件使用保存位置 |
/usr/share/man/ | 帮助文件保存位置 |
rpm -ql 包名 #查看安装位置
源码包安装位置需要自己指定,建议安装在/usr/local/软件名(源码包保存位置:/usr/local/src),源码没有一键卸载命令,如果不指定安装目录,将装的到处都是很难处理。
2.4.2 安装过程
-
下载源码包
-
解压缩下载的源码包 tar -zxvf
-
进入解压缩目录,执行./configure操作
./configure --prefix=/usr/local/软件包名
-
make(可以使用make clean清除)
-
make install命令安装
3. Linux系统管理
3.1 进程管理
进程管理的作用
- 判断服务器健康状态(最主要)
- 查看系统中所有进程
- 杀死进程
进程的查看命令
ps aux
#查看系统中所有进程,使用BSD操作系统格式
ps -le
#查看系统中所有进程,使用Linux标准命令格式,会显示进程的优先级
pstree
#显示进程树
- VSZ:占用虚拟内存
- RSS:占用实际内存
- TT:该进程在哪个终端中运行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。?则表示不是由终端执行的进程
- STAT:状态 S 休眠状态 R 运行状态
- STARTED:进程启动时间
- TIME:进程耗费cpu时间
top #类似于windows的任务管理器
-d秒数:指定top命令每隔几秒更新。默认是3秒
-b:使用批处理模式输出,一般和'-n'选项合用
-n次数:指定top命令执行的次数。
top -b -n 1 >> top.txt # 重定向输出
# 在top命令的交互模式中可以执行的命令:
?或h:显示交互模式的帮助
P:以cpu使用率排序
M:以内存的使用率排序
N:以PID排序
q:退出top
系统当前时间 系统运行时间 用户数 系统在之前1分钟,5分钟,15分钟的平均负载
所谓平均负载就是值,在指定时间内,系统处于可运行状态和不可中断状态的平均进程数,可运行状态是指正在使用或者等待使用cpu的进程,而不可中断状态是指进程正处于内核态关键流程中的进程,比如,当一个进程向磁盘写数据时,为了保证数据的一致性,在得到磁盘回复前,它是不能被其他进程或者中断打断的,这个时候的进程就处于不可中断状态,如果此时的进程被打断了,就容易出现磁盘数据与进程数据不一致的问题。
平均负载和cpu使用率是不一样的,对于一个io密集型的任务,虽然cpu使用率不高,但是平均负载是高的。
因此如果平均负载是2,那么如果有2个逻辑核心,则cpu被刚好占满,如果有4个逻辑核心,则有两个核心空闲。
进程状态:
CPU状态:us被用户态占用的cpu百分比,sy被内核态占用的百分比,id空闲CPU的CPU百分比
内存状态:buffers缓冲是加速写操作
交换分区:cached缓存加速读操作
杀死进程
kill -l #查看可用的进程信号
信号名称:HUP 1 平滑重启,重新读取配置文件之后重启
KILL 9 强制终止
kill -HUP pid号 # 杀死pid进程
killall [选项][信号] 进程名
-i 交互
-I 忽略大小写
pkill [选项][信号] 进程名
-t 终端号:按照终端号踢出用户,终端号可以通过w命令查看
3.2 工作管理
工作管理指的是在单个登录终端中同时管理多个工作的行为(也就是windows中最小化之后开启别的任务),在LInux中使用jobs命令查看工作
注意事项:
- 后台管理与终端是绑定在一起的
- 放入后台的命令必须可以持续运行一段时间才有放入后台的意义
- 放入后台执行的命令如果需要与前台交互,则不会运行,出于暂停状态
放入后台的方法:
- 在命令行之后+&,放入后台后出于运行状态(如果需要与前台用户发生交互则仍是出于暂停状态)
- 按ctrl+z,放入后台后出于暂停状态
将后台工作恢复:
jobs -l # 显示工作的pid
fg %工作号 #将后台暂停的工作恢复到前台执行 工作号!=pid 百分号可以省略
bg %工作号 #将后台暂停的工作恢复到后台执行
4. Linux服务管理
4.1 Linux运行级别
# 可以使用init命令进入Linux某个运行级别
init x
4.2 服务的分类
4.3 查询已安装的服务
RPM包安装的服务
chkconfig --list
上图中的0-6对应Linux的runlevel
源码包安装的服务:
一般是在/usr/local/下查看
4.4 RPM包服务管理
服务的启动
/etc/init.d/独立服务名 start|stop|status|restart
service 独立服务名 start|stop|status|restart
本质上启动某服务,即运行该程序的启动脚本
服务的自启动
chkconfig --level 服务级别 服务名 on|off
4.5 源码包服务管理
使用绝对路径,调用启动脚本来启动
5. Linux下环境变量的配置
5.1 创建与查看环境变量
# 创建环境变量
export 变量名=变量值
# 或
变量名=变量值
export 变量名
env #查看环境变量
set #查看所有变量
5.2 PATH变量:系统查找命令的路径
echo $PATH #可以查看环境变量
PATH="$PATH":/root/sh #增加PATH变量的值,该方法只能临时生效,想要永久生效只能修改配置文件
5.3 环境变量配置文件的修改
# 修改配置文件后,使用source命令使其生效
source 配置文件
. 配置文件
一个正常的启动过程加载配置文件的过程,后一个配置文件可以覆盖前一个配置文件中定义的环境变量
在/etc/profile 中修改历史命令条数 HISTSIZE
在~/.bashrc 中修改别名 alias
在/etc/bashrc 修改登录提示符PS1
在/etc/sysconfig/i18n 修改系统默认语系
6. 常用命令汇总
netstat
-t:列出TCP协议端口
-u:列出UDP协议端口
-n:不使用域名与服务名,而使用ip地址和端口号
-l:仅列出在监听状态网络服务
-a:列出所有的网络连接
# 常用组合 netstat -tuln netstat -an
telnet ip地址 端口号 # 探测端口号
find [搜索范围][搜索条件] # 在linux中通配符 *匹配任意内容 ?匹配任意一个字符 []匹配任意一个中括号内的字符
搜索条件:
-iname 不区分大小写
-user 按照所有者
-name 按照文件名搜索
-size +xx k -xx k #搜索大于xx k的文件 搜索小于xx k的文件(M 单位则为兆)
7. 小tips
- usr是指的Unix System Resource的缩写,即Unix系统资源的缩写
- etc一般放置配置文件