最新 | 最热门 | 最高评价

+0  手把手教你用Strace诊断问题

Tag: Technical | Linux | Strace
老王 发于 2015年10月16日 14:22 | 点击: 101 | 展开摘要
早些年,如果你知道有个 strace 命令,就很牛了,而现在大家基本都知道 strace 了,如果你遇到性能问题求助别人,十有八九会建议你用 strace 挂上去看看,不过当你挂上去了,看着满屏翻滚的字符,却十有八九看不出个所以然。本文通过一个简单的案例,向你展示一下在用 strace 诊断问题时的一些套路。

如下真实案例,如有雷同,实属必然!让我们看一台高负载服务器的 top 结果:

top

技巧:运行 top 时,按「1」打开 CPU 列表,按「shift+p」以

查看全文: http://www.udpwork.com/item/15973.html

+0  Linux Signal及Golang中的信号处理

Tag: Linux
鸟窝 发于 2015年10月09日 17:03 | 点击: 719 | 展开摘要
信号(Signal)是Linux, 类Unix和其它POSIX兼容的操作系统中用来进程间通讯的一种方式。一个信号就是一个异步的通知,发送给某个进程,或者同进程的某个线程,告诉它们某个事件发生了。
当信号发送到某个进程中时,操作系统会中断该进程的正常流程,并进入相应的信号处理函数执行操作,完成后再回到中断的地方继续执行。
如果目标进程先前注册了某个信号的处理程序(signal handler),则此处理程序会被调用,否则缺省的处理程序被调用。

发送信号

