自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Gino的专栏

Gino的专栏

  • 博客(69)
  • 资源 (7)
  • 问答 (1)
  • 收藏
  • 关注

原创 使用 openssl 的AES 加密

源码:#include <stdio.h>#include <memory.h>#include <stdlib.h>#include <openssl/aes.h>int main(int argc, char *argv[]){ unsigned char buf[16] = "1234567890abcde"; unsigned char buf2[16]; un

2015-07-31 16:04:23 2044

原创 移植 expect(openwrt X86主机)

下载源码:TCL源码:http://iweb.dl.sourceforge.net/project/tcl/Tcl/8.6.4/tcl8.6.4-src.tar.gzExpect源码:http://colocrossing.dl.sourceforge.net/project/expect/Expect/5.45/expect5.45.tar.gz由于 expect 是基于 tcl 语言的,所以

2015-07-30 17:09:18 2370

原创 RT5350 安装 读卡器驱动

首先确认 SD卡 的接口(据说是有2种 第一种是sdio 第二种是spi 如果这两种都没有,那么可以做成类似读卡器的一个设备,也就是USB设备) 我手上这块是 SPI 接口的, 那么在内核上选上SPI模块即可Kernel modules ---> SPI Support ---> <*> kmod-mmc-spi保存退出,第一次 make 烧录之后发现还是未识别。原

2015-07-30 10:05:46 1188

原创 修改 openwrt 登陆欢迎界面

原 openwrt 登陆界面 修改后的 方法就是修改 /etc/banner 文件即可。。有空在制作一个好看点的图案把。。先把方法记录下来

2015-07-29 16:07:21 7071

原创 安装交叉工具链

本文以Openwrt X86的工具链为例制作openwrt 的工具链 参考 http://blog.csdn.net/u011641885/article/details/46374945解压工具链压缩包tar xvf OpenWrt-Toolchain-x86-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-i686.tar.bz2进入工具链目录c

2015-07-29 13:09:42 810

原创 ssh 使用root用户直接登陆

出于安全原因,默认参数很严格,禁止root用户直接使用ssh登陆 比如先用非root的帐户,登陆到ssh后,su成为root解决方法 修改 sshd_config 配置文件vi /etc/ssh/sshd_config# 将 PermitRootLogin改成 PermitRootLogin yes然后重启 ssh 服务即可server ssh restart

2015-07-29 11:53:33 1895

原创 linux ssh 免密码登陆

在 client 端生成公钥和密钥 在 client 端命令行下执行ssh-keygen -t rsa -P ''然后敲回车既可生成公钥和密钥将 client 端的公钥添加到用于认证的 Server 端的公钥文件中 步骤如下: 1、将 client 端公钥复制到 Server 端scp scp ~/.ssh/id_rsa.pub gino@172.16.60.134:~/.ssh/2、将公钥内

2015-07-28 16:34:46 728

原创 ssh 反向隧道访问内网机器

有时候我们需要从公网访问内网的机器。现在一般家里都会有个路由器,路由器一般都会带防火墙,所以从墙外要访问内部的机器,都需要设置防火墙,做端口映射。今天我看到ssh有一个有趣的功能,可以在不设置端口影射的情况下直接建立一个隧道,允许从外部访问内网的机器。假设我们有两台机器,一台在内网中,IP是192.168.1.2,命名为dest;另一台在公网上,地址是pub.server.net,命名为src。我们

2015-07-28 14:20:54 1513

原创 UltraEdit 配置 shell 语法高亮

从UE官网下载wordfile扩展文件包, http://www.ultraedit.com/files/wf/wf.zip ,解压后找到文件 “unixshell.uew” ,将其复制到 ue的wordfile配置文件夹.点击菜单上的 “高级” –> “配置” 勾选 “启用语法彩色显示” –> “已安装的词语文” 选择bash –> 点击应用,重启 UE即可本文参考:http://blog.cs

2015-07-28 09:58:56 5073

原创 linux 进程等待 wait 、 waitpid

waitpid() 与 wait() 功能类似,都是用户主进程等待子进程结束或中断. 可用于进程之间的同步wait 函数原型pid_t wait(int *status);函数说明 wait() 会暂时停止目前进程的执行,直到有信号来到或子进程结束.如果在调用wait() 时子进程已经结束,则 wait() 会立即返回子进程结束状态值.子进程的结束状态值会由参数 status 返回,而子进程的进程

