新安装的CentOS系统,需要先安装如下软件:
1.下载yum配置文件,下载新的CentOS-Base.repo 到/etc/yum.repos.d/ 以后可以通过这个配置直接在国内网站下载相关的架包有两种163和阿里的,就可以联网下载相关的架包软件了(见yum下载地址图)
- yum install gcc(系统自带,主要用来把c++文件编译为二进制文件)
- 安装jdk环境,配置相关变量 (网上一大把)
- yum install lrzsz (上传和下载工具)
- 安装常用的yum install yum (可以联网下载新的yum )
- 安装架包libevent(上网下载即可)
- yum install wget (主要用来下载网上提供链接地址的文件到系统里面)
注:以上是安装系统时,要安装的基本软件。
yum下载地址图:
对应的163文件地址:
http://mirrors.163.com/.help/CentOS6-Base-163.repo (centos6)
http://mirrors.163.com/.help/CentOS7-Base-163.repo(centos7)
Linux常用命令:
- Ctrl+D 退出链接终端
- Ctrl+L 清屏
- Ctrl+Z 暂停执行的程序
- Tab:补全功能
- history:查看最近使用的命令
- Who :查看目前有几个链接用户
- Netstat –a 查看链接数
8、chown 修改文件和文件夹的用户和用户组属性
- chown -R 用户名:组名 目录或文件名,参数: -R处理指定目录以及其子目录下的所有文件 如 chown -R mysql:mysql data( 这个命令使用一般是从一台服务器上面scp 传输文件及目录到另一台服务器上面 文件夹的目录所拥有者不同,通过这个chown 来改变,注意:普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员root。)
9、chmod 修改文件和文件夹读写执行权限
chmod能改变权限,-R是目录下所有文件,777就是高权限(读、写、执行)
chmod -R 777 * 意思就是将当前目录下所有文件都给予777权限(不能随便改)
ps
是linux下最常用的也是非常强大的进程查看命令,常配合管道命令 | 和查找命令 grep 同时执行来查看特定进程。
ps :是显示瞬间进程的状态,并不动态连续;
-A 列出所有的行程
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
- ps –aux 查看所有的运行程序
- ps -ef | grep tomcat 查看tomcat 进程详细信息
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
问题:java 占用cpu暴增,通过以下追踪问题
查看某个进程中显示线程列表: ps -mp pid -o THREAD,tid,time (查看那个现场占用cpu时间比较长,再去跟踪具体线程)
其次将需要的线程ID转换为16进制格式:
printf “%x\n” tid
2最后打印线程的堆栈信息:
jstack pid |grep tid -A 30
- pwd 查看当前目录
- date:查看当前系统时间
- ls 查看当前目录下所有文件名称
- ls /etc:查看etc目录下所有文件
- ll:也是查看目录文件信息
- 其他用法如:ls |grep 文件名 :搜索列表中的文件
scp /etc/kubernetes/admin.conf root@192.168.33.35:/etc/kubernetes/ :复制文件到另一个服务器上面
scp -r 文件夹 root@192.168.33.35:/etc/kubernetes/ 复制一个文件夹及下面的文件到另一个服务器上面
7. wc 命令参数:
-c 统计字节数
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度。-help 显示帮助信息 --version 显示版本信息
- ifconfig:查看本地链接ip地址
- ping ip:ping链接的地址
- cat :查看文件
- tail :查看文件尾部,语法:tail -f 100 文件名,f表示文件增长
必须要安装yum install lrzsz :安装上传功能
- rz / rz –e :上传文件
- sz filename :下载文件
mv filename newFileName :重命名文件
echo命令 用于字符串的输出
echo $? 返回最近安装的软件,0就是安装成功,
echo " hello welcome" >> index.html :把hello...文字写入到index.html,没有文件就会创建。
yum makecache fash :生成缓存、fash可以不用
关机操作
必须限制性sync命令主要用来保存数据到本地磁盘
- Shutdown –h now 立即关机
- Shutdown –h 10 10分钟过后关机
- Shutdown –r now 重启
- Shutdown –r +10 10分钟重启
- reboot:重启
删除文件
rm –r 删除一个目录,不包括里面文件
rm –f 强制删除文件、如果不存在不会报错,如果不加-f 删除不存在文件就会报错
rm –i 删除文件时,会询问是否删除
rm –rf 目录及目录下的文件也会被删除
mkdir 创建一个目录
rmdir 删除一个目录
Vim 插件命令:
Vim 文件名
Esc 退出,再冒号:wq 就返回上级目录了
语法为 :[addr]s/源字符串/目的字符串/[option]
全局替换命令为::%s/源字符串/目的字符串/g
[addr] 表示检索范围,省略时表示当前行。
如:“1,20” :表示从第1行到20行;
“%” :表示整个文件,同“1,$”;
“. ,$” :从当前行到文件尾;
s : 表示替换操作
[option] : 表示操作类型
常用的:
g 表示全局替换;
c 表示进行确认
p 表示替代结果逐行显示(Ctrl + L恢复屏幕);
省略option时仅对每行第一个匹配串进行替换;
如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义
实例:%s @源文件@目标@g,可以用@符号隔开 防止有替换连接斜杠的。
文档压缩和打包
.gz gzip 压缩工具压缩的文件
.bz2 bzip2 压缩工具压缩的文件
.tar tar 打包程序打包的文件(tar并没有压缩功能,只是把一个目录合并成一个文件)
.tar.gz 可以理解为先用tar打包,然后再gzip压缩
.tar.bz2 同上,先用tar打包,然后再bzip2压缩
【gzip】
- gzip 文件名 压缩
- gzip –d 文件名 解压缩
【bzip2】
语法:bzip2 [-dz] filename
- -d :解压缩
- -z :压缩
【unzip】
unzip -o filename 解压缩
【tar】
z :是否同时用gzip压缩
-j :是否同时用bzip2压缩
-x :解包或者解压缩
-t :查看tar包里面的文件
-c :建立一个tar包或者压缩文件包t
-v :可视化
tar –zxvf :解压缩最常用
tar -xf :这个也最常用
tar -zxvf libevent-2.0.21-stable.tar.gz
tar –jxvf:解压缩包
【curl】
以特定URL句法用来网络传输数据的命令行工具。
安装: yum -y install curl
用法:curl url
显示头部 curl -l url ,显示全部信息 curl -i url
get 请求:curl -v www.baidu.com
制定请求方式:curl -X GET www.baidu.com
post 请求:
curl -H "Content-type: application/json" -X POST -d '{
"pkg": "com.taobao.app",
"country": "CN",
"ver": "1.0"
}' url
【rpm】
- -i :安装的意思
- -v :可视化
- -h :显示安装进度
- 另外在安装一个rpm包时常用的附带参数有:
- --force 强制安装,即使覆盖属于其他包的文件也要安装
- --nodeps 当要安装的rpm包依赖其他包时,即使其他包没有安装,也要安装这个包
- rpm -Uvhfilename -U :即升级的意思
- rpm -q filename :查询一个rpm安装包是否安装成功
- rpm -qa |head:当前系统安装的rpm包
- rpm –qi filename:查看rpm安装包信息
- rpm –qf /usr/bin/vim:查找文件绝对路径
- rpm -ql filename :查看安装的哪些文件及文件路径(常用)
提取rpm安装包中的文件
- 先使用命令显示rpm包含的文件列表
rpm2cpio your.rpm | cpio -t
- 然后再显示的列表中找到你需要的文件,执行如下命令:
rpm2cpio your.rpm | cpio -id your-file
- 在rpm文件的当前目录下就会有一个新的目录产生,你的文件就在这个目录中
【yum】读:丫木
yum search 文件名:搜索
yum list |grep 文件名:搜索
(两种搜索方式,第二种比较多) 查询已经安装的文件
yum info 安装的软件名称:主要用来查看安装软件的信息
yum install [-y] [rpm包名]
#安装软件
yum install packages
#更新软件
yum update packages
#删除软件
yum remove packages
#清除缓存
yum clean packages
【利用yum工具下载一个rpm包】
a. 首选要安装 yum-downloadonly 这个软件
# yum install -y yum-downloadonly.noarch
b. 下载一个rpm包而不安装
# yum install test.rpm -y --downloadonly //这样虽然下载了,但是并没有保存到我们想要的目录下,那么如何指定目录呢?
c. 下载到指定目录
# yum install test.rpm -y --downloadonly--downloaddir=/usr/local/src
【安装源码包】
安装:gcc,因为很多都是通过源码来安装软件的、源码都是C语言编写的所以必须要Linux上的C语言编译器叫做gcc编译成二进制,必须按照gcc
yum install gcc :安装gcc
安装一个源码包,通常需要三个步骤:
1. ./config 在这一步可以定制功能,加上相应的选项即可,具有有什么选项可以通过”./config--help ”命令来查看。在这一步会自动检测你的linux系统与相关的套件是否有编译该源码包时需要的库,因为一旦缺少某个库就不能完成编译。只有检测通过后才会生成一个Makefile文件。
2. make 使用这个命令会根据Makefile文件中预设的参数进行编译,这一步其实就是gcc在工作了。
3. make install 安装步骤,生成相关的软件存放目录和配置文件的过程
例如安装memcached:
- wget http://memcached.org/latest
- tar -zxvf memcached-1.x.x.tar.gz
- cd memcached-1.x.x
- ./configure && make && make test&& sudo make install
grep用法:
语法: grep [-cinvABC] ‘word’filename
-c :打印符合要求的行数 grep –css.txt
-i :忽略大小写 grep -i ‘OO’ ss.txt
-n :在输出符合要求的行的同时连同行号一起输出 grep –n ‘oo’ ss.txt
-v :打印不符合要求的行
-A :后跟一个数字(有无空格都可以),例如 –A2则表示打印符合要求的行以及下面两行
-B :后跟一个数字,例如 –B2 则表示打印符合要求的行以及上面两行
-C :后跟一个数字,例如 –C2 则表示打印符合要求的行以及上下各两行
grep –vn ‘oo’ss.txt :过滤不带有某个关键词的行,并输出行号
grep ‘[^o]’ ss.txt : ^在中括号中表示排除这个字符
[0-9a-z] : 表示0到9 a到z任意字符
^:如果不在中括号中表示以这个为’^o’ 以o开头
$:如:’o$’ 表示以o结尾的
注:”^”表示行的开始,”$”表示行的结尾
“.” : 表示任意一个字符
grep ‘oo*’ ss.txt : *号表示零个或多个前面的字符
‘.*’ : 表示零个或多个任意字符,空行也包含在内。
egrep用法:是grep的升级版
egrep ‘o+’ ss.txt :+号表示一个或多个前面的字符,grep用的是*号
egrep ‘1|2’ ss.txt :|表示或者的意思筛选1或者2
egrep ‘(tt)’ ss.txt :()号表示一个整体、筛选tt
egrep ‘(tt)+’ :表示多个整体为tt的字符
sed用法:
sed和awk都是流式编辑器,是针对文档的行来操作的
语法:sed -n ‘n’p filename, ‘n’ 这个表示多少行
sed –n ‘5’p ss.txt
sed –n ‘1,$’pss.txt : 表示查找整个文档
sed –n ‘/root/’p ss.txt : 查找字符串root的行、必须要有双斜杠
sed –e ‘2’p –e ‘/root/’p –n ss.txt : -e表示执行后面多个动作
sed ‘12’d ss.txt : 表示删除哪一行
sed ‘1,$’d ss.txt :删除整个文档到结尾