linux tools
文章平均质量分 76
奔跑的码仔
心有多大,舞台就有多大
展开
-
Linux i2c-dev简析
上篇文章简要分析了如何编写一个Linux下的I2C设备驱动程序。编写驱动程序毕竟有一定的门槛,需要熟悉内核各种相关的开发规范,有时为了快速的测试一款I2C设备的功能,临时编写驱动程序可能会使得工期比较紧张;并且有时I2C设备十分的简单,为此编写一个单独的驱动程序未免有点“兴师动众”。i2c-dev框架很好的解决了上面的问题,使用该框架可以使我们在用户空间上编写I2C通信程序。i2c-dev在内核中封装了关于I2C通信所需要的所有通信细节,通过ioctl接口将这些功能暴露给用户空间程序调用。用户应用程序使用原创 2020-08-04 15:33:42 · 6583 阅读 · 0 评论 -
shell脚本如何优雅的打印帮助信息
一个好的帮助信息对于快速、高效的使用shell脚本是非常有好处的。我们一般通过echo来逐行打印帮助信息,这种方式一个明显的缺点就是需要手动去进行排版,而排版的过程有时十分的繁琐。有没有想过,如果可以像写一般的注释一样来完成帮助信息的编写,那该多好啊!本文通过sed这个工具来实现,像写注释一样写shell的帮助信息。shell中一般#开头的行为注释信息,所以利用这个特性,我们可以把帮助信息设计成如下的样式:#!/usr/bin/env bash ###### my-script — does on原创 2020-07-17 15:32:08 · 3928 阅读 · 2 评论 -
嵌入式Linux 硬件时间-系统时间-时区设置
Linux系统时间分为两种:系统时间和硬件时间。系统时间为Linux内核时间,硬件时间一般为BOIS中的RTC时间。Linux内核在启动时,会尝试读取BIOS中的RTC时间,并以此为基准设置系统时间。内核启动之后,系统时间和硬件即为两个独立的时间,各自运行。嵌入式Linux系统开发时,同样需要提供硬件来为系统提供时间基准,这个硬件一般就是RTC芯片,比如,rx8010。Linux关于时间的配置包括:系统时间设置、硬件时间设置、时区设置。时区配置tzselect命令用于设置系统的当前时区。在桌面系统上,原创 2020-07-07 10:31:46 · 2778 阅读 · 0 评论 -
那些年,用过的Linux网络工具
Linux作为一款强大的操作系统,凭借其优异的的网络服务功能,被广泛使用到云服务中心、数据中心、嵌入式边缘物联代理等等,需要可靠的网络服务支持的场景。具体到生成环境,免不了使用工具去管理和控制网络,本文就来带领大家细数一下,Linux下都有哪些提供网络管理的工具。ifconfig相信大家最为熟悉的就是ifconfig,作为网络接口的配置工具,经常用用来查看、配置网口的基本信息。查看所有网口信息 ifconfig -a eth0 Link encap:Ethernet HWadd原创 2020-07-04 17:00:17 · 1012 阅读 · 0 评论 -
windows7&&Ubuntu 16.04 系统引导问题修复
文章目录前言解决方案适用场景分析过程windows7启动ubuntu 16.04启动参考文章前言本文用来记录最近关于如何修复Ubuntu16.04和windows7双系统无法正常进入系统的问题。首先,回顾一下问题现场。某天早上,正常开机选择启动windows7系统,但提示如下信息:相信,第一次遇到这种问题的人,第一反应肯定一脸懵逼,尝试重启是否可以解决问题。但经过几次重启之后,发现问...原创 2019-10-31 11:32:18 · 1177 阅读 · 2 评论 -
Linux ftp服务器和客户端解析
文章目录ftp术语是什么工作方式用户授权传输模式ftp服务器ftpdvsftpd安装文件结构运行方式vsftpd配置文件chroot账号登录限制欢迎信息虚拟路径ftp客户端嵌入式Linux开发过程中需要经常涉及到文件的拷贝,那么使用简单、快捷的应该是ftp服务。ftp服务器一般分为两种:vsftpd和ftpd,下面逐一讲解一下。ftp术语是什么FTP(File Transfer Proto...原创 2019-10-14 11:30:57 · 5003 阅读 · 1 评论 -
GNU libtool使用简介
1.简介 以前,如果你是一名源代码包开发者,你想要利用共享库带来的优势,你需要为每一种平台编写特定的代码以使你的代码可以运行。同时你可能需要设计一个配置文件接口,所以包的安装者可以选择哪些库需要安装。 GNU Libtool 简化上述工作,其将平台相关的特性和用户接口封装到了一个脚本文件中。GNU Libtool设计的目的为:每一个编译环境的本地功能特性都是通过一个统一的接口管理,原创 2014-04-10 21:47:18 · 4398 阅读 · 0 评论 -
PF_RING浅析
PF_RING架构PF_RING的主要框架包括如下几部分:内核数据包加速处理模块负责提供拷贝底层的数据包到PF_RING环中用户空间PF_RINGSDK负责透明的为用户空间应用程序提供PF_RING技术支持特殊定制的PF_RING相关的网卡驱动网卡驱动不通过linux内核任何的数据结构一大到进一步加强数据包的抓取效率的目的。PF_RING可以与任何NIC驱动程序原创 2014-05-19 19:47:42 · 7745 阅读 · 0 评论 -
嵌入式linux inittab解读
文章转载自:http://bbs.chinaunix.net/thread-3637244-1-1.htmlBusyBox会检查/etc/inittab文件是否存在, 如果此文件不存在, BusyBox会使用缺省的inittab的配置。它主要会为系统重引导,系统挂起以及init重启动设置缺省的动作。此外, 它还会为头四个虚拟控制台(/dev/tty1到/dev/tty4)设置启动shell转载 2015-01-22 14:02:42 · 1016 阅读 · 0 评论 -
pjlib简介
本文主要介绍pjlib的基本特性1.PJLIB是什么? pjlib是用于构建可扩展的应用程序,基于C开发的开源的,较小footprint的架构库.由于他具有较小的footprintf,其可以应用到嵌入式应用程序中,同时基于pjlib也可以构建高性能的协议栈.2.下载 PJLIB以及所有的文档都可以在http://www.pjsip.org上获得.3.PJL翻译 2015-02-11 14:53:06 · 2017 阅读 · 5 评论 -
Ubuntu文件系统损坏修复
前两天在使用Ubuntu14.04系统时,不知道何种原因桌面系统没有任何反应(ps:可能是开机运行的时间比较长吧),所以就对其进行了强制关机操作,可是悲剧的事情发生了,系统无法启动了,并且进入initramfs系统,如下图所示:本想着,一般出现这种问题应该就是文件系统存在不一致的问题,使用fsckfsck工具检测一下应该就没有问题了,可是输入fsck -y 提示,不存在该命令,这下悲剧了,没办法修改原创 2017-11-27 15:43:47 · 20667 阅读 · 0 评论 -
VMware+Ubuntu18.04 磁盘扩容
今天,安装了一个比较打的软件包,发现VMware下的Ubuntu18.04磁盘空间剩余不足,上网查阅资料发现了一种比较简单快捷的磁盘扩容方式,记录一下。VMware扩展磁盘空间首先,需要将虚拟机关机。进入到虚拟机的设置界面,如下图:如图,虚拟机的磁盘容量最大为:40G。进入磁盘扩展界面,如下,修改扩展后的磁盘容量为:41G,保存。Gparted合并磁盘空间U...原创 2019-01-25 09:28:31 · 6519 阅读 · 22 评论 -
Linux内存工具解析之RSS/VSS/USS/PSS区别于联系
对于Linux系统程序开发人员,经常需要和进程所使用的内存情况打交道,比如,分析程序的内存泄漏问题。这时候我们可能使用ps、top、procrank、dumpsys(后两个命令为Android系统)来跟踪、调试进程内存的使用情况。上述几个工具进程涉及到的几个比较的重要的概念:VSS、RSS、PSS、USS,对于这几个概念,大家总是存在一种似曾相识,却又不甚了解的感觉,这对于真正的把握进程内存使用情...原创 2019-04-22 14:24:11 · 8986 阅读 · 0 评论 -
A Linux Environment Zero Overhead
本文翻译自Tilera公司关于ZOL机制的白皮书报告,原文为《Tilera_ZOL_White_Paper_0》,原文可以到这里下载http://download.csdn.net/detail/linux_embedded/7120265。如果翻译不当之处请多多指正。转载请注明出处!A Linux Environment ZeroOverhead软件开发人员期望在他们翻译 2014-03-30 15:09:43 · 2605 阅读 · 0 评论 -
基于vi构建强大的IDE
转载自酷壳www.coolshell.cn 陈浩相信大家看过《简明Vim教程》也玩了《Vim大冒险》的游戏了,相信大家对Vim都有一个好的入门了。我在这里把我日常用Vim编程的一些技巧列出来给大家看看,希望对大家有用,另外,也是一个抛砖引玉的过程,也希望大家把你们的技巧跟贴一下,我会更新到这篇文章中。另外,这篇文章里的这些技巧全都是vim原生态的,不需要你安装什么插件。我的Vim的版本是7.2转载 2014-03-27 21:51:59 · 1139 阅读 · 0 评论 -
Git clone Error
在学习git的时候,发现不能使用git clone从github.com下载,报了个ssl错误。Cloning into cancan...error: SSL certificate problem, verify that the CA cert is OK. Details:error:14090086:SSL routines:SSL3_GET_SERVER_CERTI原创 2013-03-02 20:40:36 · 866 阅读 · 0 评论 -
GDB 多线程调试
gdb 多线程调试http://hi.baidu.com/hcq11/blog/item/9f5bfc6e696209d680cb4a25.htmlhttp://hi.baidu.com/litto/blog/item/759389dd198111375882dd1e.htmlhttp://blogold.chinaunix.net/u3/94700/showart_2389432原创 2013-03-29 22:27:24 · 1144 阅读 · 0 评论 -
linux AWK 简明
有一些网友看了前两天的《Linux下应该知道的技巧》希望我能教教他们用awk和sed,所以,出现了这篇文章。我估计这些80后的年轻朋友可能对awk/sed这类上古神器有点陌生了,所以需要我这个老家伙来炒炒冷饭。况且,AWK是贝尔实验室1977年搞出来的文本出现神器,今年是蛇年,是AWK的本命年,而且年纪和我相仿,所以非常有必要为他写篇文章。之所以叫AWK是因为其取了三位创始人 Alfred A转载 2013-04-05 21:39:11 · 918 阅读 · 0 评论 -
VIM 简明攻略
vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》,我觉得这是给新手最好的VIM的升级教程了,没有列举所有的命令,只是列举了那些最有用的命令。非常不错。——————————正文开始——————————你想以最快的速度学习人类史上最好转载 2013-04-06 18:42:18 · 892 阅读 · 0 评论 -
Vim 插件自动化管理工具
喜欢使用vim的程序员,可能经常会遇到这样的情况就是:当你重新安装Linux操作系统后,需要重新将自己喜欢的Vim插件重新安装一遍;有没有想过存在这样一种工具那就是能够自动化的管理你所需要的vim插件,Vundle实现了你的愿望。通过Vundle你可以方便的管理vim的插件,只要你的系统能链接互联网你就可以一键配置你的Vim环境所需要的插件,对,一键安装就是这么简单,下面介绍一下Vundle的安装原创 2013-03-02 21:26:09 · 1352 阅读 · 0 评论 -
linux 修改命令提示符&ubuntu目录颜色个性化
1.linux 命令提示符个性化在 ANSI 兼容终端(例如 xterm、rxvt、konsole 等)里, 可以用彩色显示文本而不仅仅是黑白。 本文示范了如何使用粗体和彩色的文字。 相信每一位Linux使用者都要面对 Bash。 虽然第一眼看上去非常枯燥,但是又很多方法能够让你的 shell 足够的个性化。 shell 提示符的彩色增强让能够让你的 shell 独一无二, 而且转载 2013-06-16 20:36:42 · 5083 阅读 · 0 评论 -
linux gdb-多线程调试
linux下应用程序的调试工具主要就是gdb,可能你已经习惯了IDE形式的调试工具。也许刚开始使用gdb作为调试工具,会有诸多的不变,但是一旦你学会了如何使用gdb你就会被其富有魔力的功能所吸引的,下面开始逐步的学习linux下gdb的使用方式。一直以来对于gdb在多线程调试方面的应用好奇,最近,由于项目需要,学习了linux下的gdb在多线程下的调试方法。下面就结合一个简单的案例介绍一下gd...原创 2013-05-05 21:18:07 · 14418 阅读 · 3 评论 -
CentOS 5.2 man 手册使用问题
最近发现我是用的CentOS 5.2 的man手册使用出现了问题。为题现象为:使用man命令式,shell提示只用(END)其他的是么都没有了。而且在执行man命令时还提示如下的错误:/usr/bin/gtbl: symbol lookup error: /usr/lib/libstdc++.so.6: undefined symbol: _ZNSt8messagesIcE2idE, vers原创 2013-09-06 11:15:06 · 2110 阅读 · 0 评论 -
Netfilter分析
一、概述1. Netfilter/IPTables框架简介 Netfilter/IPTables是继2.0.x的IPfwadm、2.2.x的IPchains之后,新一代的Linux防火墙机制。Netfilter采用模块化设计,具有良好的可扩充性。其重要工具模块IPTables连接到Netfilter的架构中,并允许使用者对数据报进行过滤、地址转换、处理等操作。转载 2013-09-01 18:53:22 · 2564 阅读 · 0 评论 -
CentOS Kernel Source Install
CentOS Kernel Source InstallMar 12th, 2012 | Comments CentOS kernel source install, first off if you are just trying to build something or compile a tool on CentOS then you probably only need转载 2013-09-23 15:29:38 · 5333 阅读 · 0 评论 -
Installing the Graphical Window System (X.org-X11) and the Default Desktop Environment on CentOS 6
Installing the Graphical Window System (X.org-X11) and the Default Desktop Environment on CentOS 6Posted 09-06-2011 at 01:12 PM by gearge Updated 11-26-2011 at 02:29 PM by geargeTags centos转载 2013-09-23 12:42:26 · 1562 阅读 · 0 评论 -
GCC编译优化指南
GCC编译优化指南作者:金步国原文出处:http://lamp.linux.gov.cn/Linux/optimize_guide.html版权声明本文作者是一位自由软件爱好者,所以本文虽然不是软件,但是本着 GPL 的精神发布。任何人都可以自由使用、转载、复制和再分发,但必须保留作者署名,亦不得对声明中的任何条款作任何形式的修改,也不得附加任何其它条件。您可以自由链接、下转载 2013-12-02 23:05:20 · 1544 阅读 · 0 评论 -
理解 pkg-config 工具
文章出处:http://www.chenjunlu.com/2011/03/understanding-pkg-config-tool/你在 Unix 或 Linux 下开发过软件吗?写完一个程序,编译运行完全正常,在你本机上工作得好好的,你放到源代码管理系统中。然后,告诉你的同事说,你可以取下来用了。这时,你长长的出了一口气,几天的工作没有白费,多么清新的空气啊,你开始飘飘然了。转载 2013-12-09 20:18:57 · 873 阅读 · 0 评论 -
C++ code completion
This tip describes how to use C++ code completion in Vim (omni completion).When editing a C++ file, enter the command :set omnifunc? to see what completion function is currently used. If the res转载 2014-01-19 19:43:52 · 1684 阅读 · 0 评论 -
CentOS 5.3 Git 安装
Git --- The stupid content tracker, 傻瓜内容跟踪器。Linus 是这样给我们介绍 Git 的。 Git 是用于 Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来原创 2013-03-02 20:14:37 · 968 阅读 · 0 评论