2015-07-26 23:26:01 1086

原创 linux exec函数族

fork()函数通过系统调用创建一个与原来进程(父进程)几乎完全相同的进程(子进程是父进程的副本,它将获得父进程数据空间、堆、栈等资源的副本。注意,子进程持有的是上述存储空间的”副本”,这意味着父子进程间不共享这些存储空间.linux将复制父进程的地址空间内容给子进程,因此,子进程有了独立的地址空间),也就是这两个进程做完全相同的事。 在fork后的子进程中使用exec函数族,可以装入和运行其它程

2015-07-26 11:27:57 724

原创 虚拟机上的Ubuntu开机显示“无法应用原保存的显示器配置”

如图: 解决方法: 删除monitors.xml 文件rm ~/.config/monitors.xml

2015-07-26 10:26:41 7583 4

原创 linux c 创建进程

函数原型pid_t fork(void);fork的奇妙之处在于它被调用一次,却返回两次,它可能有三种不同的返回值: 1、在父进程中,fork返回新创建的子进程的PID 2、在子进程中,fork返回0; 3、如果出现错误,fork返回一个负值。用途: 1、一个进程希望复制自身,从而父子进程能同时执行不同段的代码。 2、进程想执行另外一个程序#include <sys/types.h>#i

2015-07-25 23:49:34 2284

原创 linux 进程控制理论基础

进程的定义 进程是一个具有一定独立功能的程序的一次运行活动。进程的特性 动态性: 进程的实质是程序的一次执行过程。进程是动态产生,动态消亡的。 并发性: 任何进程都可以同其他进程一起并发执行 独立性: 进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位 异步性: 由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推

2015-07-25 21:50:00 643

原创 linux c 获取当前运行进程总数

获取当前运行进程总数的命令为: ps auxw | wc -l获取当前运行进程总数的源码如下:#include <stdio.h>#include <stdlib.h>#include <dirent.h>#include <string.h>#include <ctype.h>#include <errno.h>int main(int argc, char *argv[]){

2015-07-25 10:13:28 5189

原创 Ubuntu 1204 升级到 1404

sudo apt-get updatesudo apt-get dist-upgradeupdate-manager -d中途会询问是否替换配置文件等,根据个人需求选择吧

2015-07-24 19:19:40 2062

原创 linux popen函数

函数原型FILE *popen(const char *command, const char *type);int pclose(FILE *stream);函数说明 popen()函数通过创建一个管道,调用fork()产生一个子进程,执行一个shell以运行命令来开启一个进程。这个管道必须由pclose()函数关闭,而不是fclose()函数。pclose()函数关闭标准I/O流,等待命令执

2015-07-24 16:09:06 961

原创 linux smartmontools 工具

smartmontools是一款开源的磁盘控制,监视工具,可以运行在Linux,Unix,BSD,Solaris,Mac OS,OS/2,Cygwin和Windows上,同时它还可以从启动光盘或启动软盘运行,支持ATA/ATAPI/SATA-3(到-8)位的硬盘和 SCSI硬盘,另外还支持磁带设备,它的老家在smartmontools.sourceforge.net,实际上它是一个软件包,包括了两个

2015-07-24 12:02:26 3983

原创 Makefile.am 文件介绍

Makefile.am 是一种比 Makefile 更高层次的规则。只需要指定要生成什么目标,它由什么源文件生成,要安装到什么目录 等构成下表列出了可执行文件、静态库、头文件和数据文件,四种书写 Makefile.am 文件的一般格式。 对于可执行文件和静态库类型,如果只想编译,不想安装到系统中,可以用 noinst_PROGRAMS 代替 bin_PROGRAMS, noinst_LIBRARI

2015-07-24 10:38:12 4722

原创 shell 脚本调试工具

bashdb 是一个类似GDB的脚本调试软件,具有断点、单步执行、观察变量等功能安装方法:sudo apt-get install bashdbbashdb 使用方法: bashdb [options] script-name [script options]options:-h : 打印命令的帮助信息-A : 设置输出额外的堆栈和状态信息。更多选项信息使用man bashdb

2015-07-23 23:12:57 1930

原创 shell 脚本调试(使用shell的执行选项)

