分类 Window 下的文章

linux查看进程占用网速和流量使用情况


有三个命令vnstat、iftop、nethogs(推荐)

都需要额外安装软件 使用yum或apt-get

一、vnstat使用,查看接口统计报告

vnstat -i eth0 -l #实时流量情况
微信图片编辑_20210728234545.jpg
还有其他命令使用--help查看

ctrl+c结束后,会显示监控期间的流量统计结果
微信图片编辑_20210728234632.jpg

二、iftop使用,检查带宽使用情况

iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等

命令用法:

-i设定监测的网卡,如:# iftop -i eth1

-B 以bytes为单位显示流量(默认是bits),如:# iftop -B

-n使host信息默认直接都显示IP,如:# iftop -n

-N使端口信息默认直接都显示端口号,如: # iftop -N

交互命令:

按n切换显示本机的IP或主机名;

按s切换是否显示本机的host信息;

按d切换是否显示远端目标主机的host信息;

按t切换显示格式为2行/1行/只显示发送流量/只显示接收流量;

按N切换显示端口号或端口服务名称;

按S切换是否显示本机的端口信息;

按D切换是否显示远端目标主机的端口信息;

按p切换是否显示端口信息;

使用截图:
微信图片编辑_20210728234748.jpg

三、nethogs使用,按进程实时统计网络带宽利用率(推荐)

命令用法:

1、设置5秒钟刷新一次,通过-d来指定刷新频率:nethogs -d 5

2、监视eth0网络带宽 :nethogs eth0

3、同时监视eth0和eth1接口 : nethogs eth0 eth1
交互命令:
以下是NetHogs的一些交互命令(键盘快捷键)
m : 修改单位
r : 按流量排序
s : 按发送流量排序
q : 退出命令提示符

使用截图:
微信图片编辑_20210728234327.jpg


GIT:在 A 项目中引用 B 项目


背景

项目中经常使用别人维护的模块,在git中使用子模块的功能能够大大提高开发效率。

使用子模块后,不必负责子模块的维护,只需要在必要的时候同步更新子模块即可。

本文主要讲解子模块相关的基础命令,详细使用请参考man page。

子模块的添加

添加子模块非常简单,命令如下:

git submodule add <url> <path>

其中,url为子模块的路径,path为该子模块存储的目录路径。

执行成功后,git status会看到项目中修改了.gitmodules,并增加了一个新文件(为刚刚添加的路径)

git diff --cached查看修改内容可以看到增加了子模块,并且新文件下为子模块的提交hash摘要

git commit提交即完成子模块的添加

子模块的使用

克隆项目后,默认子模块目录下无任何内容。需要在项目根目录执行如下命令完成子模块的下载:

git submodule init
git submodule update

或:

git submodule update --init --recursive

执行后,子模块目录下就有了源码,再执行相应的makefile即可。

子模块的更新

子模块的维护者提交了更新后,使用子模块的项目必须手动更新才能包含最新的提交。

在项目中,进入到子模块目录下,执行 git pull更新,查看git log查看相应提交。

完成后返回到项目目录,可以看到子模块有待提交的更新,使用git add,提交即可。

删除子模块

有时子模块的项目维护地址发生了变化,或者需要替换子模块,就需要删除原有的子模块。

删除子模块较复杂,步骤如下:

