[root@localhost~]#序言
  在今后的工作中,运维工程师每天的例行事务就是使用free -m,top,uptime,df -h。。。
每天都要检查一下服务器,看看是否出现异常。那么今天我们就讲解一下关于运维工程师例行事务的知识!


 开班第十一天:

[root@localhost~]#今天的课程大纲
  1. 查看进程,中断进程,切换进程
  2. 内存与swap分区
  3. linux中文件查找的基本方法
  4. linux中是如何解压缩文件的
  5. 关于I/O重定向的知识点
  6. 远程scp配合管道

详细讲解:

[root@localhost~]#查看进程,中断进程,切换进程
  
①查看进程,我们一般使用ps或者top来查看,ps可以查看当前终端运行的进程。
ps -ef和ps aux可以查看当前系统所有的进程,top也可以查看运行的进程,通过M来按照内存排序,P按照cpu的使用率来排序。

②中断进程,在使用top查看当前的进程时候,我们可以通过kill + pid来结束某个进程。也可以使用pkill/killall + 进程名,
不过这种方法尽量少用或者不用,因为你会杀掉某个含有你进程名的重要进程,除非在你非常确定的情况下。

这里有必要说一下kill的理解,kill的本质并不是结束进程,很多人都会理解为杀掉。

但这是我们口头说的,kill的本质其实是对进程发送信号,-1信号重启,-15信号是让进程自己退出,-9信号是系统强制结束某个进程。我们一般情况下,尽量慎重-9,原因你可以想象一下。

③后台任务进程的切换,假如我们使用命令:firefox &,这代表我们启动firefox,但是是后台启动,我们可以使用jobs来查看当前后台运行的任务,fg %num可以把firefox放到前台运行,只用ctrl+c来终止firefox。我们也可以使用ctrl+z来停止当前的firefox,可以使用bg %num来解停止状态。前面说的杀死进程,这我们也可以使用kill +num来结束某个任务。

[root@localhost~]#内存与swap分区
在linux中,内存也是一个很重要的方面,我们可以使用free -m来查看当前的内存使用情况。
这也是一个运维工程师每天必须要关注的。
下图中我们可以看到我们的内存使用情况,那么大家知道我现在系统中干净内存和总共可使用内存各是多少吗?
干净内存=free=1392,总共可使用内存=free+cached=1392+177,这个值跟1595接近,
所以我们每天可以直接看1595那个值来估计内存的事情的情况。
 上面有一个swap分区,这个分区的存在是为了缓解我们linux系统中内存不足的情况,当我们的系统中的内存使用情况比较紧缺的   时候,这时候系统就会把swap分区暂时当做内存来使用,关于swap分区设置的大小我们可以根据电脑实际内存来控制,一般就是 为实际内存的两倍。

[root@localhost~]#linux中文件查找的基本方法
文件找在linux中是一项非常重要的技能,一个运维工程师要做到随心所欲的在系统中寻找到自己想要的文件。
我们在linux中常使用的文件查找方法有find和locate。①find命令。很多很多参数,我就简单写几个,如果不懂的可以查看man手册。

  find /文件路径 -name "*.iso" 通过文件名查找

  find /文件路径 -iname "*.iso" 查找不区分大小写

  find /文件路径 -inum "num" 通过inodenum查找硬链接的文件

  find /文件路径 -size +4G 查找文件大于4G的文件

  find /文件路径 -perm 777 查找权限为777的文件

 ②通过locate来查找文件,locate -b +直接文件名,查找出来的是带上文件路径一起查的。

  这里我说一下find和locate的区别:find查找文件的原理是扫描磁盘,locate查找文件的原理是查找自己的数据库,所以find的速度较慢,但是文件搜索精确,locate速度较快,但是更新较慢。locate在每天会执行周期任务,从而更新自己的数据库,如果你现在新建一个文件,通过locate是查找不到的,或许明天早上你就能查找到了。

[root@localhost~]#linux中是如何解压缩文件的
linux中打包和压缩的概念是完全不同的两个概念,所以不要弄混,打包是把几个文件放在一起,压缩才是跟windows中压缩差不多的概念。
windows和linux文件共享,两个系统都识别的文件格式是zip,所以以zip文件传输是最好的,zip a.zip,unzip a.zip.