-n 只读取shell脚本,但是不实际执行 常用于测试shell是否存在语法错误-x 进入跟踪方式,显示所执行的每一条命令。 使shell在执行脚本的过程中把它实际执行的每一个命令行显示出来,并且在行首显示一个”+”号-c “string” 从string中读取命令 使shell解释器从一个字符串中而不是从一个文件中读取并执行shell命令。当需要临时测试一小段脚本的执行结果时,可以使用这个

2015-07-23 22:49:34 2216

原创 linux c编程访问数据库

源码如下:#include <stdio.h>#include <stdlib.h>#include <mysql/mysql.h>int main(){ /*定义mysql变量*/ MYSQL *coon; //数据库链接时使用的句柄 MYSQL_RES *res; //返回行的查询结果 MYSQL_ROW row; //记录

2015-07-23 22:06:24 705

原创 mysql 远程登陆不上

当使用 TCP/IP 连接 mysql 时, 出现 : Can’t connect to MySQL server on ‘xxx.xxx.xxx.xxx.’(111)这个错误。经过反复折腾: 确定IP没错,用户权限是有的(支持远程IP连接),配置文件以注销 绑定本地IP选项。。。 浪费了半小时之后。。。看到以段话,,,如果是在linux shell命令行中直接打 mysql 命令,能够顺利连

2015-07-23 17:58:45 895

原创 mysql 设置远程登陆以及新增用户

mysql 简单的管理命令: 启动mysql sudo start mysql 停止mysql sudo stop mysql允许远程访问的设置:sudo vi /etc/mysql/my.cnf注释掉 bind-address = 127.0.0.1增加新用户:GRANT ALL PRIVILEGES ON *.* TO gino@'%' IDENTIFIED BY "123456";

2015-07-23 17:41:05 878

原创 ubuntu 1204 安装mysql

检测本机是否有安装mysqlsudo netstat -tap | grep mysql执行上面的命令之后,看到 mysq 的socket 处于监听状态,说明有安装成功。安装mysqlsudo apt-get install mysql-server mysql-client libmysqlclient-dev安装过程中会提示输入数据库管理员密码(自己设定的),如图 设置完成之后等待安装完

2015-07-23 16:30:27 764

原创 openwrt 设置连接无线上网

进入 网页管理界面Network --> Firewall --> AddGeneral Settings --> Name 名字 Input [accept] Output [accept] Forward [reject] Masquerading 勾选上 MSS clamping 勾选上Covered networks

2015-07-23 10:38:43 6040

原创 linux 命令之 dmidecode

Dmidecode 这款软件允许你在 Linux 系统下获取有关硬件方面的信息。Dmidecode 遵循 SMBIOS/DMI 标准,其输出的信息包括 BIOS、系统、主板、处理器、内存、缓存等等。Dmidecode简介 DMI (Desktop Management Interface, DMI)就是帮助收集电脑系统信息的管理系统,DMI信息的收集必须在严格遵照SMBIOS规范的前提下进行。

2015-07-22 21:57:12 1974

原创 Makefile 选项 CFLAGS 、LDFLAGS 、LIBS

CFLAGS 表示用于C编译器的选项 CXXFLAGS 表示用于C++编译器的选项 这两个变量实际上涵盖了编译和汇编的两个步骤CFLAGS:指定头文件(.h)的路径,如:CFLAGS=-I/usr/include -I/path/include 。同样地,安装一个包时会在安装路径下建立一个include目录,当安装过程中出现问题时,试着把以前安装的包的include目录加入到该变

2015-07-22 21:12:46 2591

原创 autotools 生成的makefile 常用 目标

make all 不加任何 target , 默认就是 all, 作用是编译软件make install 安装软件包,如果安装到系统目录,需要 root 权限make clean 清除编译产生的目标文件make distclean 可以同时清除编译的结果和 configure 输出的文件make tags 生成 etags 使用的 TAGS 文件make dist 生成软件发布包,为 t

2015-07-22 21:04:49 651

原创 linux c 经常混淆的概念

指针函数 and 函数指针指针函数是指带指针的函数,即本质是一个函数。函数都有返回类型(如果不返回值,则为无值型),只不过指针函数返回类型是某一类型的指针。定义格式类型名 *函数名(函数参数列表)函数指针是指向函数的指针变量。因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。定义格式返回值类型 (*指针变量名)(形参列表)指针数组 and 数组指针指针数组数组元素全为指针的数组

2015-07-22 10:17:21 1075

原创 linux openssl加密文件

