当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪nginx提示地址或端口被占用      今天小编在启动nginx 的时候遇到如下的错误 Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already use)这个就是nginx 的80 端口被占用了 我们时常在nginx启动或者关闭关闭过多的情况下.........
    ▪storysnail的Linux串口编程笔记                storysnail的Linux串口编程笔记 Author : He YiJun (storysnail<at>gmail.com QQ:363559089) Develop Team : 7fane Team (http://www.7fane.com,测试网站,到2013年11月.........
    ▪Linux学习笔记6-常用命令      查看、设置当前系统时间:date选项:-u:查看格林威治时间格式化显示时间:+%Y--%m--%d-s:设置时间,例如:date –s "20:20:00" 显示硬件时间:hwclock(或clock)查看日历:cal查看系统运行时间:uptime.........

[1]nginx提示地址或端口被占用
    来源:    发布时间: 2013-11-15
今天小编在启动nginx 的时候遇到如下的错误
 
Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already use)

这个就是nginx 的80 端口被占用了 我们时常在nginx启动或者关闭关闭过多的情况下出现的


1、检查80端口被什么程序占用

fuser -n tcp 80

root@gaojin-R410IU:/home/gaojin# fuser -n tcp 80

80/tcp: 1116

2、删除对应的程序进程即可

kill -9 1116

3、如果确认就只有nginx占用,也可以直接结束nginx的所有进程

killall -9 nginx

 

 

好的再次 /etc/init.d/nginx start 就正常启动了

 

 

本文链接


    
[2]storysnail的Linux串口编程笔记
    来源:    发布时间: 2013-11-15

          storysnail的Linux串口编程笔记

