查看文件隐藏权限
lsattr 文件名
添加/取消文件隐藏权限
chattr +/-ai 文件名
给用户添加密码
passwd 用户名
或者
echo '密码' | passwd --stdin 用户名
创建组并将用户加入组
groupadd 名字
加入组 usermod -g
usermod -g 组名 用户名
+
查看系统内核
uname -r
cat /etc/centos-release
查看cpu、内存、磁盘
查看CPU信息 使用命令#cat /proc/cpuinfo
cat /proc/cpuinfo | grep 'process' | sort | uniq | wc -l
lscpu也可以看cpu信息
查看内存信息 使用命令#cat /proc/meminfo查看内存信息
也可以用free -m
查看磁盘信息: 使用命令fdisk -l可以查看磁盘的详细信息
lsblk
fdisk
mkfs.ext4
磁盘设备开机自动挂载 在/etc/fstab中
挂载设备路径 挂载点 文件系统 default 0 0
mount -a //自动挂载/etc/fstab中没有挂载的设备
或者直接
mount 挂载设备 挂载目录
设置文件组
chgrp 组名 文件名
chown 用户名:组名 文件名
更改文件权限
chmod [-R] xyz 文件或目录
xyz:
x(用户权限值):r(4)、w(2)、x(1)
y(用户组权限值):r(4)、w(2)、x(1)
z(其他用户权限值):r(4)、w(2)、x(1)
u 所有者
g 组
o 其他用户
a 全部用户
= 表示权限等于右边
给某个用户特定文件的权限 rwx
setfacl -m u:用户名:权限 文件名
时间同步
yum install -y chronyd vim /etc/chrony.conf
注释掉server 0 1 2
添加
server 服务器名字 iburst
重启服务并开机启动
systemctl restart chronyd
systemctl enable chronyd
查看服务是否启动成功
chronyc sources -v
zip打包备份
zip -r mingzi.zip 目录名字
crontab -e
计划任务 分 时 日 月 周
* * * * * /bin/bash 脚本路径
---------------------------------------------------------------------------------------------------------+d---------------------------------------------------------------------------------------------------
alter对表的操作
mysql增加表字段
alter table 表名 add 字段名 数据类型;
删除表字段
alter table 表名 drop 字段名;
查看建表语句
show create table 表名;
mysql左连接查询
SELECT receiver.`name`, mountpoint.mountpoint, mountpoint.protocol_id FROM mountpoint LEFT JOIN receiver ON mountpoint.id=receiver.id;
--------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------
docker cp:从容器中复制文件到本地
docker cp 容器名:要复制的文件或目录 宿主的文件或目录
查找当前目录30天以前且大于100m的log结尾的文件并删除
find ./ -name '*.log' -mtime +30 -type f -size +100m -exec rm -rf {};
或
find . -name "*.log" –mtime +30 –type f –size +100M |xargs rm –rf {};
批量解压当前目录以.zip结尾的所有文件到指定目录
for i in `find ./ -name '*.zip' -type f` dounzip -d $i /data/huge
判断一个目录是否存在,不存在创建,存在则打印信息
if [ -d 目录 ];
then
echo "当前目录存在"
else
mkdir 目录
fi
写一个脚本将某目录下大于100k的文件移动至/tmp下。
find . -size +100k -exec mv {} /tmp ;
建立软连接
ln -s 软连接目标 软连接成什么
删除软连接
rm -rf 软连接成什么
解压tar包
tar -zxvf ***.tar
解压zip包
unzip ***.zip
网络抓包
tcpdump -nn host 主机IP and port 80 抓取自己或者别人的主机IP通过80请求的数据包
tcpdump -nn host 192.168.56.7 or ! host 192.168.0.22 and port 80 抓取主机为192.168.56.7并且 排除192.168.0.22 80端口!的数据
tcp/ip协议 7层协议 物理层-数据链路层-网络层-传输层-会话层-表示层-应用层
防火墙配置命令,配置只允许远程主机访问80端口
iptables -F
iptables -X ACCEPT
iptables -A INPUT -p tcp --dport 80 -j accept
iptables -A INPUT -p tcp -j REJECT
systemctl disable firewalld
sed -i 's/enforcing/disabled/' /etc/selinux/config
docker看容器日志 grep -i不区分大小写
docker logs -f 容器名 | grep -i error
docker查看容器信息
docker inspect 容器名
k8s获取容器资源信息
kubectl get pos
kubectl get node
kubectl describe pods
获取名称空间
kubectl get pods -n 名称空间
prometheus配置监控项
配置prometheus.yml
然后重启prometheus
grafana配置监控模板
mysql修改表中多个字段的数据
在命令行中 mysql -utest -pzhdgps@123 -e "update huge.receiver set b='1', l='2', h='4' where code='HBMP';"
拼接多个文件(同行)
paste huge.txt baow.txt
容器持续输出日志到文件中
docker logs 容器名 >> huge.txt
脚本修改两个字段
#!/bin/bash
for code in `cat code2.txt`
do
# echo mysql -utest -pzhdgps@123 -e "update huge.receiver set b='$b', l='2', h='4' where code='$code';" >> d.txt
for b in `cat c.txt`
do
#grep -q "$code|$b" d.txt && continue
if [ `grep "$b" d.txt | wc -l` = 0 ] && [ `grep "$code" d.txt | wc -l` = 0 ]; then echo mysql -uroot -pZhdgps@123 -e "update hi_fas.receiver set b='$b',l='2',h='4' where code='$code';" >> d.txt; fi
#echo mysql -uroot -pZhdgps@123 -e "update hi_fas.receiver set b='$b',l='2',h='4' where code='$code';" >> d.txt
#echo mysql -utest -pzhdgps@123 -e "update huge.receiver set b='$b', h='4' where ip='127.0.0.1';" >> d.txt
#break
continue
done
#break
#continue
done
docker镜像打成tar包
docker save -o kibana_7.13.0.tar kibana:7.13.0
将容器打包成镜像
docker commit 容器名 镜像名:镜像版本
docker将tar包导入成镜像
docker load -i kibana_7.13.0.tar
for i in *.tar; do docker load -i $i ;done
scp 远程拷贝文件
scp 本机文件 目标主机ip:目录
目标主机密码
win上拷贝文件到linux
k8s查看容器日志
kubectl logs -n monitor -f kibana-b75d54bb5-v6hcz
k8s的部署文档
https://blog.csdn.net/weixin_44889616/article/details/98943352?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-98943352-blog-123990830.pc_relevant_multi_platform_whitelistv3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-98943352-blog-123990830.pc_relevant_multi_platform_whitelistv3&utm_relevant_index=2
初始化k8s中的master节点
kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=172.25.31.1
如果第一次初始化集群失败,需要执行命令"kubeadm reset"进行重置,重置之后再执行初始化集群的命令,进行集群初始化。
修改镜像yum
首先先备份初始镜像yum
mv /etc/yum.repo.d/CentOS-Base.repo /etc/yum.repo.d/CentOS-Base.repo.bak
去下载镜像yum(阿里,清华)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
清除缓存
x
生成缓存
yum makecache
查看当前服务器的定时任务
crontab -l
linux与docker容器之间的交互
docker exec 容器名 sh -c "指令 && 指令"
linux查看磁盘(1位机械,0表示SSD)
cat /sys/block/sr0/queue/rotational
将/home/huge/这个目录下所有文件和文件夹打包为当前目录下的huge.zip
zip -q -r huge.zip /home/huge
命令行中
ctrl a将光标移到行首
ctrl e将光标移到行尾
vim中
按)或者shift + 6 键移到行首
按结束键(end) 移到行尾
查看mysql的历史使用命令
cat ~/.mysql_history
拷贝linux服务器的文件到本机
sz huge.txt
awk统计某个列出现的次数 i,a[i]中的,只是个分割符 可以换成别的
cat test.txt | awk -F"/" '{a[$3]++} END{for(i in a) print i,a[i]}'