kill 系统调用(

查看全文: http://www.udpwork.com/item/14657.html

+0  SSH 信任限制只能执行 rsync 命令

Tag: Linux
ideawu 发于 2015年09月29日 19:27 | 点击: 913 | 展开摘要
业务场景:

* server A 经常需要使用rsync将文件同步至 server B

* rsyncd 的配置稍显复杂,不想在 server B 上配置rsyncd

* 出于安全性的考虑,不能完全开放 server A 至 server B 的ssh权限

解决方案:

配置server B上的~/.ssh/authorized_keys, 允许server A使用ssh连接至server B, 但是限制只能使用rsync命令,并且限制rsync上传的目录

在ser

查看全文: http://www.udpwork.com/item/14643.html

+0  Docker基础技术:DeviceMapper

Tag: Unix/Linux | 操作系统 | 杂项资源 | Device Mapper | Docker | Linux | Thin Provisioning
陈皓 发于 2015年08月26日 08:21 | 点击: 956 | 展开摘要
在上一篇介绍AUFS的文章中,大家可以看到,Docker的分层镜像是怎么通过UnionFS这种文件系统做到的,但是,因为Docker首选的AUFS并不在Linux的内核主干里,所以,对于非Ubuntu的Linux分发包,比如CentOS,就无法使用AUFS作为Docker的文件系统了。于是作为第二优先级的DeviceMapper就被拿出来做分层镜像的一个实现。

Device Mapper 简介

DeviceMapper自Linux 2.6被引入成为了Linux最重要的一个

查看全文: http://www.udpwork.com/item/14547.html

+0  Docker基础技术:AUFS

Tag: Unix/Linux | 操作系统 | 杂项资源 | AUFS | Docker | Linux | UnionFS
陈皓 发于 2015年08月24日 08:01 | 点击: 824 | 展开摘要
AUFS是一种Union File System,所谓UnionFS就是把不同物理位置的目录合并mount到同一个目录中。UnionFS的一个最主要的应用是,把一张CD/DVD和一个硬盘目录给联合 mount在一起,然后,你就可以对这个只读的CD/DVD上的文件进行修改(当然,修改的文件存于硬盘上的目录里)。

AUFS又叫Another UnionFS,后来叫Alternative UnionFS,后来可能觉得不够霸气,叫成Advance UnionFS。是个叫Junjir

查看全文: http://www.udpwork.com/item/14535.html

+0  使用cgroups限制MongoDB的内存使用

Tag: cgroups | Linux
鸟窝 发于 2015年07月23日 10:49 | 点击: 1523 | 展开摘要
cgroups,其名称源自控制组群(control groups)的简写,是Linux内核的一个功能,用来限制,控制与分离一个进程组群的资源(如CPU、内存、磁盘输入输出等)。

这个项目最早是由Google的工程师在2006年发起(主要是Paul Menage和Rohit Seth),最早的名称为进程容器(process containers)。在2007年时,因为在Linux内核中,容器(container)这个名词有许多不同的意义,为避免混乱,被重命名为cgroup,并

查看全文: http://www.udpwork.com/item/14426.html

+0  WRT54G DD-WRT 内部架构

Tag: Linux | network | networking | Technology
IT牛人.117 发于 2015年07月12日 10:00 | 点击: 438 | 展开摘要
说到研究 RT-AC68U 工作原理,就不得不谈一下经典的 WRT45G / DD-WRT 了,两者的工作原理是非常相似的。

幸运地找到了迄今为止见过最好的内部工作原理图:

原理简述:

WRT54G 内部有三大组成部分

SoC – 路由器

一个6口交换机

无线模块

交换机端口划分成 port 0-3 (路由器上的 LAN 端口编号是不一样的)是本地局域网端口 port 4 是 WAN 端口。交换机的 port 5 与路由器的 eth0 连接。共6个端口。

为了

查看全文: http://www.udpwork.com/item/14599.html

+0  Asus RT-AC68U

Tag: Linux | network | networking | Technology
IT牛人.117 发于 2015年06月27日 18:00 | 点击: 609 | 展开摘要
财年末,按惯例升级工作相关的设备,今年着重解决家里的网络问题。

出口带宽的问题是解决了,详见 From ADSL2+ to Cable,但送的 NetGear CG3000v2 Cable Modem 的固件实在太差(硬件参数是不错),烂到了无法忍受的地步,最终把它改成了 Bridge 模式接了个破 TP-Link TL-WR1043ND 暂时用着,该有的功能都有了(比如保留 IP 地址,无线 MAC 地址过滤,端口转发等),但 802.11n 300Mbps 的性能实在是

查看全文: http://www.udpwork.com/item/14393.html

+0  实战Sentry

Tag: Technical | Linux
老王 发于 2015年06月19日 17:29 | 点击: 1011 | 展开摘要
不管你用什么编程语言,都会面临如何处理错误日志的问题。很多程序员对错误日志放任自流,直到出现故障了才追悔莫及,如果问我怎么办,我会推荐 Sentry!

Sentry 是一个错误记录和聚合的平台,只要看看它漂亮的界面就会喜欢上它:

sentry

关于如何安装 Sentry,官方文档里已经给出了详细的说明,建议大家仔细阅读,一般通过 Virtualenv 来安装 Sentry,具体可以参考:学习搭建Python环境。

提醒:我在安装 7.5 的时候,测试有循环重定向,如果

查看全文: http://www.udpwork.com/item/14322.html

+0  Yanking and sorting lines matching a pattern

Tag: Linux | Technology | Windows
Haidong Ji 发于 2015年06月12日 11:37 | 点击: 790 | 展开摘要
One of the best investments I’ve ever made is to be proficient with a good cross-platform editor, in my case Vim. It took me a good few months before I really became comfortable with it, but those few months’ struggle yielded hu

查看全文: http://www.udpwork.com/item/14302.html

+0  发现一个不需要打密码的sudo方法

Tag: Linux
Xiaoxia 发于 2015年06月12日 01:31 | 点击: 832 | 展开摘要
平常在在 /etc/sodoers 添加管理员时,一般这样写:

xiaoxia    ALL=(ALL)    ALL

虽然看不懂这句里面三个ALL表示什么意思,每次都这样写。最近在公子龙七的强烈推荐下,玩起了树莓派2(一个信用卡大小的微型计算机,不用200块就能买到),官方的raspbian系统(发展debian)不能用root,但sudo不需要密码。看了一下它的sudoers文件。Mark下来。

xiaoxia    ALL=(ALL)    NOPASSWD:  

查看全文: http://www.udpwork.com/item/14300.html

+0  一个Laravel队列引发的报警

Tag: Technical | Linux
老王 发于 2015年06月10日 17:43 | 点击: 829 | 展开摘要
一台服务器报警了,内存占用过高,奇怪的是集群里其它的服务器都没问题。不过从以往的经验来看:每一个匪夷所思的问题背后,都隐藏着一个啼笑皆非的答案。

首先通过「free -m」确认一下内存情况,发现用掉了 6893M,还剩 976M:

free

然后通过「top」查看一下哪些进程占用内存多,通过「shift + m」按内存排序:

top

虽然通过 free 命令我们能确认系统可用内存不足,但是通过 top 命令我们却没有发现有内存占用大户的进程,那么内存到底都去哪里了呢

查看全文: http://www.udpwork.com/item/14293.html
|<<<2345678>>>| 一共47页, 554条记录