Linux OS
文章平均质量分 68
1-programmer
这个作者很懒,什么都没留下…
展开
-
ZooKeeper TCP连接被防火墙阻断排查过程
结合TCP/IP协议应用+Wireshark使用,查找问题的原因。原创 2022-11-21 15:07:16 · 1383 阅读 · 0 评论 -
通过ssh解决systemd下无法kdump到本地磁盘
通过ssh解决无法kdump到本地磁盘上原创 2022-11-16 08:58:17 · 346 阅读 · 0 评论 -
StratoVirt中MicroVM启动过程
StratoVirt项目中的MicroVM的启动过程分析,理解它为什么可以实现快速启动。原创 2022-06-07 08:57:58 · 1104 阅读 · 1 评论 -
why-ovs翻译
为什么要有OVS(Open vSwitch)。翻译 2022-06-02 15:42:00 · 159 阅读 · 0 评论 -
bash readarray探讨
§ 0x01 起源工作中有如下需求,要去解析一个文件的内容,但文件是json格式的,我不想使用jq。通过grep过滤出符合要求的行,然后在for循环中处理它们。然后发现,这样实现不行。lines=$(grep xxxx /path/to/file.json)for line in ${lines}; do echo ${line}donegrep输出的内容变成一行了。对比运行环境和ubuntu中,发现lines的内容不同。在运行环境中是一行(换行符消失了),在ubuntu是多行。换了sed之原创 2022-04-20 16:25:34 · 1487 阅读 · 0 评论 -
TN3399开发板折腾记录
0x01 背景需要一个能支持GICv3的设备。春节时,在安卓旧手机上折腾了一圈,买了2个旧手机(红米2、1加3T),都不行。红米2,可以通过开源的hyp固件[https://github.com/msm8916-mainline/qhypstub/issues],实现KVM。但是对应的芯片是MSM8916的,只支持GICv2。1加3T,芯片MSM8996是支持GICv3的。但是对应的hyp固件相关信息没有开源,所以无法支持虚拟机。板子是在闲鱼上买的。300块,包邮。到手后发现内核版本是4.7原创 2022-04-11 21:01:32 · 2531 阅读 · 0 评论 -
好玩的shell
§ 0x01 为什么写这个Shell是命令行中和Linux交互的主要界面,在日常开发中,和它打的交道也最多。学习shell的过程中,发现了一些有意思的地方。想记录一下,分享给也正在学习shell的同学。这里指一般Linux发行版上自带的Bash Shell。§ 0x02 alias——为什么rm时一定要提示下我?# rm 1rm: remove regular empty file `1'? 许多人不明白。为什么有的环境中rm不提示,有的环境中一下有提示。有的人为了省事,直接加了-f的参数。其实原创 2022-04-02 16:33:00 · 1486 阅读 · 0 评论 -
Go run permission denied的问题分析与解决方案
0x01 问题一次同事反馈在环境中,执行go run xx.go时出现如下异常提示。fork/exec /tmp/go-build104992250/b001/exe/h: permission denied有点兴趣,所以就动手查了下。查的过程比较简单,但思路有点意思。希望会有所帮助启发。0x02 分析出现这个问题,原因是go在/tmp目录下生成的可执行文件没有执行权限,当Go去执行时就会报错。为什么会没有执行权限呢?请教了同事之后,确认了开发环境中的/tmp的挂载选项中如下所示。tmpf原创 2022-03-30 21:51:06 · 3271 阅读 · 1 评论 -
Linux 4.xx内核+Go 1.15出core排查
Go runtime出core在使用gozero框架的开发数据库管理服务的过程中,经常出core。通过dlv查看core的位置,各个地方都有,典型的有以下两种:runtime在执行init函数时,某个空串对应的地址上其长度不对,应该是0,却是一个负值。runtime中初始化timer时,timer的某个应该为正整数的属性,变成了负值。明确是踩了内存,但一时间找不到思路。0x01 怀疑是CGO由于CGO和Go本身使用的内存模型不同,CGO比较容易出现踩内存的问题。加上出core的程序,为了使用原创 2022-03-28 11:55:19 · 841 阅读 · 0 评论 -
linux下分区内部mv和跨分区mv的区别
## § 0x01 问题列表1. 为什么不同,为什么一个快一个慢?2. 为什么跨区域mv失败时,不影响原来的文件?这样的释疑过程也是自己对文件系统(filesystem)理解的加深过程。## § 0x02 原理+释疑文件系统中文件是如何保存的?1. 文件在文件系统中保存时(以linux下的ext2文件系统为例),是通过inode+block组织的。inode对应文件的元数据,block对应真实的数据;2. inode对block的管理不能跨分区,因.原创 2021-05-04 22:35:21 · 1156 阅读 · 0 评论 -
linux shell 技巧
介绍一些常用的shell的技巧。cd -用来返回上一个目录,注意是你切换到当前目录之前的那个目录。比如现在的目录是:~,当你执行 cd /usr后,再执行 cd - 就返回到目录 ~ 了。cd ~返回当前用户的根目录。也就是/home/xxx。xxx就是当前用户的名称。tab键补全当你想执行一个比较长的命令时,用tab键可以实现自动补全。比如,想执行python,当你在shell里打出py时,按下原创 2016-12-23 22:16:16 · 287 阅读 · 0 评论 -
启动关闭一个网络接口时的连带效应
翻译自linux-ip.net关闭一个网络接口时的连带效应这个接口上的所有的IP地址进入非活动状态,并且被移除掉。与这个接口上的所有的IP地址相关的已经建立的连接会中断掉。所有以这个接口为中继的路由都会从路由表中移除掉。链路层网卡进入停止状态。 下一步,激活这个接口时,就需要新的网络配置信息。在配置后检查下接口以验证配置是一个好习惯。例 1.7. 用ifconfig启动以太网卡[roo翻译 2017-02-21 23:14:19 · 472 阅读 · 0 评论 -
LVS配置命令理解1
LVS配置命令理解1上周末对照着Ubuntu LVS配置 的教程初步熟悉了ubuntu下LVS的配置过程中。这对于想掌握其原理的人来说是不够的。所以想着把自己的理解写出来,明白其所以然。 配置的命令有以下几条:ifconfig来为当前的网卡配置虚拟IP。其中同样通过在CSDN上搜索,可以知道,通过在eth0(网卡接口名称)后加“:n”,其中n为N+(正整数),就可以为网卡配置多个虚拟IP地址。这样原创 2017-01-23 22:55:08 · 573 阅读 · 0 评论 -
LVS配置命令理解2
LVS配置命令理解2使用ipvsadm安装LVS服务#ipvsadm -A -t 192.168.31.173:http -s rr其中ipvsadm的安装过程就略过。ipvsadm是LVS服务的配置接口工具。 -A:添加虚拟服务器 -t:表示TCP协议 192.168.31.108:http: 与-t一起组成虚拟服务器,IP地址、端口号、协议组成的三元组。 -s:表示调试器算法选项 rr原创 2017-02-06 23:23:05 · 1730 阅读 · 2 评论 -
LFS编译时两个问题
这是以前在百度空间里写的,后来空间关闭了,迁移到CSDN了。虚拟机上LFS安装:Root-NFS: No NFS server available, giving up… 精确定位最近一直在学习linux操作系统。在虚拟机上面安装了LFS6.3,想着尽可能用开源软件而不去使用商业软件,所以选择了virtualBox,没想到之前在别的虚拟机上运行没问题的内核,现在启动过程中出现了如题据说的错误,按下键原创 2016-12-23 22:20:05 · 738 阅读 · 0 评论