Linux 下查看网络流量的命令有很多,之前 也介绍过使用 nethogs 来按照进程查看网络流量。但其实 Linux 下有很多命令同样可以达到效果。
总体带宽使用
bmon
使用 apt install bmon 安装,使用非常简单直接运行即可。
bmon 的介绍说是一个网络监控和调试工具,能够提供一个可视化的界面。
其他还有 nload, slrum, speedometer, netload
套接字连接带宽使用
常用的有 iftop,iptraf
iftop 使用 pcap 库来捕获进出网络适配器的数据包,然后汇报总数据包大小和数量。i
Read more ...
本篇文章主要介绍 Linux 下几款常用的启动器,启动器顾名思义就是用来快速开启应用程序的程序。启动器最常用的功能就是用来快速启动另外一个程序,但是一款好的启动器应该提供一些常用的功能,比如说base64 编解码,比如当前Unix时间戳,再比如搜索Google,计算器,打开文件,单位转化,甚至是执行系统命令等等。
本文主要要介绍的是这三款: GNOME Do,cerebroApp,albertlauncher。
GNOME Do
GNOME Do 是最初由David Siegel开发的一个GNU/Linux下的流行的自由应用程序启动器1,GNOME
Read more ...
uniq 命令从标准输入读取过滤邻近的相同的行,然后写回标准输出,在此过程中 uniq 会将重复的行 merge 合并到第一个结果中,所以 uniq 可以用来排除文件中重复的行。因此 uniq 经常和 sort 合用,先排序,然后使用 uniq 来过滤重复行。
查看 man uniq 得知这个命令是用来显示,或者隐藏重复行的命令,一般情况下使用管道命令组合其他 cat, grep, awk, sort 等等使用。可用来过滤重复行,或者找到文本中重复的行。
基本使用
命令格式:
uniq [OPTION]... [INPUT [OUTPUT]]
Read more ...
如果想要科学的管理 Linux 的开机启动项,那么了解 Linux 开机启动流程是非常有必要的。链接的文章将 Linux 开机启动流程讲述的非常通俗易懂,这里就不再详述。简单地归纳:
加载内核 ,读入 /boot 目录下内核文件
内核加载完成后,运行第一个程序 /sbin/init(PID 为 1),用来初始化系统环境
依据运行级别启动守护进程(daemon 或者称为服务)
加载开机启动程序
用户登录
进入 login shell,依据不同的登录方式(命令行登录,ssh 登录,图形界面登录),系统加载不同的 shell 配置,
Read more ...
ed 是一个面向行的文本编辑器。ed 命令还有一个严格的 red 命令,red 命令只能编辑当前目录中的文件,并且不能够执行shell命令。
当使用 ed 命令明确指定一个文件时,文件的一份拷贝被读入编辑器的缓存,所有的编辑都是保存在缓存中,而不是直接在文件中修改。如果退出 ed 却没有显示的使用 w 命令来保存修改的话,所有的修改内容都会丢失。
编辑的内容可以通过两种不同的方式:command 和 input 两种模式。使用第一种命令模式时,ed 命令通过从标准输入读取命令并将修改执行在编辑器缓存中。一个典型的命令
,s/old/new/g
Read more ...
虽然 Linux 下有很多方式可以重命名文件,比如 mv filename newfilename,设置可以使用 cat 命令来将一个文件输出重定向到文件 cat file > newfile,或者可以拷贝的时候重命名 cp file newfile 。
但是其实 Linux 下有一个命令 rename 顾名思义,就是用来重命名文件的,并且能够按照正则批量重命名文件。他的基本使用方式就是
rename [options] "s/oldname/newname/" file
这个命令可以分开几部分来讲,首先对于整体命令先不看选项(option
Read more ...
MyBatis generator 自动生成的 mapper 文件中有两个 insert 方法,insert 和 insertSelective,这两个方法都可以插入一条数据
对于 insert:
int insert(T record);
对于 insertSelective
int insertSelective(T record);
insertSelective 对应的 SQL 语句加入了 NULL 检验,只会插入数据不为 null 的字段,而 insert 会插入所有字段,会插入 null 数据。
也就意味着如果定义了表 def
Read more ...
v2ray 是一个模块化的代理工具,支持 VMess,Socks,HTTP,Shadowsocks 等等协议,并且附带很多高级功能,HTTP 伪装, TLS 等等。
安装 install
root 账户下执行
bash <(curl -L -s https://install.direct/go.sh)
该脚本会自动安装 unzip 和 daemon。脚本执行成功后,进行如下操作:
编辑文件 vim /etc/v2ray/config.json 来配置
运行 service v2ray start 来启动 v2ray
使用
Read more ...
ownCloud 是一个文件分享服务,可以将个人的文件内容,比如文本,图片,音频等等存储到一个中心服务器上,类似于 Dropbox。但是与 Dropbox 不同之处在于 ownCloud 是开源的,任何人都可以检视其源代码并且可以为之贡献代码,这意味着他将文件的控制权交给了个人,敏感的文件任何人都无法查看,但于此同时他也将文件的安全交给了个人管理。
ownCloud 安装
[[OwnCloud]] 安装之前确保有 sudo 权限,并且 ownCloud 需要
web 服务器,比如 nginx 或者 Apache
数据库 MySQL
P
Read more ...
在使用 Celery 的时候发现有的时候 Celery 会将同一个任务执行两遍,我遇到的情况是相同的任务在不同的 worker 中被分别执行,并且时间只相差几毫秒。这问题我一直以为是自己哪里处理的逻辑有问题,后来发现其他人 也有类似的问题,然后基本上出问题的都是使用 Redis 作为 Broker 的,而我这边一方面不想将 Redis 替换掉,就只能在 task 执行的时候加分布式锁了。
不过在 Celery 的 issue 中搜索了一下,有人使用 Redis 实现了分布式锁,然后也有人使用了 Celery Once。 大致看了一下 Celery On
Read more ...