linux
文章平均质量分 83
Linux操作系统工作常用相关知识
夏之七
立足小世界,日积跬步;沟通大世界,万川映月。
展开
-
服务绑定端口失败问题排查
从上图结果看到,1998 端口被进程ID为 66252 的进程在占用,并且建立的连接状态处于 ESTABLISHED。刚开始调试的时候都挺顺利,但是在一顿任意捣鼓各种非正常关闭程序之后,再次重新启动程序时,程序异常退出。从上图结果看到,这种情况排除,不存在开启多个 DataImport 进程的问题;从上图结果看到,并未找到 1998 端口被占用的信息;1.2 使用 netstat -tulpn 命令查看端口使用情况。1.3 使用 lsof 命令查看端口使用情况。,表示地址已经被使用,监听绑定失败。原创 2024-01-30 15:30:50 · 587 阅读 · 0 评论 -
tcpdump抓包技巧
它主要针对的是 HTTP 协议和 HTTPS 协议, 可以确认我们的网络数据包的一个状态, 通过分析请求和响应报文里面的内容, 分析出来请求数据和响应数据是否正确, 定位问题是前端问题还是后端问题。它不仅可以分析http/https的数据,它还可以分析网络2层以上都可以看到,比如tcp的三次握手等,但是如果你只是分析http协议,可以不用这么专业的工具,以免增加筛选请求成本和学习成本。-s 0则是设置为最大上限,即是262144字节,-s 0可防止截断包,抓到完整的数据包,但是相对应的,会增加处理时间。原创 2023-12-20 17:47:31 · 3169 阅读 · 0 评论 -
借助实例轻松掌握 Makefile --开花结果
通过一个相对较复杂的项目来实践加深 Makefile 的应用,我们暂且将该项目命名为 huge(大块头);原创 2022-09-29 14:47:14 · 468 阅读 · 0 评论 -
借助实例轻松掌握 Makefile -- 茁壮成长
通过一个复杂的项目来实践更多关于 Makefile 的知识点,我们暂且将该项目命名为 playground(游乐场);该项目对 Makefile 的基本需求有:将所有的目标文件放入源程序所在目录的 objs 子目录中;将所有最终生成的可执行程序放入源程序所在目录的 exes 子目录中;将引入用户头文件来模拟复杂项目的情形。原创 2022-09-23 10:15:22 · 452 阅读 · 0 评论 -
借助实例轻松掌握 Makefile -- 萌芽破土
通过几十个简单实用的例子,循循渐进,轻松理解、掌握 Makefile原创 2022-09-21 19:12:40 · 605 阅读 · 0 评论 -
关于gdb调试: 你的问题可能会在这里找到答案
又叫数据断点,这样的断点其实就是前面课程中介绍的用 watch 命令添加的部分断点(watch 添加的断点有部分是通过软中断实现的,不属于硬件断点)。命令是一个强大的命令,它可以用来监视一个变量或者一段内存,当这个变量或者该内存处的值发生变化时,GDB 就会中断下来。我们需要查看地址,因为目的是要看某内存地址上的数据是怎样变化的。多个线程都调用同一个函数,当我们进入函数后进行逐行调试时,原本期望执行完第10行后往下11行执行,而此时系统有可能会切换到另外一个线程,而跳转到函数的第5行源码,造成混淆。原创 2022-09-14 20:30:57 · 2717 阅读 · 0 评论 -
简单易懂!手把手:从安装部署VMWare&Ubuntu,到编写、编译、运行、调试程序
一、安装VMWareVMWare下载网址:https://www.vmware.com/cn/products/workstation-pro.html本文VMware采用的版本是10.0.7 bulid-2844087序列号:1Z0G9-67285-FZG78-ZL3Q2-234JG虚拟机的安装比较简单,按照安装向导依次点击下一步安装就可以了,这里不再做详细介绍。二、安装UbuntuUbuntu镜像下载网址:http://www.ubuntu.com1)打开VMWare,然后点击“..原创 2021-09-30 17:21:56 · 3126 阅读 · 0 评论 -
linux内核源码分析笔记
一、内核源码目录结构1、Linux 内核源代码包括三个主要部分1)内核核心代码:包括linux内核整体架构分析笔记描述的各子系统和子模块,以及其他支撑子系统,如:电源管理、linux初始化等。2)非核心代码:例如库文件(因为 Linux 内核是一个自包含的内核,即内核不依赖其它的任何软件,自己就可以编译通过)、固件集合、 KVM(虚拟机技术)等。3)编译脚本、配置文件、帮助文档、版权说明等辅助性文件。2、内核源代码顶层目录结构:include/ :内核头文件,需要提供给外部模块(例..原创 2021-04-26 17:33:19 · 5604 阅读 · 2 评论 -
linux内核整体架构分析笔记
一、整体架构与子系统划分根据内核的核心功能, Linux 内核划分为 5 个子系统:Process Scheduler,也称作进程管理、进程调度:负责管理 CPU 资源,以便让各个进程可以以尽量公平的方式访问 CPU。Memory Manager,内存管理:负责管理 Memory(内存)资源,以便让各个进程可以安全地共享机器的内存资源。另外,内存管理会提供虚拟内存的机制,该机制可以让进程使用多于系统可用 Memory 的内存,不用的内存会通过文件系统保存在外部非易失存储器中,需要使用的时候,再..原创 2021-04-26 15:00:11 · 404 阅读 · 2 评论 -
linux内核编译
1、编译工具linux内核编译需要用到make、gcc编译工具。如果系统还没安装这些工具,可以通过以下命令安装:$ sudo apt-get install make$ sudo apt-get install build-essential2、源码下载在 内核源码下载上面,下载对应的 Linux 内核代码。3、编译步骤1) 解压$ xz –d linux-4.4.16.tar.xz$ tar xvf linux-4.4.16.tar2) 配置$ cp /bo..原创 2021-04-26 14:33:04 · 723 阅读 · 0 评论 -
ubuntu16.04下QtCreator启动无响应问题解决
一、问题在ubuntu打开QT工程,间歇性出现QtCreator无法启动的情况。二、解决方法解决方法:删除系统配置目录下的QtProject文件夹操作流程:使用“find / -name QtProject ” 指令在系统里查找QtProject文件夹root@jq-virtual-machine:/# find / -name QtProject进入到QtProject文件夹所在目录 (根据不同系统,这个目录位置可能不同),删除该文件夹root@jq-virtual-machi原创 2020-11-27 10:20:02 · 2331 阅读 · 0 评论 -
Ubuntu16.04编译程序报错“undefined reference to `pthread_create‘”解决方法
问题描述在Ubuntu16.04使用gcc编译程序失败,主体错误信息为“undefined reference to `pthread_create”:解决方法(1)检查源码,在调用pthread_create函数,是否引用了头文件 #include<pthread.h>,若没有,则加上。(2)由于pthread不是Linux系统标准库,因此在编译的时候需要把 lpthread 加上。gcc module.c -o module -lpthread...原创 2020-08-05 16:14:20 · 1224 阅读 · 0 评论 -
VMWare开启多个Linux虚拟机服务器方法
需求描述有时候我们需要在多个Linux服务器之间进行软件的调试和测试,但由于资源有限,仅有一台电脑,这个时候我们应该肿么办?最简单的方法,打开VMware克隆多个虚拟机解决。操作流程1、安装VMware2、安装Ubuntu,这里我们选择Ubuntu16.043、克隆Ubuntu16.04(1)右键已安装的Ubuntu16.04,“管理”–>“克隆”需要注意的是,在克隆时虚拟机要先关闭,否则会弹出如下对话框,无法克隆。(2)根据克隆导向指引完成克隆(3)虚拟机启动完成原创 2020-07-31 13:38:09 · 5312 阅读 · 0 评论 -
Ubuntu16.04可以ping通Windows,但Windows无法ping通Ubuntu的解决方案
1、防火墙首先检查Ubuntu防火墙是否开启,如果开启,请关闭。查看防火墙开启与否指令: service iptables status关闭防火墙指令:service iptables stop2、网络连接方式网络连接方式选择NAT模式。3、网段设置Ubuntu和Windows需要在同一网段才能互ping。(1)使用ifconfig查看Ubuntu IP地址网段(2)设置Windows虚拟网卡网段与Ubuntu为同一网段修改完保存后,Ubuntu和Windows就可以相互ping原创 2020-07-29 16:41:55 · 5111 阅读 · 2 评论 -
Ubuntu16.04 vi编辑器保存文件出现Can‘t open file for writing报错的解决方法
问题描述使用vi编辑器设置固定ip地址的时候,在保存退出文件时,出现Can’t open file or writing报错,文件无法保存的情况。问题分析有两种可能原因会导致以上问题:一个原因可能是文件已经在其他窗口开启、使用;另一个原因可能是文件编辑权限不足。解决方案首先检查是否有其他开启占用文件,如果有先关闭。如果还不行,在打开vi编辑器的时候使用sudo指令打开,再编辑、保存。...原创 2020-07-29 15:08:21 · 7880 阅读 · 1 评论 -
Ubuntu16.04 vi编辑文件 按上下左右键或滑动鼠标出现ABCD字符乱码解决方法
问题描述在Ubuntu16.04中使用vi编辑器编辑文件,按 i 切换到编辑模式后,按下键盘的上下左右键,文本编辑光标并未按照预期移动到指定位置,而是出在文本中增加ABCD字符,滑动鼠标也会出现这种问题。解决方法打开终端,执行指令:cp /etc/vim/vimrc ~/.vimrc然后,重启终端,再使用vi编辑器打开文件即可。...原创 2020-07-29 14:37:47 · 1618 阅读 · 2 评论