![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
服务器
文章平均质量分 54
好大的月亮
一只奔跑的菜鸡
展开
-
rabbitmq安装包部署erlang环境安装
erlang依赖rabbitmq安装包部署原创 2021-12-30 13:31:26 · 1808 阅读 · 0 评论 -
ubuntu手动设置时间,timedatectl关闭自动同步时间,ntp同步两台服务器时间
关闭自动同步时间NTP即Network Time Protocol(网络时间协议),是一个互联网协议,用于同步计算机之间的系统时钟。timedatectl程序可以自动同步Linux系统时钟到使用NTP的远程服务器(大部分linux系统自带ntp服务而不带ntp client,所以纠结了半天找不到为什么都没装NTP每次改了时间又被同步回网络时间去了)。开启关闭ntp(这样就不会自动同步时间了)timedatectl set-ntp true/falsetimedatectl命令列出可用时区:ti原创 2021-03-05 12:01:24 · 6663 阅读 · 0 评论 -
nginx的UI管理界面
上项目地址https://github.com/onlyGuo/nginx-gui我这边给个windows的demo从这可以看出是一个springboot项目运行demo可以UI在线修改nginx的配置文件并应用原创 2021-03-01 18:47:01 · 5292 阅读 · 0 评论 -
linux登录后出现-bash-4.1$,解决办法以及造成这样的原因
linux登录后有时候会出现-bash-4.1$造成这样的原因:与这个用户有关环境变量没了,有关的文件被删除。也就是用户的家目录下面 .bash_profile .bashrc 被删除。解决办法:##首先切换到故障用户su - test##复制对应的文件(不要用root直接复制,否则复制过去的东西属主,数组都是root的)##(/etc/skel 新用户老家的样子,所以从这里复制)-bash-4.1$ cp /etc/skel/.bash* ~ -bash-4.1$ ls -lat转载 2021-01-28 22:13:59 · 1997 阅读 · 0 评论 -
nginx的事件处理worker_processes/worker_connections/worker_rlimit_nofile解释,查看cpu数量
Nginx事件处理模型demoevents { use epoll; worker_connections 65535; multi_accept on;}worker_connections 下面有介紹multi_accept告诉nginx收到一个新连·接通知后接受尽可能多的连接,默认是on,设置为on后,多个worker按串行方式来处理连接,也就是一个连接只有一个worker被唤醒,其他的处于休眠状态,设置为off后,多个worker按并行方式来处理连接,也就是一个连接原创 2020-10-22 13:00:52 · 10259 阅读 · 0 评论 -
ubuntu中/etc/localtime和/etc/timezone的区别
/etc/localtime是用来描述本机时间/etc/timezone是用来描述本机所属的时区在linux中,有一些程序会自己计算时间,不会直接采用带有时区的本机时间格式,会根据UTC时间和本机所属的时区等计算出当前的时间。比如jdk应用,时区为“Etc/UTC”,本机时间改为北京时间,通过java代码中new 出来的时间还是utc时间,所以必须得修正本机的时区。...原创 2020-08-01 17:03:54 · 3322 阅读 · 0 评论 -
使用python来搭建一个简易的文件下载环境以及用droopy来实现一个文件上传环境
ubuntu在安装的时候一般都是自带python环境的,大家可以查看一下查看demo如下用于共享的命令很简单python2: python -m SimpleHTTPServer 8888python3: python3 -m http.server 8888后面的端口可以不写,默认是8000端口,记得服务器的防火墙要开一下8000端口为了让它可以在后台运行,我就写了个简易脚本然后nohup ./share.sh >> share.log 2>&1 &执行原创 2020-07-23 11:54:35 · 1866 阅读 · 3 评论 -
docker挂载的时候Volume与绑定挂载bind mount区别随笔
挂载图将宿主机目录挂载进docker可以通过以下两种起Docker容器的方式,把宿主机目录挂载进入容器的对应目录:docker run -v /docker_dir ...docker run -v /home:/docker_dir ...当不指明宿主机目录时,Docker会默认在宿主机上创建一个临时目录: /var/lib/docker/volumes/[VOLUME_ID]/_data作为宿主机上的被挂载目录。查看docker的volume可以用docker volume ls命令原创 2020-07-22 23:24:25 · 4069 阅读 · 2 评论 -
当使用docker启动容器的时候有时候会报Are you trying to mount a directory onto a file (or vice-versa),排查解决问题
demo拿个遇到此问题的童鞋的报错截图,手动jpg(嘿嘿嘿)看到问题不要方,其实一切都在错误日志里了,可以看到是/etc/timezone被挂载进去的时候提示了Are you trying to mount a directory onto a file (or vice-versa),这个报错.日志说我们在把一个文件夹挂载到文件中.一般习惯ubuntu的童鞋可能会楞一下,这个/etc/timezone不是时间文件吗.那么久让我们真正的进到这个目录下去看看把查看详细的文件信息stat 文件名原创 2020-07-21 12:44:01 · 13144 阅读 · 4 评论 -
windows使用cmd连接ftp使用命令上传(put)和下载文件(mget)
连接中间如果连接断开了可以直接重连使用open下载输入"lcd 本地文件目录"(指的是你要将文件下载到的目标目录,如果不输入就是默认c盘的当前系统用户目录下)输入"prompt"命令(打开交互模式)最后输入"mget 服务其上要下载的文件名",回车键.这样就可以进行下载了.看到"Transfer complete"就表示下载成功了.到本地路径下就能看到下载的文件了.上传上传文件,利用PUT ‘本地文件路径’dir即可查看已经上传的文件...原创 2020-07-13 14:01:17 · 8288 阅读 · 0 评论 -
Ubuntu18.04安装Samba用于和windows共享文件夹
安装sudo apt-get updatesudo apt-get install samba创建需要共享的目录mkdir /home/ubuntu/app/downloads然后修改权限为777chmod -R 777 /home/ubuntu/app/downloads设置samba用户和密码username自定义sudo smbpasswd -a username这个用户一定要先在系统中存在,不然后面会提示添加用户失败,我直接使用了当前的登录用户修改配置文件sudo原创 2020-07-12 23:05:57 · 1489 阅读 · 4 评论 -
linux查看内存和清理已经使用的buff/cache内存
查看内存的使用情况free 或者 toptotal 总内存used 已用内存free 空闲内存buff/cache 已使用的缓存avaiable 可用内存demo清理已使用的缓存(buff/cache)前面加sync 是为了防止内容丢失,运行sync会把未存盘的cache都写入磁盘,稍等片刻, 或者是直接运行sync 两遍sync; echo 3 > /proc/sys/vm/drop_caches这里的buffer指Linux内存的:Buffer cache。这里的c原创 2020-07-07 16:08:13 · 4014 阅读 · 0 评论 -
linux printf打印命令略解
printf格式化输出基本格式printf [format] [文本1] [文本2] ... [文本n]常用格式替换符%s 字符串%f 浮点格式%c ASCII字符,即显示对应参数的第一个字符%d,%i 十进制整数%o 八进制值%u 不带正负号的十进制值%x 十六进制值(a-f)%X 十六进制值(A-F)%% 表示%本身常用转义字符\a 警告字符,通常为ASCII的BEL字符\b 后退\f 换页\n 换行\r 回车\t 水平制表符\v 垂直制表符\ 表原创 2020-07-03 11:32:56 · 1207 阅读 · 0 评论 -
服务器cpu100%后使用jstack排查
先进服务器用top -c找出当前的进程的运行列表然后按p按照cpu使用率进行排序然后top -Hp pid查看这个进程下的线程的运行列表,然后同样按p按照cpu使用率进行排序找到占用cpu最高的那个线程的pid printf %x pid 打印它的16进制结果接着 使用jstack将之前那个进程的信息导出到文本中demojstack -l 48572 > 48572.stack接着从文本中筛选这个进程下占用cpu最高的那个线程的堆栈信息,-C代表显示这个进程信息前后8行的信息cat原创 2020-07-03 11:11:22 · 642 阅读 · 0 评论 -
ubuntu部署ftp服务让windows直接通过浏览器读取指定目录下的文件,以及ftpClient.storeFile方法time out问题
11111原创 2020-07-12 21:54:29 · 1286 阅读 · 0 评论 -
网页时间差13小时,ubuntu,mysql服务,tomcat服务时间排查.CST所代表的4个时区
-Duser.timezone=GMT+08或者追加-Duser.timezone=Asia/shanghai原创 2020-07-01 11:03:54 · 456 阅读 · 0 评论 -
ubuntu的ufw防火墙开放特定端口,查看允许通过防火墙的应用
1.安装sudo apt-get install ufw2.开启sudo ufw enable 默认关闭外部访问sudo ufw default deny3.查看状态sudo ufw status 4.新增端口sudo ufw allow 80805.删除端口sudo ufw delete allow 80806.允许特定来源的ip地址访问sudo ufw allow from 192.168.1.1...原创 2020-06-29 12:57:10 · 6323 阅读 · 0 评论 -
windows自带的端口转发netsh interface portproxy
cmd中的操作demonetsh interface portproxy的微软帮助文档地址:https://technet.microsoft.com/zh-cn/library/cc776297(WS.10).aspx#BKMK_1新增端口转发:首先打开命令提示符(cmd)netsh interface portproxy add v4tov4 listenport=监听端口 connectaddress=转发到的地址 connectport=转发到的端口例子: netsh interfa原创 2020-06-17 20:44:36 · 1882 阅读 · 0 评论 -
ubuntu18.04安装抓包工具charles
安装按照官网来https://www.charlesproxy.com/documentation/installation/apt-repository/wget -q -O - https://www.charlesproxy.com/packages/apt/PublicKey | sudo apt-key add -sudo sh -c 'echo deb https://www.charlesproxy.com/packages/apt/ charles-proxy main > /原创 2020-06-14 20:24:39 · 951 阅读 · 0 评论 -
ubuntu代理
1.1 设置 http 代理1.1.1 只在当前 shell 生效export http_proxy="http://<user>:<password>@<proxy_server>:<port>"export https_proxy="http://<user>:<password>@<proxy_server>:<port>"export ftp_proxy="http://<user>:原创 2020-06-14 20:00:16 · 708 阅读 · 1 评论 -
ubuntu使用netstat查看端口的占用及查看连接某服务端口最多的的IP地址
netstat简介netstat tunlpNetstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。从整体上看,netstat的输出结果可以分为两个部分:一个是Active Internet connections,称为有源TCP连接,其中"Recv-Q"和"Send-Q"指%0A的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示原创 2020-06-04 17:25:51 · 6461 阅读 · 0 评论 -
oracleVM安装ubuntu18.04后通过添加网卡让宿主机和虚拟机可以通信,或分配静态ip
ubuntu18.04网络配置不同之处ubuntu18.04和之前版本的网络配置有很大的不同新出的Ubuntu服务器18.04版本修改了IP地址配置程序, Ubuntu和Debian的软件架构师删除了以前的ifup/ifdown命令和/etc/network/interfaces配置文件, 改为使用**/etc/netplan/01-netcfg.yaml和sudo netplay apply**命令管理IP地址.01-netcfg.yaml只是demo,大家的并不一定叫这个,可以ls /etc/ne原创 2020-06-04 11:23:15 · 681 阅读 · 0 评论 -
linux在线诊断java进程神器arthas入门基本操作
简介Arthas 是阿里巴巴最近才开源出来的一款 Java 诊断利器,它主要是针对线上环境,能够帮助我们更好的定位问题。先上一波官方文档https://alibaba.github.io/arthas/quick-start.html下面简略介绍了arthas的入门操作,还有好多更加好用的操作欢迎大家一起沟通下载和启动下载curl -O https://alibaba.github.io/arthas/arthas-demo.jararthas-demo是一个简单的程序,每隔一秒生成一个原创 2020-05-27 14:40:26 · 825 阅读 · 0 评论 -
docker容器的日志查看及docker logs的实现原理;docker查询镜像及其版本
docker logs的实现原理“Docker Daemon是Docker架构中一个常驻在后台的系统进程,它在后台启动了一个Server,Server负责接受Docker Client发送的请求;接受请求后,Server通过路由与分发调度,找到相应的Handler来执行请求。–《Docker源码分析》”当我们输入docker logs的时候会转化为Docker Client向Docker Daemon发起请求,Docker Daemon 在运行容器时会去创建一个协程(goroutine),绑定了整个容器原创 2020-05-23 00:46:25 · 4041 阅读 · 0 评论 -
ubuntu在线部署docker,在线脚本部署docker和离线.deb部署docker
这些在官方文档里说的最为清楚了…https://docs.docker.com/engine/install/ubuntu/原创 2020-05-22 00:14:50 · 271 阅读 · 0 评论 -
docker-compose的安装,kafka用docker-compose部署,docker和docker-compose的区别
第一步:安装docker-compose1.从github上下载docker-compose二进制文件安装下载最新版的docker-compose文件 $ sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose添加可执行权限 $ sudo chmod +x /usr/loc原创 2020-05-21 23:44:26 · 524 阅读 · 0 评论 -
利用curl模拟get请求和post请求以及下载上传,测试端口是否开放,tomcat是否假死
常用参数curl命令参数很多,这里只列出我曾经用过、特别是在shell脚本中用到过的那些。-v/–verbose 小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。-m/–max-time 指定处理的最大时长-H/–header 指定请求头参数-s/–slient 减少输出的信息,比如进度–connect-timeout 指定尝试连接的最大时长-x/–proxy <proxyhost[:port]> 指定代理服务器地址和端口,端口默认为1080-T原创 2020-05-21 22:18:41 · 766 阅读 · 0 评论 -
ubuntu利用cip.cc获取外网地址
curl cip.cc原创 2020-05-21 20:40:25 · 1649 阅读 · 0 评论 -
lsb_release -a查看ubuntu版本
lsb_release -a原创 2020-05-18 14:23:21 · 887 阅读 · 0 评论 -
TCP协议三次握手和四次握手机制
tcp连接时三次握手3次握手其实就是在建立连接的时候1-客户端先发一个请求告诉服务端:你在吗,我准备发数据了2-服务端接收到之后,回应:我在,我准备好接受数据了,你还在吗3-客户端接到服务端的消息后,再次回应:我在,我们开始吧.这样连接就建立成功了tcp断开时四次挥手tcp在断开时1-客户端发消息告诉服务端我要准备断开了2-服务端接到消息后,回应客户端我这边处理完就断开3-服务端处理完之后,会告诉客户端我这边ok了,我们准备断开连接把4-客户端发消息给服务端回应说好的,我们断开把.然原创 2020-05-17 15:36:51 · 253 阅读 · 0 评论 -
ubuntu查看docker容器占用的磁盘空间
docker system dfdocker system df命令,类似于Linux上的df命令,用于查看Docker的磁盘使用情况:docker system dfTYPE TOTAL ACTIVE SIZE RECLAIMABLEImages 147 36 7.204GB原创 2020-05-16 00:41:11 · 22532 阅读 · 5 评论 -
使用goosa插件实现浏览器直接对服务器进行文件上传和下载
因为是go写的,所以不需要安装环境,下载下来,直接就可以跑起来我用的是v0.1.3https://github.com/pldubouilh/gossa/releases/download/v0.1.3/gossa-linux64下面附上github地址https://github.com/pldubouilh/gossa/releases...原创 2020-04-07 16:04:24 · 312 阅读 · 0 评论 -
记ubuntu用jstack排查服务假死
要使用jstack首先要有jdk环境,这个大家可以自行百度安装一下第一步通过 ps -ef | grep XXX找出对应的服务的PID可以多重嵌套使用ps命令ps -ef | grep java | grep wms | grep 30010得到进程ID为14007,第二步找出该进程内最耗费CPU的线程,可以使用ps -Lfp pid或者ps -mp pid -o THREAD, ti...原创 2020-04-04 15:25:12 · 764 阅读 · 0 评论 -
linux中expect安装,远程执行脚本
一、概述我们通过Shell可以实现简单的控制流功能,如:循环、判断等。但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如telnet服务器等进行交互的功能。而expect就使用来实现这种功能的工具。 expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预。expect是不断发展的,随着时间的流逝,其功能越来越强大,已经成为系统管...原创 2020-03-05 20:22:12 · 353 阅读 · 0 评论 -
在docker容器中编辑mysql的my.cnf配置文件vi指令找不到,引发一些其他思考
现象就是我在自己的ubutu虚拟机中是有vim的也可以正常使用,但是通过docker exec -it mysql bash登录进docker后发现vim不能用了,提示command not found一开始我想不可能呀,我命名装了vim的,也可以用.后来想到可能docker容器就相当于一个虚拟机,于是情况就成了我要在虚拟机中的虚拟机中使用vim,显然第二个虚拟机是没有安装vim所以提示comm...原创 2020-02-12 12:38:29 · 3335 阅读 · 0 评论 -
ubuntu忘记了root密码,重置
1.启动系统,在启动时长按Esc键或Shift键,直到出现如下界面。2.选择Ubuntu高级选项(或者有的版本显示的是Advanced options for Ubuntu),按回车键进入。3.选中Ubuntu,with Linux 4.13.0-38-generic (recovery mode) 。第一个4.按“e”键,进入如下界面。5.移动光标,找到linux /boot...原创 2020-02-03 11:55:01 · 468 阅读 · 0 评论 -
mongodb进行整库备份与恢复,以及对单表的备份恢复,单表支持json格式和csv(excel)格式
如果是docker部署的mongo先docker exec -it mongo bash登录mongo容器,然后在bin文件夹下,运行指令mongodump -h 127.0.0.1:27017 -d xwms -u XXX -p XXX -c "interface_log_body" -q '{"expireAt":{$gte:ISODate("2020-02-16T00:00:00.000Z...原创 2020-01-17 13:15:20 · 973 阅读 · 0 评论 -
LINUX下解决netstat查看TIME_WAIT状态过多问题
netstat -an|awk ‘/tcp/ {print $6}’|sort|uniq -c 16 CLOSING130 ESTABLISHED298 FIN_WAIT1 13 FIN_WAIT2 9 LAST_ACK 7 LISTEN103 SYN_RECV5204 TIME_WAIT状态:描述CLOSED:无连接是活动的或正在进行LISTEN:服务器在等待进入呼叫...原创 2020-01-16 12:20:51 · 1194 阅读 · 0 评论 -
ubuntu循环执行shell指令或遍历txt文件
使用for进行循环for (( c=1; c<=5; c++ )); do netstat -ant | grep 30010 | wc -l;sleep 2s; donesleep 2是一条指令执行完之后sleep2秒在执行下一条还有其他单位,默认是秒也可以通过while来进行循环mycount=0; while (( $mycount < 10 )); do &l...原创 2020-01-09 15:56:15 · 2466 阅读 · 0 评论 -
ubuntu自定义nginx下的access日志清理脚本
下面的demo是清理nginx下的access.log#!/bin/bashlog_path=/home/ttx/app/tengine/logs/access.logsave_path=/home/ttx/app/tengine/logs/bak/file_name=access_$(date +%Y%m%d -d 'yesterday').logif [ ! -d $save_pat...原创 2020-01-09 00:24:18 · 331 阅读 · 0 评论