rm -rf 子模块目录 删除子模块目录及源码
vi .gitmodules 删除项目目录下.gitmodules文件中子模块相关条目
vi .git/config 删除配置项中子模块相关条目
rm .git/module/* 删除模块下的子模块目录,每个子模块对应一个目录,注意只删除对应的子模块目录即可
执行完成后,再执行添加子模块命令即可,如果仍然报错,执行如下:

git rm --cached 子模块名称

完成删除后,提交到仓库即可。


工具:GIF屏幕录制工具


今天有点需求需要把东西截图成GIF,上网找了写工具,最后找到LICEcap,发现这个工具挺好的。

LICEcap 是一款屏幕录制工具,支持导出 GIF 动画图片格式,轻量级、使用简单,录制过程中可以随意改变录屏范围

LICEcap 非常轻量级,安装包不到 500KB。运行后会以窗口的方式显示在桌面,拖动选取一个合适的大小范围,点击 Record 选取保存路径就开始录屏了。LICEcap 在录屏过程中可以随时拖动窗口改变录屏范围,Stop 过后自动保存为 GIF 格式。

官方网站链接:LICEcap
本站下载链接:licecap128-install.zip

使用过程比较简单,打开软件之后Record开始录制,stop停止录制。
微信图片_20210119104004.png

截屏效果:
净月.gif


FRP内网穿透


前言

政府就是政府,网络安全要做到第一位,分配的服务器都要在堡垒机之下才能访问,所以得想招给代理出来,也给自己方便不是。
既然要反代理,就选的FRP,开源。。。。(不花钱)

FRP服务器搭建

下载对应版本的frp(包括服务端和客户端):大型同性交友网站

window客户端+服务端Linux客户端+服务端arm客户端+服务端
0.51.3frp_0.51.3_windows_amd64.zipfrp_0.51.3_linux_amd64.tar.gzfrp_0.51.3_linux_arm64.tar.gz
0.38.0frp_0.38.0_windows_amd64.zipfrp_0.38.0_linux_arm64.tar.gz

具体服务端配置文件信息frps.ini:

[common]
bind_port = 7000
#dashboard 用户名
dashboard_user = user1
#dashboard 密码
dashboard_pwd = user1
#dashboard 端口,启动成功后可通过浏览器访问如http://ip:7500
dashboard_port = 7500
token = 8d262f2b-6dba-4a8d-857e-8a53d1d439e2

运行服务端至后台

[root@w7 frp_0.33.0_linux_amd64]# nohup /root/frp/frp_0.33.0_linux_amd64/frps -c frps.ini &
2020/06/09 22:28:59 [I] [service.go:178] frps tcp listen on 0.0.0.0:7000
2020/06/09 22:28:59 [I] [service.go:277] Dashboard listen on 0.0.0.0:7500
2020/06/09 22:28:59 [I] [root.go:209] start frps success

运行之后可访问http://IP:7500
微信截图_20200609223912.png

FRP客户端(linux)

具体的客户端配置文件信息:

[common]
# 配置服务端对外的ip地址
server_addr = xxx.xxx.xxx.xxx
#配置服务端监听的端口
server_port = 7088

#如果服务端配置token,将服务端配置的token复制到此处
token = 8d262f2b-6dba-4a8d-857e-8a53d1d439e2
pool_count = 5

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 7122

[ftp]
type = tcp
local_ip = 127.0.0.1
local_port = 21
remote_port = 7121

运行客户端端至后台

[root@localhost frp_0.33.0_linux_amd64]# nohup /root/frp/frp_0.33.0_linux_amd64/frpc -c frpc.ini &
[1] 26153
[root@localhost frp_0.33.0_linux_amd64]# nohup: 忽略输入并把输出追加到'nohup.out'

[root@localhost frp_0.33.0_linux_amd64]# ls
frpc  frpc_full.ini  frpc.ini  frps  frps_full.ini  frps.ini  LICENSE  nohup.out  systemd
[root@localhost frp_0.33.0_linux_amd64]# cat nohup.out 
2020/06/09 10:55:56 [I] [service.go:282] [0d80fe0bb829cc87] login to server success, get run id [0d80fe0bb829cc87], server udp port [0]
2020/06/09 10:55:56 [I] [proxy_manager.go:144] [0d80fe0bb829cc87] proxy added: [ssh ftp]
2020/06/09 10:55:56 [I] [control.go:179] [0d80fe0bb829cc87] [ssh] start proxy success
2020/06/09 10:55:56 [I] [control.go:179] [0d80fe0bb829cc87] [ftp] start proxy success

linux systemctl方式进程守护

/etc/systemd/system下新建frpc.service文件,内容如下:

[Unit]
Description=Frp client
After=network.target

[Service]
Type=simple
User=root
Restart=on-failure
RestartSec=5s
ExecStart=/usr/local/frp/frpc -c /usr/local/frp/frpc.ini

[Install]
WantedBy=multi-user.target

FRP客户端(window)

具体的客户端配置文件信息:

[common]
# 配置服务端对外的ip地址
server_addr = xxx.xxx.xxx.xxx
#配置服务端监听的端口
server_port = 7088

#如果服务端配置token,将服务端配置的token复制到此处
token = 8d262f2b-6dba-4a8d-857e-8a53d1d439e2
pool_count = 5

[mstsc]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 7133

创建一个文件run.vbs

Set ws = CreateObject("Wscript.Shell") 
   ws.run "cmd /c C:\frp_0.33.0_windows_amd64\frpc.exe -c C:\frp_0.33.0_windows_amd64\frpc.ini",vbhide  (这里注意要改为你的文件位置)

运行以下vbs文件就可以了

这样就大功告成,访问服务端的7122就相当于访问内网被隔离的机器22端口