常用软件配置
# 查看系统版本
[tanner@localhost ~]$ cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
[tanner@localhost ~]$ uname -a
Linux localhost.localdomain 3.10.0-1062.18.1.el7.x86_64 #1 SMP Tue Mar 17 23:49:17 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux
2
3
4
env
环境变量查看
在/etc/profile下添加环境变量将会永久有效
系统基础环境变量:export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
修改完成后 source /etc/profile
使其立即生效
# yum篇
base源修改
#查看一下当前的配置里面有什么已经安装好的yum源仓库
yum repolist
#备份/etc/yum.repos.d/CentOS-Base.repo文件
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
#下阿里云源 centos7
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#重新加载yum
yum clean all
yum makecache
2
3
4
5
6
7
8
9
10
使用阿里开源镜像提供的epel源
cd /etc/yum.repos.d/
mv epel.repo epel.repo.bak
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo # 下载阿里开源镜像的epel源文件
yum clean all
yum makecache
2
3
4
5
yum docker源增加(选择其中一个)
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库
2
常用命令:
#查看软件包
yum list all ##列出yum源仓库里面的所有可用的安装包
yum list installed ##列出所有已经安装的安装包
yum list available ##列出没有安装的安装包
#安装软件
yum install softwarename ##安装指定的软件
yum reinstall softarename ##重新安装指定的软件
yum localinstall 第三方software ##安装第三方文件并且会解决软件的依赖关系
yum remove softwarename ##卸装指定的软件
#查找软件的信息
yum info software ##查看软的信息
yum search keywords ##根据关键字查找到相关安装包软件的信息
yum whatprovides filename ##查找包含指定文件的相关安装包
#对于软件组
yum groups list ##列出软件组
yum groups install ##安装一个软件组
yum group remove ##卸载一个软件组
yum groups info ##查看一个软件组的信息
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 静态ip配置
ip addr
网络查看
vi /etc/sysconfig/network-scripts/ifcfg-***
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=em1
UUID=f1e31654-0204-4792-bbec-df0bd93793e1
DEVICE=em1
ONBOOT=yes
IPADDR0=192.168.12.46
PREFIXO0=255.255.255.0
GATEWAY0=192.168.0.1
DNS1=114.114.114.114
DNS2=101.226.4.6
ZONE=public
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 开机启动项
查看开机启动项
systemctl list-unit-files | grep enable
为服务添加开机启动项
systemctl enable zabbix-server.service
移除开机启动项的服务
systemctl disable zabbix-server.service
修改自定义开机启动的脚本
修改 /etc/rc.d/rc.local 这个文件
例如将 apache、mysql、samba、svn 等这些服务的开机自启动问题一起搞定:
[root@localhost ~]# vim /etc/rc.d/rc.local
添加以下命令 /usr/sbin/apachectl start /etc/rc.d/init.d/mysqld start /etc/rc.d/init.d/smb start /usr/local/subversion/bin/svnserve -d
# 硬盘查看与坏道检测
# 挂载卸载
挂载U盘
假如我们的优盘是fat32格式的
输入指令:mount -t vfat /dev/sdb1 /media
如果是NTFS格式的话
输入指令:mount -t nfs /dev/sdb1 /media
卸载u盘
只需要执行:sudo umount /media/
# 硬盘信息查看
yum -y install smartmontools #安装 smart
smartctl -A /dev/sdb #普通硬盘信息查看
smartctl -a -d megaraid,0 /dev/sda #阵列硬盘信息查看 其megaraid,0中的0代表的是在megaraid中的物理盘编号
2
3
# 硬盘坏道检测
#硬盘坏道检测
badblocks [-svw][-b <区块大小>][磁盘装置][-o <输出文件>][磁盘区块数][启始区块]
-b 区块大小设置
-c 单次检查的块数
badblocks -v -b 16 -c 16 -s /dev/sdb1 -o /data/bad1.log 1464991231 79912960
2
3
4
5
# MegaCli
MegaCli下载地址
https://www.broadcom.com/support/download-search/?pg=&pf=&pn=&pa=&po=&dk=megacli
#解压zip后安装
rpm -ivh MegaCli-8.07.14-1.noarch.rpm
#整列卡信息查看 MegaCli
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aAll
#阵列卡电池信息查看
/opt/MegaRAID/MegaCli/MegaCli64 -adpbbucmd -aall
2
3
4
5
6
# fdisk使用 (无法分区大于2T)
fdisk /dev/***
fdisk使用:
fdisk -l [device...]
fdisk子命令:
P:print显示已有分区
n:new创建分区
d:delete删除分区
w:write写入磁盘(保存)
q:quit放弃更新并退出
m:获取帮助
l:列表所有分区id
t:调整分区id
2
3
4
5
6
7
8
9
10
11
12
# java相关
# jdk安装
#最新版JDK安装
yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel #openjdk1.8安装
2
旧版本openjdk下载
http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/tags
jdk8u201-b25
# 查java cpu占用过高问题排查
top -H -p 25681 printf ‘%x’ 25939 6553 jstack 25681 | grep -A 10 6553 --color
# mac下 jvisualvm
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jvisualvm
tomcat/bin/setenv.sh JMX_OPTS="-Dcom.sun.management.jmxremote.port=8080 -Dcom.sun.management.jmxremote.rmi.port=8080 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false" JAVA_OPTS="-Dfile.encoding=UTF-8 -server $JAVA_MEMORY_OPTS $APP_OPTS $JAVA_GC_OPTS $JAVA_GC_PRINT_OPTS $JAVA_SECURITY_OPS $JMX_OPTS"
# 执行jar包
# 方式一
java -jar XXX.jar
特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出
那如何让窗口不锁定?
# 方式二
java -jar XXX.jar &
&代表在后台运行。
特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。
继续改进,如何让窗口关闭时,程序仍然运行?
# 方式三
nohup java -jar XXX.jar &
nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。
# 方式四
nohup java -jar XXX.jar >temp.txt &
解释下 >temp.txt
command >out.file
command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。
# 定时任务
# 1、新建两个脚本文件用来进行测试
test1.sh
[plain] view plain copy
ping 114.114.114.114
2
test2.sh [plain] view plain copy ping 8.8.8.8
# 2、通过crontab -e命令编辑crontab任务,增加内容如下:
*/1 * * * * /dd/shell/test1.sh
*/1 * * * * /dd/shell/test2.sh
2
添加完成后,查看下crontab内容:
[root@localhost shell]# crontab -l
*/1 * * * * /dd/shell/test1.sh
*/1 * * * * /dd/shell/test2.sh
2
3
增加了crontab任务后,在/var/spool/cron目录下会有一个当前登录账号命名的文件。比如我的登录账号是root。则会存在一个root文件。该文件的内容就是刚添加的crontab任务。
[root@localhost cron]# cat /var/spool/cron/root
*/1 * * * * /dd/shell/test1.sh
*/1 * * * * /dd/shell/test2.sh
2
3
# 3、删除crontab内容里的test2.sh的任务
其实该处是使用sed命令来处理/var/spool/cron/root 文件,将含test2.sh的行的内容删除掉。
[plain] view plain copy
sed -i '/test2.sh/d' /var/spool/cron/root
2
命令执行完后,再通过crontab -l命令查看。
[root@localhost shell]# crontab -l
*/1 * * * * /dd/shell/test1.sh
2
可以看到test2.sh的任务被删除掉了。通过观察,test2.sh的脚步也不再被执行。说明确实删除成功。
# 4、删除crontab内容空白行
在执行完上面的sed -i的命令后,crontab -l会发现多出一行空白,如果你觉得看的别扭,你可再通过如下sed命令把空白行删除掉。
[plain] view plain copy
sed -i '/^$/d' /var/spool/cron/root
2
# sendmail
查看日志
less /var/log/maillog
修改hostname ***用自己的域名
# 1.vi /etc/hostname
添加
***.com
# 2.vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.13.45 *** ***.com
2
3
# 3 vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=***.com
GATEWAY=192.168.13.45
2
3