
Linux与网络编程
文章平均质量分 70
故常无-欲以观其妙
行胜于言
展开
-
深入了解cookie
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session。1.1 Cookie机制转载 2016-05-24 10:45:32 · 1102 阅读 · 0 评论 -
valgrind内存泄漏检测详解
一、valgrind介绍Valgrind是一套Linux下,开放源代码(GPL V2)的仿真调试工具的集合。Valgrind由内核(core)以及基于内核的其他调试工具组成。内核类似于一个框架(framework),它模拟了一个CPU环境,并提供服务给其他工具;而其他工具则类似于插件(plug-in),利用内核提供的服务完成各种特定的内存调试任务。Valgrind的体系结构如下图所转载 2016-08-28 20:48:13 · 3779 阅读 · 0 评论 -
实用的16个linux命令
为了让大家能更直观的学习这些命令,添加了更多的解释内容、实例和外部链接。==在使用Linux服务器的过程中,有16个命令可以帮助你全面了解你的服务器的运行状况。如果你能够很熟练地掌握这些命令,就离成为一名专业的Linux系统管理员不远啦!在不同的Linux发行版中,会有不同的GUI程序可以显示各种系统信息,比如SUSE Linux发行版中,就有非常棒的图形化的配置和管理工具转载 2016-09-08 10:18:24 · 298 阅读 · 0 评论 -
Linux下查找指定时间内修改过的文件
Linux下查找指定时间内修改过的文件假如在linux下修改文件后不记得了,我们需要查找指定时间内做过改动的文件,此时我们可以用find命令来查找。find /opt -iname "*" -atime 1 -type f【找出 /opt 下一天前访问过的文件】选项 OPTIONS所有的选项都总是返回真值,它们总会被执行,除非放在表达式中执行不到的地方。因此,清楚起见,转载 2016-10-10 17:35:57 · 13410 阅读 · 0 评论 -
Linux中VMware虚拟机增加磁盘空间的扩容操作[图文]
用VMwareware虚拟机安装的Red Hat Enterprise Linux系统剩余空间不足,造成软件无法正常安装。如果重新装一遍系统就需要重新配置好开发环境和软件的安装配置。通过上网搜集的资料,结合自己的实践,总结了如下扩大硬盘空间的详细步骤,希望对大家有帮助。(1)打开VMware,选择Edit Virtual mache settings,Utilities下拉框中找到Expa转载 2016-10-13 10:40:36 · 3315 阅读 · 0 评论 -
/bin/bash和/bin/sh的区别
/bin/bash和/bin/sh的区别/bin/sh与/bin/bash的细微区别原文:不详在shell脚本的开头往往有一句话来定义使用哪种sh解释器来解释脚本。目前研发送测的shell脚本中主要有以下两种方式:(1) #!/bin/sh(2) #!/bin/bash在这里求教同福客栈的各位大侠们一个问题:以上两种方式有什么区别?对于脚本的实际运行转载 2016-10-15 22:07:39 · 2088 阅读 · 0 评论 -
git与github在ubuntu下的使用
git与github在ubuntu下的使用最近开始使用git对kohana3的文档做一些补充的工作,使用了git 和 github ,从了解到使用,还是有一点距离,下面是总结的一些方法。1、Git的安装我使用了ubuntu 10.04 ,默认情况下,ubuntu 中并没有安装,所以首先需要在系统中进行 git 的安装。sudo apt-get install git转载 2016-10-02 11:10:30 · 285 阅读 · 0 评论 -
linux系统iostat监测IO状态使用详解
linux系统iostat监测IO状态使用详解iostat主要用于监控系统设备的IO负载情况,iostat首次运行时显示自系统启动开始的各项统计信息,之后运行iostat将显示自上次运行该命令以后的统计信息,下面我们来看linux系统iostat监测IO状态使用详解教程Linux系统出现了性能问题,一般我们可以通过top、iostat、free、vmstat等命转载 2016-10-27 13:55:55 · 3952 阅读 · 0 评论 -
聊聊 tcpdump 与 Wireshark 抓包分析
聊聊 tcpdump 与 Wireshark 抓包分析1 起因前段时间,一直在调线上的一个问题:线上应用接受POST请求,请求body中的参数获取不全,存在丢失的状况。这个问题是偶发性的,大概发生的几率为5%-10%左右,这个概率已经相当高了。在排查问题的过程中使用到了tcpdump和Wireshark进行抓包分析。感觉这两个工具搭配起来干活,非常完转载 2016-10-27 14:24:19 · 508 阅读 · 0 评论 -
什么是 CMake
什么是 CMakeAll problems in computer science can be solved by another level of indirection.David Wheeler你或许听过好几种 Make 工具,例如 GNU Make ,QT 的 qmake ,微软的MS nmake,BSD Make(pmake),Makepp,转载 2016-10-18 08:42:03 · 1179 阅读 · 1 评论 -
EPOLL内核源代码实现原理分析
EPOLL内核源代码实现原理分析epoll的实现主要依赖于一个迷你文件系统:eventpollfs。此文件系统通过eventpoll_init初始化。在初始化的过程中,eventpollfs create两个slub分别是:epitem和eppoll_entry。epoll使用过程中有几个基本的函数分别是epoll_create,epoll_ctl,epoll_wait。涉及到转载 2016-10-19 15:54:04 · 2417 阅读 · 0 评论 -
linux查看当前环境变量
$PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接。 编辑你的 PATH 声明,其格式为: PATH=$PATH::::------: 你可以自己加上指定的路径,中间用冒号隔开。环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:$ source .bas转载 2017-02-20 21:23:49 · 3415 阅读 · 0 评论 -
systemtap调试内核
systemtap是内核开发者必须要掌握的一个工具,本文我将简单介绍一下此工具,后续将会有系列文章介绍systemtap的用法。什么是systemtap假如现在有这么一个需求:需要获取正在运行的 Linux 系统的信息,如我想知道系统什么时候发生系统调用,发生的是什么系统调用等这些信息,有什么解决方案呢?最原始的方法是,找到内核系统调用的代码,加上我们需要获得信息的代码、重新编转载 2017-04-10 20:08:17 · 729 阅读 · 0 评论 -
Linux下查看文件和文件夹大小
1 Linux下查看文件和文件夹大小2 删除系统日志等场景:在sts中执行自动部署时候maven提示No space left on device错误,后来经检查发现是磁盘空间满了,用下面的方法分析发现tomcat下面的logs目录占用了很大的空间,删除多余的日志问题解决!回到顶部1 Linux下查看文件和文件夹大小当磁盘大小超过标准时会有报警提示,这时如果掌握df转载 2017-04-17 21:44:57 · 149188 阅读 · 2 评论 -
linux下切换python2和python3
本篇博文面向Linux用户,在Linux下(Ubuntu)下测试通过,Win用户嘛,……0x00 为什么需要有两个版本的PythonPython2和Python3不兼容是每个接触过Python的开发者都知道的事,虽说Python3是未来,但是仍然有很多项目采用Python2开发。Linux的许多发行版本(如Ubuntu)都会自带Python2.7,但是当我们准备开发一个Python转载 2017-04-21 10:18:56 · 14556 阅读 · 1 评论 -
SCP与CP
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了。虽然 rsync比scp会快一点转载 2016-06-17 11:32:52 · 1321 阅读 · 0 评论 -
Linux下Socket相关的头文件
一 三种类型的套接字:1.流式套接字(SOCKET_STREAM) 提供面向连接的可靠的数据传输服务。数据被看作是字节流,无长度限制。例如FTP协议就采用这种。2.数据报式套接字(SOCKET_DGRAM) 提供无连接的数据传输服务,不保证可靠性。3.原始式套接字(SOCKET_RAW) 该接口允许对较低层次协议,如IP,ICMP直接访问。二 基本原创 2016-06-06 21:31:07 · 571 阅读 · 0 评论 -
设计模式之-单例实现
class Singleton{ private static Singleton GetInstance; private static readonly object syncRoot=new object(); private Singleton(){} public static Singleton GetInstance() { i原创 2016-05-24 13:28:05 · 277 阅读 · 0 评论 -
Sed详解
1. Sed简介sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。以下转载 2016-04-29 19:07:28 · 5374 阅读 · 0 评论 -
ubuntu安装配置ssh-connect to host localhost port 22: Connection refused
ssh user@localhost(ip地址)1、目标主机的ssh server端程序是否安装、服务是否启动,是否在侦听22端口;june@ubuntu:~$ ps -ef|grep sshdroot 2859 1 020:29 ? 00:00:00 /usr/sbin/sshd -Droot原创 2016-04-24 00:09:43 · 17531 阅读 · 1 评论 -
Linux实用命令汇总
Linux 除了某个文件或某个文件夹以外全部删除1. 删除除了某个文件以外的文件比如一个目录下有a,b,c,d,e这五个文件,删除除了find . ! -name 2 -exec rm -f {} \;下面演示删除的范围仅限于当前目录.find . -**maxdepth** 1 ! -name 2 -exec rm -f {} \;2. 移动除了某文件以外的其他文件比如:有a.txt,b.txt,原创 2016-05-16 11:26:39 · 290 阅读 · 0 评论 -
如何使用csapp文件
深入理解操作系统中有个csapp.h的头文件以下来介绍下如何使用它:该头文件下载地址为http://download.youkuaiyun.com/detail/tzasd89812/4206284在Ubuntu下如何使用:1. 将此文件移到/usr/include中, sudo mv csapp.h csapp.c /usr/include2. 在csapp.h文件原创 2016-05-05 13:06:57 · 405 阅读 · 0 评论 -
关于GCC编译
GCC参数详解 gcc是gnu compiler collection 的简称,他包含了多种语言的编译器,如C, C++, Objective-C, Objective-C++, Java, Fortran和Ada。但每种编译器的名字不一样,gcc and g++ 分别是 gnu 的 c & c++ 编译器gcc/g++ 在执行编译工作的时候,总共需要 4 步1. 预处理, 生原创 2016-05-05 12:21:51 · 1028 阅读 · 0 评论 -
Linux 中的五种 IO 模型
Linux 中的五种 IO 模型在正式开始讲Linux IO模型前,比如:同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同的上下文下给出的答案是不同的。所以先限定一下本文的上下文。1 概念说明在进行解释之前,首先要说明几个概念:用户空间和内核空间 进程切换 进程的阻塞 文件描述符 缓存 IO1.1 用户空间与内核空间现在操作系统都是采用虚拟存储器,那么对32转载 2016-04-23 12:48:56 · 28592 阅读 · 0 评论 -
同步、异步、阻塞与非阻塞
同步、异步、阻塞与非阻塞近来遇到了一些常见的概念,尤其是网络编程方面的概念,如:阻塞、非阻塞、异步I/O等等,对于这些概念自己也没有太清晰的认识,只是很模糊的概念,说了解吧也了解,但是要让自己准确的描述概念方面的具体细节,却说的不那么准确,这也是自己在这几个方面也没有细细考究过的原因吧。经过看了些这几个概念的资料,发现同步、异步、阻塞、非阻塞的概念其实也并不难以理解,在此写下此文,欢迎拍砖,希望多多转载 2016-04-23 12:51:41 · 11127 阅读 · 0 评论 -
修改Ubuntu中locale转中文为英文
修改Ubuntu 的命令行为英文版 编辑 /etc/default/locale 文件原来的配置为:LANG=”zh_CN.UTF-8″LANGUAGE=”zh_CN:”将原来的配置改为:LANG=”en_US.UTF-8″LANGUAGE=”en_US:en”再在终端下运行:locale-gen -en_US:en注销或重启后,即可原创 2016-04-23 16:12:31 · 11761 阅读 · 0 评论 -
多颗CPU和多核CPU的衡量
架构可以千变万化,面向需求、综合考量是王道。来,简单举个例子。假设现在我们要设计一台计算机的处理器部分的架构。现在摆在我们面前的有两种选择,多个单核CPU和单个多核CPU。如果我们选择多个单核CPU,那么每一个CPU都需要有较为独立的电路支持,有自己的Cache,而他们之间通过板上的总线进行通信。假如在这样的架构上,我们要跑一个多线程的程序(常见典型情况),不考虑超线程,那么每一个线程转载 2016-06-24 10:17:09 · 749 阅读 · 0 评论 -
makefile超级详解
概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和 professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解 HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写m转载 2016-06-08 20:52:54 · 870 阅读 · 0 评论 -
linux常用命令
目录:part 1. 常用操作1.从其他机器拷贝文件夹 scp.2.查看哪个程序在用特定端口 netstat. 3.实时监控日志文件内容 tail.4.查看指定用户拥有的进程 pstree.5.查看磁盘空间使用情况 df.6.查找某文件中出现指定字符串的行 grep.7.查看内存使用情况 free.8.查看本机系统内核 una转载 2016-06-26 11:17:04 · 1461 阅读 · 0 评论 -
linux xargs命令
Linux xargs命令xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理。通常情况下,xargs从管道或者stdin中读取数据,但是它也能够从文件的输出中读取数据。xargs的默认命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行和空白将被空转载 2016-06-26 11:59:49 · 338 阅读 · 0 评论 -
Segmentation fault以及调试
什么是Segmentation fault(Core Dump)? 什么是Core Dump?Core的意思是内存, Dump的意思是扔出来, 堆出来.开发和使用Unix程序时, 有时程序莫名其妙的down了, 却没有任何的提示(有时候会提示core dumped). 这时候可以查看一下有没有形如core.进程号的文件生成, 这个文件便是操作系统把程序down掉时的内存内容扔出转载 2016-06-10 17:45:40 · 697 阅读 · 0 评论 -
Linux 进程详解
在这篇指南中,我们会逐步对进程做基本的了解,然后简要看看如何用特定命令管理 Linux 进程。进程process是指正在执行的程序;是程序正在运行的一个实例。它由程序指令,和从文件、其它程序中读取的数据或系统用户的输入组成。进程的类型在 Linux 中主要有两种类型的进程:前台进程(也称为交互式进程) – 这些转载 2017-05-09 09:43:09 · 2567 阅读 · 0 评论