linux中常用的压缩文件格式有gz和dz2,我说一下他们创建压缩文件具体的流程:创建tar包-->压缩tar包-->解压tar包-->解tar包,但是实际中我们没必要一步一步完成,直接两步进行到底。

 ①gz格式:tar czvf a.tar.gz b/ tar xvf a.tar.gz,分别是gz格式的压缩和解压。

 ②dz2格式:tar cjvf a.tar.dz2 b/ tar xvf a.tar.dz2,分别是dz2格式的压缩和解压。

其实可以看出解压是一样的,因为解压的时候会自动判定压缩包的格式。其中解压的时候我们可以使用参数-C来确定解压的路径。

我们可以在不解压的情况下查看压缩包的内容,tar tf a.tar.gz,也可以解压其中的某一个文件出来,tar xvf a.tar.gz b/a.txt。

[root@localhost~]#关于I/O重定向的知识点
在linux中,我们有三个标准的输入输出,标准输出stdout,标准错误输出stderr,标准输入stdin,他们的文件描述符分别是1,2,0。下面演示一个例子:
例子说:a.txt存在,b.txt不存在,使用ls的时候,b.txt是stdout,a.txt是stdout,所以全部重定向&>到io.txt中,会显示一个错误,一个正常。

这里讲一下键盘输入,管道输入都是标准输入。linux中需要了解的一个here document和here string。

here document:cat>file<<EOF,我们从键盘输入,然后成为一个文件内容。

here string:bc<<<12+23,表示计算器从字符串中读取数据来进行计算。

[root@localhost~]#远程scp配合管道
我们一般使用scp来远程拷贝文件,一般的命令为:scp root@ip地址:/路径 /路径。
说道scp,不得不说说ssh了,在今后很多情况下,我们都是需要通过ssh来远程服务器,修复维护等。
在很多情况下,我们可以使用ssh默认不登录的进行远程的监控:
例如:ssh root@ip "uptime",查看系统运行了多长时间了,uptime也可以换成各种命令。看,我的服务器已经运行182天了。
当然,我们也可以是用ssh进行远程文件的压缩拷贝传输:
  ssh root@ip地址 "cd / && tar -c 目录 | gzip -f" |tar -xzf-
意思就是远程创建一个tar包,使用gzip压缩,然后通过管道重定向传输到本地。压缩文件的传输,剩了好多流量。

 总结:

[root@localhost~]#来自爱家人爱老婆的IT男
今天的重点是进程和文件查找,以及重定向,希望大家好好学习,天天向上!喜欢的朋友可以点一下订阅,非常感谢大家的支持!
博客园:爱家人爱老婆的IT男
QQ群:145252709,我会上传资源,同时会有很多大神跟你们讨论学习分享
微信公众号:程序猿的野生香蕉【获取文章中出现的工具】
 
												

