Linux Learn
文章平均质量分 69
fzzjoy
Code Change World
展开
-
网络诊疗工具
常用的网络诊断工具原创 2022-01-16 16:26:44 · 1666 阅读 · 0 评论 -
vim memo
vim基础操作原创 2021-12-12 23:28:52 · 564 阅读 · 0 评论 -
VNC How To
测试环境:Distributor ID: UbuntuDescription: Ubuntu 16.04.6 LTSRelease: 16.04Codename: xenial安装服务端sudo apt-get install vnc4serversudo apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminalsudo apt-get install xfonts-100原创 2021-10-21 10:36:56 · 90 阅读 · 0 评论 -
core文件自动生成
修改/etc/security/limits.conf如下: 将 #* soft core 0 修改成 * soft core unlimited重启生效,可以用ulimit -a 查看是否成功执行修改/etc/sysctl.conf文件中设置kernel.core_uses_pid变量为1,这样apport就可以在程序目录下生成core.pid格式的文件,避免了同名core文件被覆盖的问题。 sudo sh -c "echo 'kernel.core_uses..原创 2021-09-29 21:34:58 · 353 阅读 · 0 评论 -
Linux查看进程内存空间分布 - pmap
The pmap command reports the memory map of a process or processes.pmap 提供了进程的内存映射,用于显示一个或多个进程的内存状态,报告进程的地址空间和内存状态信息。原创 2021-09-30 23:43:30 · 3960 阅读 · 0 评论 -
Linux自定义USB转串口名称
udevudev 是 Linux 内核的设备管理器,负责管理 /dev 中的设备节点。同时,udev 也处理所有用户空间发生的硬件添加、删除事件,以及某些特定设备所需的固件加载。与传统的顺序加载相比,udev 通过并行加载内核模块提供了潜在的性能优势。异步加载模块的方式也有一个天生的缺点:无法保证每次加载模块的顺序,如果机器具有多个块设备,那么它们的设备节点可能随机变化。udev 规则以管理员身份编写并保存在 /etc/udev/rules.d/ 目录,其文件名必须以 .rules 结尾,各种软件包提供原创 2021-09-28 19:28:32 · 586 阅读 · 0 评论 -
pkg-config
文章目录基本概念使用编译链接解决库依赖问题将依赖模块集成到用户项目中参考基本概念pkg-config 是一个在源代码编译时查询已安装的库的使用接口的计算机工具软件。可以理解为一个支持提供编译链接依赖库的管理工具软件。在编译和链接时,可以提供必要的库文件、头文件支持以及相关的描述信息。元数据存储在 pkg-config 文件里面,文件后缀 .pc ,文件需要存放在 pkg-config 工具能够找到的特定位置(如 /usr/lib/pkgconfig 及 /usr/local/lib/pkgconf原创 2021-09-02 22:41:35 · 395 阅读 · 0 评论 -
GDB使用memo
加载符号表生成符号表文件(.debug)一般来说,为了避免可执行文件或者库文件过大,会采用分离调试信息的编译方式。前提是gcc编译的时候需要带上-g选项,以生成调试信息。通过objcopy实现:objcopy --only-keep-debug test test.debug && objcopy --strip-debug test && objcopy --add-gnu-debuglink=test.debug test && chmod -原创 2021-05-14 11:20:19 · 274 阅读 · 0 评论 -
内核升级和降级
查看已安装的内核$ sudo dpkg --get-selections | grep linux不一样的系统版本升级内核要装的东西对应也不一样,需要根据 --get-selections 安装对应的内核组件, 使用apt-get 即可完成安装对应版本号的内核...原创 2020-01-13 21:43:04 · 2789 阅读 · 0 评论 -
Ubuntu升级GCC编译器
sudo apt-get install -y software-properties-common sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update sudo apt install g++-9Set it up so the symbolic links gcc, g++ point to the n...原创 2019-12-08 16:00:25 · 652 阅读 · 0 评论 -
TOP工具
TOP工具TOP头信息描述TOP进程信息字段描述常用指令参考TOP头信息描述第一行系统运行信息概述top - 21:44:11 up 24 min, 1 user, load average: 0.01, 0.03, 0.0521:44:11 当前时间up 24 min 系统运行时间,格式为时:分1 user 当前登录用户数load average: 0.01, 0.03, 0.05 系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在原创 2021-08-27 23:12:01 · 553 阅读 · 0 评论 -
Ubuntu新增MIME并绑定默认程序
安装deb包需要在/usr/share/applications/位置下有一个desktop的启动文件desktop配置desktop文件的Exec指令需要带上%f的指令,这样子右键菜单项才能识别到。原创 2021-08-18 22:45:54 · 1740 阅读 · 0 评论 -
获取子进程终止状态:wait和waitpid
当一个进程正常或异常终止时,内核就向其父进程发送SIGCHLD信号。因为子进程终止是个异步事件(这可以在父进程运行的任何时候发生),所以这种信号原创 2015-11-25 17:15:00 · 2726 阅读 · 0 评论 -
vim常用指令
i:输入模式ESC:退回命令行模式shift + ; :末行模式wq:保存退出命令行模式指令:yy:复制p:粘贴/:查找G:移到文件尾nyy:复制n行u:撤销操作ctrl+r:恢复撤销操作dd:剪切一行ndd:剪切n行原创 2015-12-19 14:29:01 · 322 阅读 · 0 评论 -
Linux指令_tar命令(压缩解压缩指令)
在linux下常见的压缩技术有:gzip和bzip2,它们仅针对单一文件进行压缩,tar程序则是将多个文件或目录打包成一个大文件,它们对应的文件扩展名如下:其中.Z— compress压缩程序已经很少使用;其中以tar命令使用最为广泛,常用的指令选项如下:简单记忆如下: 压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称原创 2015-11-02 15:19:34 · 1069 阅读 · 0 评论 -
Linux man 命令后面的数字含义及作用
Linux的man很强大,该手册分成很多section,使用man时可以指定不同的section来浏览,各个section意义如下: 1 - commands2 - system calls3 - library calls4 - special files5 - file formats and convertions6 - games for linux7 - ma转载 2017-08-22 23:41:52 · 1601 阅读 · 0 评论 -
Linux 知识点
常见术语POSIX(Portable Operating System Interface):可移植操作系统接口常用指令apt-get update:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。apt-get grade: 升级已安装的所有软件包,升级之后的版本就是本地索引里的,...原创 2019-08-22 17:11:08 · 132 阅读 · 0 评论 -
Linux指令_xargs
xargs是一个管道命令,通过man xargs可以发现,此命令可以对标准输出执行其他命令。例如(找出指定目录下具有特殊权限的文件名,并列出详细属性):原创 2015-11-16 20:02:31 · 567 阅读 · 0 评论 -
Linux指令_文件处理工具sed
sed (Stream editor)本身是一个管道命令,用于过滤、新增、选取和替换文本。一般使用格式如下:sed [-nefri] [动作]参数:-n:使用安静(silent)模式。在一般的sed用法中,所有来自STDIN的数据一般都会被列出到屏幕上。但如果加上 -n 参数后,则只有经过sed特殊处理的那一行(或者动作)才会被列出来;-e:直接在命令行模式上进行sed原创 2015-10-28 21:38:48 · 422 阅读 · 0 评论 -
Linux指令_字段处理工具awk
参开书籍:《鸟哥的私房菜:基础学习篇(第三版)》P363awk 也是一个非常棒的数据处理工具!相较于 sed 常常作用于一整行的处理, awk 则比较倾向于一行当中分成数个『字段』来处理。因此,awk 相当的适合处理小型的数据处理呢!awk 通常运作的模式是这样的:awk '条件类型1 {动作1} 条件类型2{动作类型2} ...' filename示例如下:取出最近原创 2015-10-26 14:48:24 · 375 阅读 · 0 评论 -
关于shell变量的测试与内容替换
参考资料《鸟哥的私房菜——Linux基础学习篇(第三版)》。在《鸟哥的私房菜——Linux基础学习篇(第三版)》第11章中,鸟哥关于变量的测试与内容替换中,鸟哥最后用范例说明了变量替换中'-'、'='、'?'三种特殊符号的用法。看完这些例程,给我最大的感受就是var=${str-newvar}或者var=${str=newvar}或者var=${str?newvar}的变量替换就与C语言中原创 2015-04-13 20:09:15 · 1092 阅读 · 0 评论 -
GDB工具使用教程_基本调试指令
本文基于国嵌的教程文档,总结一下GDB在Linux下的使用。GDB是GNU发布的一款功能强大的程序调试工具。GDB主要完成下面三个方面的功能:1、启动被调试程序。2、让被调试的程序在指定的位置停住。3、当程序被停住时,可以检查程序状态(如变量值)。尽管大多数开发人员熟悉了在windows下使用IDE进行程序调试,殊不知绝大多数的IDE使用的调试工具仍是GDB,不过整合到原创 2015-10-10 20:13:35 · 887 阅读 · 0 评论 -
Linux_父子进程与fork
进程标识每个进程都有一个非负整数表示的唯一进程ID,如交换进程(即调度进程)ID为0,init进程ID为1,页守护进程ID为2;函数fork原型如下:fork函数被调用一次,但返回两次,两次返回的区别就是子进程返回的是0,父进程返回的新子进程的ID;子进程是父进程的副本,获得了父进程数据空间、堆和栈的副本;父子进程并不共享这些存储空间,共享正文段(即代码段);因此子进程原创 2015-11-08 16:59:06 · 3701 阅读 · 0 评论 -
Linux环境下C程序启动、终止分析
当内核执行C程序时(使用一个exec函数,即创建),在调用main前先调用一个特殊的启动例程。可执行程序文件将此启动例程指定为程序的起始地址——这是由C编译器调用设置。启动例程从内核取得命令行参数和环境变量值,然后为按上述方式调用main函数做好安排。当终止一个进程时,有8种方式使进程终止,其中5种为正常终止,它们是:从main函数返回;调用exit;调用_exit或_Exit原创 2015-11-08 19:56:59 · 1824 阅读 · 0 评论 -
Linux指令_ps与kill命令
Linux中的ps是Process status的缩写。用来查看当前运行哪些进程,ps命令列出的是当前那些进程的快照,就是执行ps命令那个时刻的进行,如果要动态的显示进程的信息,需使用top命令。ps命令支持三种使用的语法格式UNIX 风格,选项可以组合在一起,并且选项前必须有“-”连字符BSD 风格,选项可以组合在一起,但是选项前不能有“-”连字符GNU 风格的长原创 2015-11-05 15:32:15 · 672 阅读 · 0 评论 -
Shell Script_简要总结
Shell Script类似windows下的.bat(批处理文件),简单的可以理解为一大串指令的集合,从而实现自动化的系统管理。示例(脚本基本架构):#!/bin/bashPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/gamesexport PATH原创 2015-10-24 16:42:37 · 363 阅读 · 0 评论 -
Linux学习——Makefile工程管理
使用Gnu make工具来管理程序是每个Linux工程师必须掌握的技能。Make能够是整个程序的编译、链接只需要一个命令(make)就可以完成。Make的工作主要依赖一个称为Makefile的文件。文件描述了整个程序的编译,链接等规则。包括:工程中哪些源文件需要编译以及如何编译,如何最后产生我们想要的可执行文件。makefile主要由规则和变量两部分构成。规则:一般规则如下:tar原创 2015-05-07 14:11:53 · 564 阅读 · 0 评论 -
父子进程终止顺序与僵死进程
在Linux_父子进程与fork一文中,我们知道子进程是在父进程调用fork之后生成的。那么关于父子进程终止先后顺序又会有什么影响呢?1、父进程在子进程之前终止对于父进程已经终止的所有进程,它们的父进程都改变为init进程。我们称这些进程由init进程收养。其操作过程大致是:在一个进程终止时,内核逐个检查所有活动的进程,以判断它是否是是要终止进程的子进程,如果是,则该进程父进程ID就更改为原创 2015-11-09 21:23:26 · 3212 阅读 · 1 评论 -
Unix环境高级编程学习笔记1—a.out的实现
实验环境万恶相信看过原创 2014-10-27 00:27:02 · 643 阅读 · 0 评论