Author : He YiJun (storysnail<at>gmail.com QQ:363559089)
Develop Team : 7fane Team (http://www.7fane.com,测试网站,到2013年11月底)
Editor : Yang QiuXi
Art Designer : He YiJun
License : 7fane Team License 1.0
Last Update : 2013-03-26

    这半个月因肺部感染而不得不暂时终止那令人生厌的中石油巡检工作,闭门在家安静的
修养。整月的工钱自然是泡汤了,可却得来了极其珍贵的个人闲暇时光,让我能淋漓尽致的
做软件方面的研究,虽是粗茶淡饭,针剂苦药,但可静心埋头于书房,却比天堂还甜美!

    恍惚已至月末,工作单位来了音讯,让我一下子从甜美的梦中惊醒,从哪里来,回哪里
去,这种如"主体思想"一样可怕的思维是我挥之不去的梦魇,无奈、不知所措、病弱的身体
却不由自主的向那发声的地方靠去!

    好了,还是不再发牢骚了,只是个人觉得这种臃肿低效的国企能够存在,本身就是对“
国富论”绝佳的嘲讽,我只能用世界是多元的来啊Q一下了!

    切入正题,这段时间做GSM/GPRG和GPS的小东西,需要通过串口发送AT指令来控制,以前
调试一直在用串口助手和minicom之类的现成软件,可是一点都不爽,为什么不自己写个操作
串口的软件,就像在ARM和stm32上一样!

    这文章其实只是我的一个笔记,分为两篇,一篇是《storysnail的Windows串口编程笔记》,
另一篇是《storysnail的Linux串口编程笔记》,由于网上已经有非常多的类似文章,有些长篇
大论,有些短小精悍,连我自己都思考过是否有必要再写一篇,但在Ling的鼓动下还是写了!

    本篇是Linux串口编程笔记,详细介绍了串口通信会用到的api函数,并提供了一个示例程序,
这个示例程序是在EEEPC701的debian系统上编写测试的。

一:写串口程序用到的函数
  1:Linux与windows串口设备文件名对照

操作系统 串口1 串口2 USB/RS-232转换器
Windows COM1 COM2 COMX(我的系统上X=4)
Linux /dev/ttyS0 /dev/ttyS1 /dev/ttyUSB0

  2:写串口程序用到的函数
    串行通讯函数定义在termios.h头文件中,所以需要包含该文件。下面是要介绍的函数列表

open 打开串口
close 关闭串口
read 接收数据
write 发送数据
fcntl 设置IO为阻塞或非阻塞
ioctl 实现POSIX.1 GTI控制界面所有函数功能
tcgetattr 读取串口设备的当前属性,保存在termios_p所指向的结构中
tcsetattr 设置串口设备的当前属性
cfgetospeed 返回输出波特率
cfgetispeed 返回输入波特率
cfsetispeed 设定输入波特率
cfsetospeed 设定输出波特率

2.1
open
用途:打开串口
原型:int open( const char * pathname,int flags);
参数说明:
pathname:   指向欲打开的文件路径字符串
flags       所能使用的标志位:
                O_RDONLY   以只读方式打开文件
                O_WRONLY   以只写方式打开文件
                O_RDWR     以可读写方式打开文件。
                           O_RDONLY、O_WRONLY、O_RDWR标志位是互斥的,不可同时使用,但可与下列的
                           标志位|运算组合。
                O_CREAT    若欲打开的文件不存在则自动建立该文件。
                O_EXCL     如果O_CREAT 也被设置,此指令会去检查文件是否存在。文件若不存在则建立该文件,
                           否则将导致打开文件错误。此外,若O_CREAT与O_EXCL同时设置,并且欲打开的文件为
                           符号连接,则会打开文件失败。
                O_NOCTTY   表明本程序不是该串口上的“控制终端”。即本程序不受Ctrl+c、Ctrl+z这类
                           组合键产生的信号影响。
                O_TRUNC    若文件存在并且以可写的方式打开时,此标志位会令文件长度清为0,
                           而原来存于该文件的 资料也会消失。
                O_APPEND   当读写文件时会从文件尾开始移动,也就是所写入的数据会以附加的方式加入到文件后面。
                O_NONBLOCK 非阻塞模式打开。在打开很多串行端口设备时,open函数有时候会阻塞很长一段
                           时间.例如当打开一个调制解调器的端口就会阻塞直到DCD信号线有信号电压为止,
                           如果串口的另一端没有连接任何设备,那么DCD信号线上就不会有信号电压,这会
                           导致open函数一直阻塞在那里等待DCD信号,导致程序失去响应。使用该选项
                           程序会忽略DCD信号线上的信号。所以为了无阻塞地打开一个文件但不影响正常的
                           阻塞IO,必须先用O_NONBLOCK选项调用open函数,然后使用fcntl切换到非阻塞IO
                           状态。
                O_NDELAY   其实和O_NONBLOCK基本相同,所产生的结果都是使I/O变成非阻塞模式,唯一的
                           一点差别是O_NDELAY会让函数马上返回0,而O_NONBLOCK在读不到数据时会返回-1,
                           并且设置errno为EAGAIN。在GNU C中O_NDELAY只是为了与BSD的程序兼容,实际上
                           在fcntl.h中是使用O_NONBLOCK作为宏定义,所以建议现在使用O_NONBLOCK.
                             #define O_NDELAY O_NONBLOCK
                O_SYNC     以同步的方式打开文件。
                O_NOFOLLOW 如果参数pathname 所指的文件为一符号连接,则会令打开文件失败。
               

    
[3]Linux学习笔记6-常用命令
    来源:    发布时间: 2013-11-15

查看、设置当前系统时间:date

选项:

-u:查看格林威治时间

格式化显示时间:+%Y--%m--%d

-s:设置时间,例如:date –s "20:20:00"

 

显示硬件时间:hwclock(或clock)

查看日历:cal

查看系统运行时间:uptime

 

输出、查看命令:

echo :显示输入的内容

cat:显示文件内容

more:向下翻页显示文件内容;

less:向上向下翻页显示文件内容。(空格键向下翻,上下键可上、下翻)

head:显示文件头10行(默认)

    -n:指定显示的行数

tail:显示文件尾10行(默认)

    -n:指定行数

    -f:不结束命令,继续

 

查看硬件信息:

lspci:查看pci设备

    -v:查看详细信息

lsusb:查看usb设备

    -v:查看详细信息

lsmod:查看加载的模块(驱动)

 

关机、重启:

shutdown:关机、重启

    -h:关机

    -r:重启

如:    立即关机:shutdown –h now

    10分钟后关机: shutdown –h +10

    23:30分关机:shutdown –h 23:30

    立即重启: shutdown –r now

poweroff:立即关闭计算机

reboot:立即重启计算机

 

归档、压缩:

zip:压缩文件

    zip linuxcast.zip myfile

upzip:解压缩文件

    unzip linuxcast.zip

gzip:gzip算法压缩文件

    gzip linuxcast.net

tar:归档文件(不压缩,只打包)

    tar –cvf out.tar linuxcast (打包)

    tar –xcf out.tar (解开)

    tar –cvzf backup.tar.gz /etc (-z参数将归档后的归档文件进行gzip压缩)

 

查找文件(夹):

locate快速查找文件、文件夹:

    locate keyword

    此命令需预先建立数据库,默认每天更新一次。使用updatedb 命令手工建立、更新数据库。

find:经典的查找命令,可进行高级查找文件、文件夹,查找速度比locate慢:

    find 查找位置 查找参数

如:

    find . –name *linuxcast* :查找当前文件夹,并基于文件名,包含linuxcast关键字。

    find / -name *.conf:查找根目录,并基于文件名,后缀为.conf。

    find / -perm 777:查找根目录下所有权限为777的文件。

    find / -type d:查找根目录下的目录。

    find . –name "a*" –exec ls –l {} \:查找当前目录下以a开头的文件,并以参数传递给ls –l命令。

find常用的查找条件:

-name:基于文件名;

-perm:基于权限值;

-user:基于所属用户

-group:基于特定用户组

-ctime:基于修改时间

-type:基于类型

-size:基于文件大小

 

本文链接


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
▪a10 config backup for aXAPI
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
▪Shell脚本实现检测文件是否被修改过代码分享
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
▪C语言实现的ls命令源码分享
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
▪linux shell 自定义函数方法(定义、返回值、变...
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3