linux
linux
张哲溪
日拱一卒,功不唐捐
展开
-
linux cron /etc/crontab 及 /var/spool/cron/$USER 中定义定时任务
比如使用root用户创建的crontab任务对应的文件就是/var/spool/cron/root,一般一个用户最多只有一个crontab文件。1、crontab -e 或者直接编辑/etc/crontab文件,这种方式用的人比较多,/etc/crontab是系统调度的配置文件,只有root用户可以使用,使用时需root权限,而且必须指定运行用户,才会执行。定时任务在linux上主要体现在两个地方,一个是/etc/crontab ,另一个就是定义了任务计划的用户/var/spool/cron/$USER。原创 2024-06-23 15:22:43 · 312 阅读 · 0 评论 -
使用shell脚本确保定时任务的单例执行
在Linux系统中,定时任务是自动化运维的重要组成部分。然而,有时候我们可能需要确保某个定时任务在任何给定时间点只运行一次,以避免资源冲突或数据不一致。本文将介绍如何使用Bash脚本和文件锁来实现单例定时任务。锁文件是一种简单的机制,用于标记一个进程或脚本正在运行中。通过创建一个特定的文件作为锁文件,其他实例可以检查这个文件是否存在,从而判断是否有其他实例正在运行。原创 2024-06-02 10:09:21 · 402 阅读 · 0 评论 -
SSL/TLS协议信息泄露漏洞(CVE-2016-2183)
如果Web服务中的SSL协议出现安全问题,攻击者就可以拥有你所有的安全信息。Nginx使用ssl模块配置HTTPS支持,就会遇到这个问题。编辑配置文件nginx.conf,把这句加在 server 配置节里就可以了,在浏览器使用不安全的算法时,会自动禁止连接。重新加载nginx配置文件,就可以生效了。之后nginx -t 检查配置文件。原创 2024-01-08 11:35:48 · 748 阅读 · 0 评论 -
node lib64libm.so.6 version `GLIBC_2.28‘ not found (required by node)
Linux服务器node版本从v16.14.2升级到v18.14.0版本,升级完成以后,直接node命令或者yarn install命令会报如下错误,我的操作系统版本是centos7.9的。已经升级了gcc为什么还是没有CXXABI_1.3.9,应该是升级gcc的时候动态库没有更新,所以检查一下动态库。需要在服务器上查看一下系统里面有没有其他的高版本,发现有高的版本,使用so.6.0.29就可以了。查看系统内安装的glibc版本,确实没有GLIBC_2.25~2.28中的任意一个版本。原创 2023-05-18 15:16:43 · 6428 阅读 · 3 评论 -
使用curl命令分析请求的耗时情况
前言最近工作中遇到一个问题,某个请求的响应特别慢,因此我就希望有一种方法能够分析到底请求的哪一步耗时比较长,好进一步找到问题的原因。在网络上搜索了一下,发现了一个非常好用的方法,curl 命令就能帮助分析请求的各个部分耗时情况。步骤:curl 命令提供了 -w 参数,这个参数在 manpage 是这样解释的:-w, --write-out <format> Make curl display information on stdout after a comp原创 2022-04-29 17:01:54 · 3645 阅读 · 0 评论 -
unzip解压时报错
使用ssh远程用unzip解包的时候,报如下的错误需要在unzip的后面加上-o 的参数。就可以解决这个问题。unzip -o abc.zip原创 2021-08-06 20:47:49 · 6732 阅读 · 1 评论 -
root和普通用户scp免密
root和普通用户都可以做scp免密登录建立SSH的信任关系1、生成 node1 的秘钥(私钥和公钥)1)进入 node1 的 /root/.ssh 目录cd /root/.ssh/2)执行如下命令,生成公钥和私钥(此时,一路回车即可)ssh-keygen -t rsa其中,id_rsa 是私钥,id_rsa.pub 是公钥。2、将 node1 的 id_rsa.pub中的内容追加到 node2 的authorized_keys 认证文件中1)将 node1 的公钥(id_rsa.pub)原创 2021-07-29 20:54:53 · 1394 阅读 · 0 评论 -
jps命令的使用方法
jps是java提供的一个显示当前所有java进程pid的命令,适合在linux/unix平台上简单查看当前java进程的一些简单情况。jps -l:输出主类或者jar的完全路径名jps –l:输出主类或者jar的完全路径名jps –v :输出jvm参数...原创 2021-07-29 20:37:26 · 562 阅读 · 0 评论 -
kill -9 进程 杀掉僵死进程
用 ps 和 grep 命令寻找僵尸进程命令注解:-A 参数列出所有进程 -o 自定义输出字段 我们设定显示字段为 stat(状态), ppid(进程父id), pid(进程id),cmd(命令)这四个参数 因为状态为 z或者Z的进程为僵尸进程,所以我们使用grep抓取stat状态为zZ进程 运行结果参考如下:这时,我们可以使用 kill -HUP 12339来杀掉这个僵尸进程运行后,可以再次运行来确认是否已经将僵尸进程杀死 如果kill 子进程的无效,可以尝试kill 其父进程来解决问题,例原创 2021-03-20 09:51:16 · 1913 阅读 · 0 评论 -
unshare命令详解及案例
unshare命令详解1.名字unshare - run program with some namespaces unshared from parent(使用与父程序不共享的名称空间运行程序)2.摘要unshare [options] program [arguments]3.描述Unshares the indicated namespaces from the parent process and then executes the specified program. The n原创 2021-02-26 09:57:54 · 12584 阅读 · 8 评论 -
Linux下判断磁盘是SSD还是HDD的方法
判断cat /sys/block//queue/rotational的返回值(其中为你的硬盘设备名称,例如sda等等),如果返回1则表示磁盘可旋转,那么就是HDD了;反之,如果返回0,则表示磁盘不可以旋转,那么就有可能是SSD了。...原创 2021-02-25 11:06:18 · 402 阅读 · 0 评论 -
linux shell编写监控脚本,实现计算机各个性能数据监控的功能
[root@master shell]# cat monitoring_host.sh#!/bin/baship=ifconfig ens33 | awk '/inet/{print $2}'echo “本机的IP是:” $ipcpu=uptime |awk '{print "CPU的负载情况\t1分钟负载情况:"$8"\t5分钟负载情况:"$9"\t15分钟负载情况"$10}'echo “本机的CPU负载情况:”$cpunet_in=ifconfig ens33 | awk '/RX p/{p原创 2021-01-09 12:52:06 · 788 阅读 · 2 评论 -
Linux判断当前机器是虚拟机还是物理机
dmidecode -s system-product-nameVMware Virtual Platform //包含virtual字样,为虚拟机dmidecode -s system-product-namePowerEdge R730 //不包含virtual字样,为物理机使用dmesg命令查看(root权限)dmesg|grep -i dmi:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platf原创 2021-01-07 17:43:38 · 832 阅读 · 0 评论 -
linux系统平均负载
1.什么是系统平均负载系统平均负载指单位时间内,系统中处于可运行状态和不可中断状态的进程数,也就是平均活跃进程数,他和 CPU 使用率没有直接关系。可运行状态的进程指正在使用 CPU 或正在等待使用 CPU 的进程,也就是我们常用 ps 命令看到的,处于 R 状态(Running 或 Runnable)的进程。不可中断状态的进程指正在等待某些 I/O 的进程,即我们在 ps 命令中看到的 D 状态(Uninterruptible Sleep,也称为 Disk Sleep)的进程。例如等待磁盘 I/O,原创 2021-01-03 13:12:41 · 585 阅读 · 2 评论 -
系统/apps目录下的进程杀不掉的问题
1.使用ps -ef | grep apps 过滤出apps目录下有一些进程,我现在想要杀掉这个2.通过kill -9 把所有的进程都干掉了,但是还是umout卸不掉/apps这个目录3.使用lsof命令查看/apps目录 lsof /apps 查看还有进程在占用,然后在把进程杀掉,就可以卸载掉了...原创 2020-12-29 13:47:34 · 286 阅读 · 0 评论 -
硬盘基本配置查询
*查询磁盘整体使用情况*df -h#命令拓展#df -a 显示全部的文件系统的使用情况#df -i显示inode信息#df -k 已字节数显示区块占用情况#df -T 显示文件系统的类型*查看目录结构*#-L指定目录深度tree -L 2 /home/*以树状的格式显示所有可用的块设备信息*lsblk*列出所有可用的设备、通用唯一识别码(UUID)、文件系统类型以及卷标*blkid...原创 2020-12-09 10:55:51 · 406 阅读 · 0 评论 -
内存基本配置查询
*查询服务器内存*Free -h*每隔3秒查询一下内存*Free -h -s 3原创 2020-12-09 10:55:13 · 210 阅读 · 0 评论 -
CPU基本配置查询
*名词解释**名词**含义*CPU物理个数主板上实际插入的cpu数量CPU核心数单块CPU上面能处理数据的芯片组的数量,如双核、四核等 (cpu cores)逻辑CPU数/线程数一般情况下,逻辑cpu=物理CPU个数×每颗核数,如果不相等的话,则表示服务器的CPU支持超线程技术*查看 CPU 物理个数*grep ‘physical id’ /proc/cpuinfo | sort -u | wc -l*查看 CPU 核心数量* grep ‘core id’原创 2020-12-09 10:53:53 · 456 阅读 · 0 评论 -
Linux主机时钟同步
array=("10.248.x.5" ,"10.248.x.6","10.248.x.7")for element in ${array[@]}do echo "----------------Host: ${element}-----------------" ssh root@${element} "ntpdate -u 10.248.xx.18"done10.248.68.18 这个是时间服务器array=("10.248.x.5" ,"10.248.x.6","10.248....原创 2020-11-21 21:06:20 · 302 阅读 · 0 评论 -
统计服务器资源利用率AWK
CPU 利用率统计:top -bn1 | grep load | awk '{printf "CPU Load: %.2f\n", $(NF-2)}'1内存利用率统计:free -m | awk 'NR==2{printf "Memory Usage: %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'1磁盘利用率统计(列出每块磁盘利用率):df -h -t ext2 -t ext4 -t xfs| grep -vE '^Filesystem|tmpfs|cdrom'原创 2020-11-15 11:31:43 · 838 阅读 · 0 评论 -
将程序在后台运行和杀掉后台的进程
1. 使用cp命令备份docker的数据目录。如果docker的数据目录太大,可以使用如下命令进程备份。例子:cp -r docker docker_bak & --这个命令是将cp命令放到后台执行2. 杀掉后台运行的进程(1)先查询后台运行进程的pid: jobs -l (2)查询到pid以后,可以使用kill -9 进程号将后台运行的进程杀掉。3. 将后台的命令调至到前台继续运行可以使用fg %jobnumber将选中的命令调出,%jobnumber是...原创 2020-11-09 21:37:07 · 2308 阅读 · 0 评论 -
查看物理机带宽
ethtool eth0原创 2020-11-01 21:55:04 · 586 阅读 · 2 评论 -
对容器及主机进行压测的命令
1.在容器内对指定服务进行压测while true; do wget -q -O- http://php-apache.default.svc.cluster.local; done2.压测的命令:dd if=/dev/zero of=/tmp/a原创 2020-10-25 17:57:45 · 391 阅读 · 0 评论 -
linux命令补全
Rhel7使用最小化安装以后,tab键默认是不能自动补全命令的,需要执行yum -y install bash-completion 命令以后,然后在source /usr/share/bash-completion/bash_completion 一下就可以命令补全了原创 2020-09-22 12:32:24 · 360 阅读 · 0 评论 -
lsof命令介绍
简介lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应...原创 2020-04-07 15:28:21 · 599 阅读 · 0 评论