运行环境如下:
#设置yum源,这里用的aliyun的
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#删除repo中内网等不需要的baseurl
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
查看selinux和firewalld情况,并关闭(若有其他防火墙的情况下)
systemctl disable --now firewalld
sestatus #查看selinux状态
setnforce 0 #临时关闭selinux
#设置selinux为disable
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/sysconfig/selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
安装wlnmp的repo
rpm -ivh http://mirrors.wlnmp.com/centos/wlnmp-release-centos.noarch.rpm
安装chrony
yum install chrony
systemctl start chronyd
systemctl enable chronyd
timedatectl status
timedatectl set-local-rtc 1 (这里可以解决系统重启后的时间差异)
参数优化:
ulimit -a #查看当前系统的所有限制值
ulimit -n #查看当前的最大打开文件数,默认1024,当负载较大的服务器,很容易遇到error:too many open files 所有需要调大
ulimit -SHn 65535 #新装linux默认的最大打开文件数为1024,这个命令等效 ulimit -n 65535,-S指soft,-H指hard
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 65535
* hard nproc 655350
* soft memlock unlimited
* hard memlock unlimited
常用工具监控工具
yum install sysstat #包含sar,vmstat,mpstat,iostat等
smem 查看进程级内存使用情况
yum install epel-release
yum install smem python-matplotlib python-tk
配置秘钥设置免密登录
ssh-keygen -t rsa
把公钥传输到其他服务器 (注意需要hosts中有设置hostname和ip的映射)
for i in $server-name1 $server-name2;do ssh-copy-id -i .ssh/id_rsa.pub $i;done
查看所有已经启动的服务:systemctl list-units --type=service
查看所有服务列表:systemctl list-unit-files
配置elrepo镜像
https://developer.aliyun.com/mirror/elrepo
具体:
> rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
> yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
sudo cp /etc/yum.repos.d/elrepo.repo /etc/yum.repos.d/elrepo.repo.bak
然后编辑 /etc/yum.repos.d/elrepo.repo 文件,在 mirrorlist= 开头的行前面加 # 注释掉;并将 elrepo.org/linux 替换为 mirrors.aliyun.com/elrepo。 更新软件包缓存sudo yum makecache
下载内核离线包
mirrors.aliyun.com/elrepo
离线安装内核
yum localinstall -y kernel-ml*
更改内核启动顺序
grub2-set-default 0 && grub2-mkconfig -o /etc/grub2.cfg
grubby --args="user_namespace.enable=1" --update-kernel="$(grubby --default-kernel)"
检查默认内核情况
grubby --default-kernel
虚拟机添加磁盘后fdisk -l无法看到
可以手动刷新scsi
[root@song ~]# cd /sys/class/scsi_host/
[root@song scsi_host]# ls
host0 host1 host2
[root@song scsi_host]# echo "- - -" > host0/scan
[root@song scsi_host]# fdisk -l没有就继续重复
[root@song scsi_host]# echo "- - -" > host1/scan
[root@song scsi_host]# fdisk -l
[root@song scsi_host]# echo "- - -" > host2/scan
ok,可以看到了
然后就是分区,2T以下可以用fdisk,超过了用parted创建GPT分区,也可以创建MBR分区
parted /dev/对应磁盘号
mklabel gpt #设置GPT分区格式
mkpart primary 1 100% #本操作是划分一个主分区,分区名为primary且100%容量给到第一个分区
align-check optimal 1 #检查分区是否对齐, 1是对应的分区号
如果分区是对齐的,结果如下所示:1 aligned ##如果返回的是1 not aligned,表示分区未对齐
print #查看分区表
quit #退出
为分区创建文件系统
mkfs -t xfs /dev/对应磁盘号1 #创建xfs的文件系统
挂载并写入/etc/fstab
cp /etc/fstab /etc/fstab.bak #先备份
echo `blkid /dev/对应磁盘号1 | awk '{print $2}' | sed 's/\"//g'` /mnt ext4 defaults 0 0 >> /etc/fstab #在/etc/fstab中使用全局唯一标识符UUID来引用新分区
cat /etc/fstab #查看新分区情况
mount -a #挂载/etc/fstab配置的文件系统。如果无报错输出,表示您的/etc/fstab配置无误
设置ll时间显示格式
当前shell环境临时生效
export TIME_STYLE='+%Y-%m-%d %H:%M:%S'
当前用户长期生效
echo "export TIME_STYLE='+%Y-%m-%d %H:%M:%S'" >> ~/.bash_profile && source ~/.bash_profile
系统内全局生效
sudo echo "export TIME_STYLE='+%Y-%m-%d %H:%M:%S'" >> /etc/profile && source /etc/profile
后面两种需要source 一下来立即生效