【无标题】运维的那点事

 

查看文件隐藏权限
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]}'

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值