<实训|第十一天>学习一下linux中的进程,文件查找,文件压缩与IO重定向的更多相关文章

  1. linux中按照指定内容查找文件

    grep -rnRi 指定的内容 * | awk -F":" '{print $1}' 解释: grep 查找文件内容 -r 表示递归查找 -n 表示显示行号 -R 表示查找所有文 ...

  2. Linux 利用 locate 和 find 查找文件

    Linux 利用 locate 和 find 查找文件 命令 locate 用于快速查找文件.文件夹.此命令并没有在磁盘上查找所有文件,而是在预先建立的数据库里进行搜索.可以使用 updatedb 命 ...

  3. 诠释Linux中『一切都是文件』概念和相应的文件类型

    导读 在 Unix 和它衍生的比如 Linux 系统中,一切都可以看做文件.虽然它仅仅只是一个泛泛的概念,但这是事实.如果有不是文件的,那它一定是正运行的进程. 要理解这点,可以举个例子,您的根目录( ...

  4. Linux中查看进程的多线程pstree, ps -L

    Linux中查看进程的多线程 在SMP系统中,我们的应用程序经常使用多线程的技术,那么在Linux中如何查看某个进程的多个线程呢? 本文介绍3种命令来查看Linux系统中的线程(LWP)的情况:在我的 ...

  5. Linux中.a,.la,.o,.so文件的意义和编程实现

    Linux中.a,.la,.o,.so文件的意义和编程实现    Linux下文件的类型是不依赖于其后缀名的,但一般来讲:        .o,是目标文件,相当于windows中的.obj文件     ...

  6. linux中tar 打包指定路径文件

    linux中tar打包指定路径文件www.111cn.net 编辑:yahoo 来源:转载在linux系统中打包与解压文件我都可以使用tar命令来解决,只要使用不同的参数就可以实现不同的需要了,下面来 ...

  7. 如何在 Linux 中查看进程占用的端口号【转】

    对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的.如果你需要处理端口相关的问题,这篇文章可能会对你有用. 端口是 Linux 系统上特定进程之间逻辑连接的标识, ...

  8. 1.1 Linux中的进程 --fork、孤儿进程、僵尸进程、文件共享分析

    操作系统经典的三态如下: 1.就绪态 2.等待(阻塞) 3.运行态 其转换状态如下图所示: 操作系统内核中会维护多个队列,将不同状态的进程加入到不同的队列中,其中撤销是进程运行结束后,由内核收回. 以 ...

  9. 【转】Linux 中清空或删除大文件内容的五种方法(truncate 命令清空文件)

    原文: http://www.jb51.net/article/100462.htm truncate -s 0 access.log -------------------------------- ...

随机推荐

  1. SQL Server 2014新特性——Buffer Pool扩展

    Buffer Pool扩展 Buffer Pool扩展是buffer pool 和非易失的SSD硬盘做连接.以SSD硬盘的特点来提高随机读性能. 缓冲池扩展优点 SQL Server读以随机读为主,S ...

  2. coursera机器学习笔记-神经网络,初识篇

    #对coursera上Andrew Ng老师开的机器学习课程的笔记和心得: #注:此笔记是我自己认为本节课里比较重要.难理解或容易忘记的内容并做了些补充,并非是课堂详细笔记和要点: #标记为<补 ...

  3. Log4j 输出的日志中时间比系统时间少了8小时的解决方法,log4j日志文件重复输出

    1. 第一个问题:时间少了8小时 Log4j 输出的日志中,时间比系统时间少了8小时,但是 eclipse 控制台输出的日志的时间却是对的. log4j配置如下: #all logger output ...

  4. python scrapy+Mongodb爬取蜻蜓FM,酷我及懒人听书

    1.初衷:想在网上批量下载点听书.脱口秀之类,资源匮乏,大家可以一试 2.技术:wireshark scrapy jsonMonogoDB 3.思路:wireshark分析移动APP返回的各种连接分类 ...

  5. sql server 有关锁的视图说明 syslockinfo

    ransact-SQL 参考   https://msdn.microsoft.com/zh-cn/library/ms179881.aspx  syslockinfo 包含有关所有已授权.正在转换和 ...

  6. Ubuntu为何永远绝对的免费?

    Ubuntu(发行版)是一个Linux大家族,而且个个都称得上是软件精品.所谓“绝对”就是没有任何条件.不受任何限制的意思.那么,Ubuntu怎么可能是永远绝对的免费?难道这不是蛊惑人心的宣传.不能兑 ...

  7. 树莓派2 安装 win10Iot 和 Ubuntu mate

    注册博客账号已经2年多了.一直没写博文现在抽空写写. 写这篇博文是因为我之前在网上找了蛮多有关教程写的都不是很清晰.安装没成功.所以我写一下我根据网上找到的整理一下分享出来. 非专业只是业余玩玩.好了 ...

  8. finereport与OA系统集成的完全方案

    随着社会信息化高速发展,企业信息化也得到了一定提高,而如何提高办公效率已经成为企业一项重要而紧迫的任务,传统的纸质报表等档案不仅浪费纸张.不易存档.不易调阅.不易统计,如何更有效.更快速提升办公效率和 ...

  9. C#读写app.config中的数据

    C#读写app.config中的数据 读语句: String str = ConfigurationManager.AppSettings["DemoKey"]; 写语句: Con ...

  10. monkey学习笔记

    Monkey一. Monkey 是什么?Monkey是Android中的一个命令行工具,它其实就是SDK中附带的一个工具,可以运行在模拟器里或实际设备中. 二.Monkey 测试的目的?Monkey测 ...