linux基础与调优

一.linux基础

1.ls:列出目录

  • -a:全部的文件,连同隐藏文件一起列出来
  • -l:列出长数据串,包含文件的属性与权限等数据
  • –full-time:列出完整的时间模式输出

2.cd:切换
3.pwd:显示当前目录
4.mkdir:创建新的目录
5.cp:复制

  • -a:相当于pdr
  • -d:若源文件为连接文件的属性,则复制连接文件属性而非文件本身
  • -i:目标文件已经存在,在覆盖时会先询问操作的进行
  • -p:连同文件的属性一起复制过去,而非使用默认属性,备份常用
  • -r:递归持续复制,用于目录的复制

6.mv:移动文件或者目录

  • -f:force,强制。如果目标文件已覆盖,不会询问而直接覆盖
  • -i:interaction,互动模式,若目标文件已存在,就会询问是否覆盖
  • -u:update,若目标文件已经存在,且source比较新,才会更新

7.rm:移除文件或者目录

  • -f:force,强制删除
  • -i:interaction,互动模式,在删除前会询问用户是否操作
  • -r:recursion,递归删除。常用于目录的删除

8.touch:创建新文件或修改时间(文件有三个时间:内容改变时间mtime,状态改变时间ctime,读取时间atime)

  • -a:仅修改访问时间atime
  • -c:仅修改文件的时间,文件不存在则创建新文件
  • -d:后面接预修改的日期而不用当前的日期
  • -m:仅修改mtime

9.vi/vim:vim算是vi的高级版本,vi是老式的文字处理器,vim是程序开发者的一项很好的工具
10.cat

  • -b:列出行号,仅针对非空白行做行号显示,空白行不标行号
  • -n:打印行号,连空白行也会有行号,与-b的参数不同

11.more
12.less
13.tail

  • -n:后面接数字,代表显示几行的意思
  • -f:表示持续检测后面所接的文件名,要等按下ctrl+C才会结束tail的检测

14.od:od -t c /usr/bin/passwd

  • -t:后面可以接各种类型的输出,例如:
    a:利用默认的字符来输出
    c:使用ASSCII字符进行输出
    d[size],f[size],o[size],x[size]:利用10,浮点数,8,16进制来输出数据

二.文件操作

1.修改文件属性:

  • r读权限read4
  • w写权限write2
  • x操作权限execute1
  • u 属主 user
  • g 属组 group
  • o 其他 other
  • chmod 777 test,修改test文件权限属性
  • chmod g + x test , 给属组修改文件权限属性

2.更改 文件属组名:

  • chgrp <组名> <文件名>

3.更改文件属主,属组名:

  • chown <用户名>:<组名> <文件名>

三.top分析系统瓶颈

1.确认问题:IO瓶颈、CPU瓶颈、内存瓶颈还是程序导致的系统问题

2.输入top进行交互,

  • 输入M,进程列表按内存使用大小降序排序,便于我们观察最大内存使用者使用有问题(检测内存泄漏问题);

  • 输入P,进程列表按CPU使用大小降序排序,便于我们观察最耗CPU资源的使用者是否有问题

3.top第三行显示当前系统的,其中有两个值很关键:

  • %id:空闲CPU时间百分比,如果这个值过低,表明系统CPU存在瓶颈;
  • %wa:等待I/O的CPU时间百分比,如果这个值过高,表明IO存在瓶颈;

四.分析内存瓶颈

  • 1.查看内存使用情况,以M显示:free -m
  • 2.vmstat 监视内存使用情况
  • 3.df -h 查看磁盘空间利用情况

五.分析IO瓶颈

1.如果IO存在性能瓶颈,top工具中的%wa会偏高;

2.进一步分析使用iostat工具;

  • 如果%iowait的值过高,表示硬盘存在I/O瓶颈。
  • 如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。
  • 如果 svctm 比较接近await,说明 I/O 几乎没有等待时间;
  • 如果 await 远大于 svctm,说明I/O队列太长,
  • io响应太慢,则需要进行必要优化。 如果avgqu-sz比较大,也表示有大量io在等待。

六.ps分析进程调用

ps -ef | grep task

  • | 符号,是个管道符号,表示ps 和 grep 命令同时执行;
  • grep 命令是查找(Global Regular Expression Print),能使用正则表达式搜索文本,然后把匹配的行显示出来
    ps命令有一些参数:
  • -e : 显示所有进程
  • -f : 全格式
  • a :显示终端上的所有进程,包括其他用户的进程。
  • r :只显示正在运行的进程。
  • u :以用户为主的格式来显示程序状况

七.查看日志

你可以使用-n选项指定要显示的行数

  • tail -n 100 filename.txt

也可以使用-f选项进行实时查看

  • tail -f

head
cat
tac

vim /etc/profile,/etc/bashrc 是系统全局环境变量设定,代理
vim /.profile,/.bashrc用户目录下的私有环境变量设定

八.查看文件个数

查看有目录下文件和文件夹的总数
ls | wc -w

查看文件的总数
ls -l |grep ^-|wc -l

九.查看系统版本

  • 内核版本
  cat /proc/version
  • 系统版本
 cat /etc/issue
  • CentOS版本
cat /etc/redhat-release 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值