openssl 支持的加密算法-aes-128-cbc -aes-128-cfb -aes-128-cfb1-aes-128-cfb8 -aes-128-ecb -aes-128-ofb-aes-192-cbc -aes-192-cfb -aes-192-cfb1-aes-192-cfb8 -aes-192-ecb -aes-192-ofb-aes-256-cbc -aes-256-cfb -ae

2015-07-20 23:26:31 1542

原创 初识 linux expect

expect是一个用来实现自动交互功能的软件套件 。使用它可以创建脚本用来实现对命令或程序提供输入,而这些命令和程序是期望从终端(terminal)得到输入,一般来说这些输入都需要手工输入进行的。 expect则可以根据程序的提示模拟标准输入提供给程序需要的输入来实现交互程序执行。expect需要Tcl编程语言的支持,要在系统上运行expect必须首先安装Tclexpect安装sudo apt-ge

2015-07-20 17:30:02 888

原创 Ubuntu 1204挂载 exfat文件格式

挂载U盘时提示:mount: unknown filesystem type ‘exfat’ 应该是 exfat 文件系统系统不识别。解决方法sudo apt-get install exfat-utils安装完成之后在mount就可以挂载了

2015-07-19 22:54:56 1003

原创 linux c 获取系统关机时间

源码如下:#include <utmp.h>#include <stdio.h>#include <string.h>#include <time.h>int main(){ struct utmp *u , ut; FILE *fp = fopen("shutdown_note","w+"); utmpname("/var/log/wtmp"); whil

2015-07-19 22:00:18 1381 1

原创 linux c 操作utmp 和 wtmp 文件接口

/var/run/utmp 保存当前在本系统中的用户信息 /var/log/wtmp 保存登陆过本系统的用户信息他们保存的信息是基于结构体 struct utmp 的(/usr/include/bits/utmp.h)utmp 结构体定义如下:struct utmp{ short int ut_type; //登录类型 pid_t ut_pid; //login 进程的

2015-07-19 21:41:50 6073

原创 linux c++ 获取基本类型的极值

源码如下:#include <iostream>#include <string.h>#include <limits>using namespace std;int main() { cout << "bool: \t\t" << "所占字节数:" << sizeof(bool); cout << "\t最大值:" << (numeric_limits<bool>::

2015-07-19 13:28:18 1122

原创 Ubuntu gedit 中文乱码解决方法

安装 gconf-editor 软件包sudo apt-get install gconf-editor在命令行运行 gconf-editor 程序,开启编辑器配置界面gconf-editor如图 选择 apps->gedit-2->preferences->encodings 然后双击右边列表的 “auto_detected”选项,打开 “Edit Key”设置界面,然后点击 “Add”按

2015-07-19 12:03:34 754

原创 Ubuntu1204 vim中文乱码解决方法

添加中文字符编码sudo vi /var/lib/locales/supported.d/local#添加下面的中文字符集zh_CN.GBK GBKzh_CN.GB2312 GB2312zh_CN.GB18030 GB18030#保存退出使添加的中文字符集生效sudo dpkg-reconfigure locales设置vim中的中文显示配置sudo vi /etc/vim/vimr

2015-07-19 11:33:01 853

原创 linux c 获取文件行数

源代码如下:/*获取文件行数*/int file_wc(const char *filename){ int fd; register int linect = 0; char buf[MAXBSTZE]; int len; char *p = NULL; if(filename) {

2015-07-18 20:03:08 6147 1

原创 linux /proc/net/arp 文件

/proc/net/arpThis holds an ASCII readable dump of the kernel ARP table used for address resolutions. It will show both dynamically learned and preprogrammed ARP entries. The format is:IP address

2015-07-18 18:45:01 12381 1

IP命令中文手册

IP命令中文手册

2015-05-15

MySQL中文手册

MySQL中文手册 如果打开空白 请参考http://blog.csdn.net/u011641885/article/details/44755205

2015-03-30

MySQL5.096

MySQL5.096安装包。博客附带mysql5.0.96图文安装教程

2015-03-29

VC助手

VC助手

2015-03-27

使用GDB调试linux软件

简介: Linux 的大部分特色源自于 shell 的 GNU 调试器,也称作 gdb。gdb 可以让您查看程序的内部结构、打印变量值、设置断点,以及单步调试源代码。它是功能极其强大的工具,适用于修复程序代码中的问题。在本文中,David Seager 将尝试说明 gdb 有多棒,多实用。

2013-08-22

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除