Linux运维命令集

 金诚   2018-03-28 11:29   135 人阅读  0 条评论

学会使用命令帮助

linux内置的帮助文档非常强大,通常能解决我们的问题。

首推 man命令

语法:

例如

甚至可以:

用途:用于查询指定命令的说明文档,当你迫切想知道某个程序、某个命令的相关说明文档时,使用man非常有用。

说明文档一般都很长,我们可以使用pageDown和pageUp来进行翻页

man指令常用的参数

其次 whatis

语法:

用途:

会显示命令所在的具体文档的文档类别。

输出:

中括号 1 代表了 命令所在的类别,有的时候,一个命令可能属于多个类别中,熟悉所有的类别,可能会对我们有帮助:

(1)、用户可以操作的命令或者是可执行文件
(2)、系统核心可调用的函数与工具等
(3)、一些常用的函数与数据库
(4)、设备文件的说明
(5)、设置文件或者某些文件的格式
(6)、游戏
(7)、惯例与协议等。例如Linux标准文件系统、网络协议、ASCⅡ,码等说明内容
(8)、系统管理员可用的管理条令
(9)、与内核有关的文件

案例: whatis与man结合使用

查看java有哪些文档类别

输出 三列内容

第二列的序号表示类别,可以看到当前只有1个类别,那么我们假设有1、2、3个类别

我们可以指定查看分类3的帮助:

通过第二个参数,指定你想查看的指令的文档类别

总结:
1. whatis查看某个命令有哪些文档,通过类别指定该类别某一个的文档;
2. man (n) 查看某个文档

查看路径的两种方法

which语法:

whereis语法:

which可以用于查看程序binary文件所在路径;

whereis用于查看程序多个版本的路径。

帮助指令真强大!

文件和目录

目录就是文件夹,文件夹属于特殊的文件。

文件查询是重点,如果不熟悉find的文档,可以使用上一节的技巧查看find帮助文档。

创建和删除

  • 创建: mkdir
  • 删除: rm
  • 删除: rm -rf
  • 删除日志 rm *log
  • 移动 mv
  • 复制 cp

查看当前目录下的文件个数
示例:

复制目录

目录切换

  • 跳转到指定目录 cd
  • 切换到上一次工作目录 cd -
  • 切换都home目录 cd ~
  • 查看当前路径 pwd

列出目录项

显示当前目录下的文件

以列表的形式显示目录

给每个文件前面增加一个id编号,美化输出

用这种方式,也可以数出当前目录的文件个数☺。

查看被系统因此的文件

这些命令可以结合起来用:

查找目录及文件

locate查询是根据linu为文件系统建立的数据库。

如果有文件更新,需要定期执行更新命令更新索引库。

查看文件内容

改变文件拥有人 chown

改变文件读写属性 chmod

递归子目录修改 chown -R tuxapp source/

增加脚本可执行权限 chmod a+x myscript

批处理命令连接执行

使用“|”

文本处理

grep 文本搜索

语法:

磁盘管理

查看剩余容量

查看当前目录所占空间大小

打包

  • c :打包选项
  • v :显示打包进度
  • f :使用档案文件

压缩

解包

解压缩

zip压缩、unzip解压缩

将mydata文件夹遍历,压缩成mdata.zip

解压缩

scp 远程复制、远程下载

示例1:

示例2:

进程管理工具

进程 就好比细胞,生命周期,有控制能力,有存储能力,但功能单一。

把任何不清晰的概念转化成有形状的具象的东西。

linux中的进程

一般我们对进程要做的操作有:查询进程的状态,终止一个进程;任何进程都与文件相关联,进程也就是一个文件,我们必须学会使用一个工具lsof(list open files),作用是列举出已经被系统打开的文件;在linux系统中,任何事物都是文件,设备是文件,进程是文件,目录是文件,甚至sockets也是文件。

必须学号lsof命令。

查询进程

查询属于java的进程

列出所有进程

特点是可以完整的显示进程信息

显示进程信息,实时更新

查看进程占用状态

终止进程

分析线程栈

pmap指令
用途:输出进程内存的状况,可以用来分析线程堆栈
语法:

首先你得知道进程的id

从输出的结果中拿到PID的值,比如4288

性能监控

监控cpu

不同的linux版本,可能没有携带sar命令

键入指令即可安装:

语法:

param1 表示每秒采样几次

param2 表示一共采样几次

示例:

查询内存

查询页面交换

发生页面交换时,服务器的吞吐量会大幅下降;服务器状况不良时,如果内存不足,可能导致页面交换,可以使用以下指令确认是否发生了交换

查看主机所有状态

vmstat

param1监控频率

param2监控次数

示例:

监控应用的数据变化

网络工具

网络状态查询

Netstat Param

示例: 列出所有端口

示例2: 列出所有tcp端口

示例3: 列出所有监听的服务

netstat -antp |grep 端口号

route -n

ping IP

traceroute IP

host domain

host www.baidu.com

host url

host 172.16.24.133

wget url

ssh name@ip

sftp name@host

scp localpath name@ip:path

scp -r name@ip:path localpath

useradd -m usernam

passwd username

userdel -r username

su username

ls -l

输出说明:

文件属性字段有10个字母组成,第一个字母表示文件类型。
如果字母是- 代表这个文件是普通文件
如果字母是d 代表这个文件目录
后面的9个字母 3个为一组,分别标书用户、用户组、其他用户的读写和执行权限

更改读写权限

数字修改法

说明:将用户的权限设置为rwxr-----

语法说明:

权限使用三位八进制的数字表示

每一位的取值可以是 4、2、1及0或者它们的求和;

4代表读权限、、2代表写权限、1代表执行权限
比如:6(4+2)代表读写权
比如:7()4+2+1有读、写、执行权

每一位的含义:

第一位指定属主的权限
第二位指定组权限
第三位指定其他用户权限

用户组

在查看用户权限的时候,引入了一个常见概念——用户组

查看系统用户组

查看所有用户及权限

查看所有用户组及权限

环境变量和用户变量

bashrc 与profile都用于保存用户环境信息

系统管理

查询系统版本

查询硬件信息

查看cpu使用情况

查询cpu出场信息

查询内存信息

显示架构

指令

输出:

设置系统时间

设置系统日期和时间

设置时区

参考

  1. lsof 网络方面应用起来非常强大

  2. man 帮助文档提示用起来非常强大

本文地址:http://www.yangchaofan.cn/archives/428
版权声明:本文为原创文章,版权归 金诚 所有,欢迎分享本文,转载请保留出处!

说点什么

avatar
  Subscribe  
提醒