Linux中国 系统之锹sysdig:Linux服务器监控和排障利器 当你需要追踪某个进程产生和接收的系统调用时,首先浮现在你脑海中的是什么?你可能会想到strace,那么你是对的。你会使用什么样的命令行工具来监控原始网络通信呢?如果你想到了tcpdump,你又作出了一个极佳的选择。而如果你碰到必须追踪打开的文件(在Unix意义上:一切皆文件)的需求,可能你会使用lsof。 strace、tcpdump以及lsof,确实是些伟大的工具,它们应该成为每个系统管理员工具集之中的一部分,而这也正是你为什么应该爱上sysdig的原因。它是一个强大的开源工具,用于系统级别的勘察和排障,它的创建者在介绍它时称之为strace+ By Rain2014 年 11 月 30 日
Linux中国 如何在 CentOS 7 上安装 Docker Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单。容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止。Docker 帮助系统管理员和程序员在容器中开发应用程序,并且可以扩展到成千上万的节点。 容器和 VM(虚拟机)的主要区别是,容器提供了基于进程的隔离,而虚拟机提供了资源的完全隔离。虚拟机可能需要一分钟来启动,而容器只需要一秒钟或更短。容器使用宿主操作系统的内核,而虚拟机使用独立的内核。 Docker 的局限性之一是,它只能用在 64 位的操作系统上。 在这篇文章中我们将讨论如何在 CentOS 7.x 中 By Rain2014 年 11 月 30 日
BSD 操作系统/发行版 不留不去—神奇的虚拟机发行版VirtualBSD 有诗云:“轻轻地我走了,正如我轻轻地来,我瞧一瞧屏幕,敲一敲键盘,不留下一点更改”,这恐怕是很多Linuxer、UNIXer的梦想,不想装实体机残忍格盘,不想没日没夜灰头土脸解决驱动问题,不想折腾桌面,想一步到位用上强壮好用的 FreeBSD? By 編程浪子2014 年 11 月 30 日
Linux中国 安卓编年史(4):Android 0.9 Beta——嘿,这看起来很眼熟! 尽管从功能上很难将模拟器和操作系统区分开,但安卓 0.9 是第一个支持横屏显示的版本。 By Rain2014 年 11 月 30 日
Linux中国 Systemd这个有争议的项目正在接管你身边的Linux发行版 Systemd 是目前为止在Linux平台上最有争议的项目之一。它到底有多大的争议?它的争议大到systemd的开发者之一Lennart Poettering 声称有人使用比特币雇佣职业杀手要干掉他。但是还是有比较理智的做法的,有一个抵制systemd网站在技术角度上提出了抵制systemd的原因。 如此强烈的抵制也反映了systemd的成功。它已经被或将要被Fedroa、OpenSUSE、Ubuntu、Debian、Arch Linux等众多发行版采用。随着时间推移,GNOME越来越依赖它,Debian回归GNOME的原因之一就是它采用了systemd。systemd无处不在! 那么如此激烈的争论到底是关于什么呢?让我 By Rain2014 年 11 月 30 日
Linux 发行版/系统 Devuan 又一 Debian 分支 Debian 8 Jessie的初始化系统默认使用 systemd,这一选择在社区引发了大量争议,导致了技术委员会的多名成员辞职。反对者认为,systemd违反了只做好一件事的Uuix哲学,创造了一个复杂的依赖网。 By root2014 年 11 月 29 日
Linux中国 DebianFork 将发布没有 systemd 的 Debian 分支 编者按:Debian 8 Jessie的 init 系统默认使用 systemd,这一选择在社区引发了大量争议,导致了技术委员会的多名成员辞职。现在,老兵 Unix 管理员宣布要创建一个新的不使用 sytemd 的Debian 分支。这群 Unix 哲学拥护者们请求外界捐赠支持他们的新使命。 以下内容来自 debianfork.org 的相关内容: 我们是谁?! 我们是老兵 Unix 管理员(Veteran ... By Rain2014 年 11 月 29 日
Linux中国 Linux有问必答:如何检查Linux上的glibc版本 问题:我需要找出我的Linux系统上的GNU C库(glibc)的版本,我怎样才能检查Linux上的glibc版本呢? GNU C库(glibc)是标准C库的GNU实现。glibc是GNU工具链的关键组件,用于和二进制工具和编译器一起使用,为目标架构生成用户空间应用程序。 当从源码进行构建时,一些Linux程序可能需要链接到某个特定版本的glibc。在这种情况下,你可能想要检查已安装的glibc信息以查看是否满足依赖关系。 这里介绍几种简单的方法,方便你检查Linux上的glibc版本。 方法一 下面给出了命令行下检查GNU C库的简单命令。 $ ldd --version 在本例中,gli By Rain2014 年 11 月 27 日
Linux中国 iproute2 对决 net-tools 如今很多系统管理员依然通过组合使用诸如ifconfig、route、arp和netstat等命令行工具(统称为net-tools)来配置网络功能,解决网络故障。net-tools起源于BSD的TCP/IP工具箱,后来成为老版本Linux内核中配置网络功能的工具。但自2001年起,Linux社区已经对其停止维护。同时,一些Linux发行版比如Arch Linux和CentOS/RHEL 7则已经完全抛弃了net-tools,只支持iproute2。 作为网络配置工具的一份子,iproute2的出现旨在从功能上取代net-tools。net-tools通过procfs(/proc)和ioctl系统调用去访问和改变内核网络配置,而iproute2则通过netlink By Rain2014 年 11 月 27 日
BSD 操作系统/发行版 DragonFly BSD 4.0.1发布 2014年11月25日 DragonFly BSD 发布4.0.1版本。 此版本支持 Haswell 图形化,3D 加速,并且提升了在高负载网络环境下的性能。DragonFly 现在可同时支持 256个 CPU以及Haswell 图形化(i915),并发 pf 操作和其他各种设备。 By root2014 年 11 月 27 日
Linux中国 在 Linux 中使用"avconv"工具录制计算机桌面视频和音频 Libav是一款跨平台的工具库,能够用来处理多媒体文件、流和协议。它最初是源自ffmpeg。Libav带有一些工具,比如: Avplay: 一款视频音频播放器。 Avconv: 能够记录多个设备输入源的一个多媒体转换器和视频音频录制器。 Avprobe: 一个连接多媒体文件流并且返回关于这个文件流的统计信息的工具。 Libavfilter: 一个Libav工具的过滤器(filtering)API。 在这篇文章里面,我们就要展示如何通过'Avconv'程序在Debian/Ubuntu/Linux Mint发行版上录制Linux桌面视频音频。 第一步:下载 Avconv 工具 1. avconv是 libav-tools 的一部分, 可 By Rain2014 年 11 月 27 日
Linux中国 Ubuntu也许能在中国给Windows以致命打击 Windows操作系统将退出中国的前门,而它的位置将由一个Linux发行版替代,用于官方和政府部门。问题是目前还没有一个真正的可替代系统,尽管还是有一款操作系统也许已经准备接下这个任务,它就是Ubuntu Kylin。 By Rain2014 年 11 月 27 日
Linux中国 小技巧:如何修复Lubuntu中的Docky混合错误 总所周知,Docky是Unix/Linux类系统中的轻量级应用启动器。我是 Lubuntu 和 Docky 的忠实粉丝,因为它们不需要占用我的所有系统资源,这样就可以同时运行更多应用。我在笔记本上使用Docky应用启动器,系统为Lubuntu 14.04. 但是,如果你使用LXDE发行版,你也许肯定遇到过使用Docky时报混合的错误。看下面的截图。 如果不开启混合功能,就不能使用Docky一些特别功能,如3D背景、自动隐藏。如果你想开启这些Docky的功能,那么你需要在你的LXDE系统中开启混合功能。 就像这样,首先安装 xcompmgr包: sudo apt-get install xcompmgr 然后, By Rain2014 年 11 月 27 日
Linux中国 CentOS 下安装 LEMP 服务(nginx、MariaDB/MySQL 和 php) LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作用。正如其名称所暗示的, LEMP 包是由 Linux、nginx、MariaDB/MySQL 和 PHP 组成的。在传统的 LAMP 包中使用的 Apache HTTP 协议服务器性能低下而且难于大规模集群,相比来说 nginx 的高性能及轻量级等特性,正是其的替代方案。 MariaDB 是一款社区支持驱动的 MySQL 数据库的分支,其功能更多性能更佳。PHP,服务端编程语言,具体是由 PHP FastCGI 的增强版 PHP-FPM ... By Rain2014 年 11 月 27 日
Linux中国 教你在 Ubuntu 上使用 LXC 容器 使用容器来保证主机环境的安全性,这个概念早在十年前就已经存在(例如 FreeBSD 的 jail 虚拟化技术),但是直到最近,随着部署云架构需求越来越多,像 LXC 和 Docker 这种 Linux 下的容器才成为被关注的焦点。当然,由于主流厂商(云服务商如亚马逊主推 AWS,微软主推 Azure;发行版如红帽、Ubuntu等)组成的强大靠山,Docker 已经被放在媒体的聚光灯下面,其实,Docker 里面所谓的容器技术是由 LXC 提供的。 你只是一个普通的 Linux 用户,那 Docker/LXC 能为你带来什么好处呢?容器可以将你的应用在不同的 Linux ... By Rain2014 年 11 月 27 日
Linux中国 Linux 有问必答:如何在wget中禁用HTTP转发 提问: 当我用wget获取一个重定向到URL Y的URL X的时候,wget默认会自动获取URL Y。然而我想要强制获取不带重定向的URL X。我该如何禁用wget重定向URL的功能。 在HTTP标准中,重定向响应(带3XX的HTTP响应)说明请求的URL被移到了新的位置。重定向相应接着包含了目标重定向的URL。 像常规的HTTP客户端,wget支持URL重定向(也叫URL转发),意味着当你尝试下载一个重定向的URL时,wget会自动跟随URL重定向获取重定向后的资源。如果你由于一些原因想要禁用URL重定向,并停止3XX的状态码,你可以使用wget的--max-redirect=number选项。这个 By Rain2014 年 11 月 26 日
开源项目 开源项目构筑美丽世界 你或许并没有听说个这5个开源项目,但他们正在致力于挑战一些世界上最大的难题,并切实的改善了人们的生活。这又是开源对世界的一大贡献。你应该了解的5个人道主义开源项目——开源项目构筑美丽世界。 By root2014 年 11 月 26 日
Linux中国 Linux 有问必答:如何修复“hda-duplex not supported in this QEMU binary” 提问: 当我尝试在虚拟机中安装一个新的Linux时,虚拟机不能启动且报了下面这个错误:"unsupported configuration: hda-duplex not supported in this QEMU binary."(不支持的配置:hda-duplex在此QEMU文件中不支持。) 我该如何修复? 这个错误可能来自一个当默认声卡型号不能被识别时的一个qemu bug。 无法完成安装:不支持的配置:hda-duplex在此QEMU文件中不支持 要解决这个问题,按照下面的做。 方案一: virt-manager 在virt-manager中,打开虚拟机的虚拟硬件详细菜单,进入声卡选项,改变默认的设备型号为ac97。 ... By Rain2014 年 11 月 25 日
Linux中国 如何将 Ubuntu14.04 Server 安全的升级到14.10 你可能已经知道如何将你的 Ubuntu 桌面升级到最新版本了,不过如果你用的 Ubuntu Server,而且也正好又希望升级一下的话(前提是,不会影响你的应用。一般来说,对于服务器操作系统,应该采用保守态度。如果不是必须升级才能解决的安全问题,最好不要升级,而是采用各种外部手段来解决。) 如果想从Ubuntu14.04/13.10/13.04/12.10/12.04或者更老的版本升级到14.10,只要遵循下面给出的步骤。注意,你不能直接从13.10升级到14.10。你应该先将13.10升级到14.04在从14.04升级到14.10。下面是详细步骤。 下面的步骤不仅能用于14.10,也兼容于 By Rain2014 年 11 月 25 日
Linux中国 使用GDB命令行调试器调试C/C++程序 没有调试器的情况下编写程序时最糟糕的状况是什么?编译时跪着祈祷不要出错?用血祭召唤恶魔帮你运行程序?或者在每一行代码间添加printf("test")语句来定位错误点?如你所知,编写程序时不使用调试器的话是不方便的。幸好,linux下调试还是很方便的。大多数人使用的IDE都集成了调试器,但 linux 最著名的调试器是命令行形式的C/C++调试器GDB。然而,与其他命令行工具一致,DGB需要一定的练习才能完全掌握。这里,我会告诉你GDB的基本情况及使用方法。 安装GDB 大多数的发行版仓库中都有GDB Debian 或 Ubuntu $ sudo apt-get install gdb By Rain2014 年 11 月 25 日
Linux中国 如何用Puppet和Augeas管理Linux配置 虽然Puppet是一个真正独特的有用工具,但在有些情况下你可以使用一点不同的方法来用它。比如,你要修改几个服务器上已有的配置文件,而且它们彼此稍有不同。Puppet实验室的人也意识到了这一点,他们在 Puppet 中集成了一个叫做Augeas的伟大的工具,它是专为这种使用情况而设计的。 Augeas可被认为填补了Puppet能力的空白,比如在其中一个指定对象的资源类型(例如用于维护/etc/hosts中的条目的主机资源)还不可用时。在这个文档中,您将学习如何使用Augeas来减轻你管理配置文件的负担。 Augeas是什么? Augeas基本上就是一个配置编辑工具 By Rain2014 年 11 月 25 日
Linux中国 在Github和Git上fork之简单指南 以我的经验来看,刚接触Git和GitHub时,最困扰的一件事情就是尝试解决下面的问题:在Git和GitHub上,我能做什么? Git教程往往不会解决这个问题,因为它集中篇幅来教你Git命令和概念,并且不认为你会使用GitHub。GitHub帮助教程一定程度上弥补了这一缺陷,但是它每篇文章的关注点都较为狭隘,而且没有提供关于"Git vs GitHub"问题的概念性概述。 如果你是习惯于先理解概念,再着手代码的学习者,而且你也是Git和GitHub的初学者,我建议你先理解清楚什么是fork。为什么呢 ? Fork是在GitHub起步最普遍的方式。 Fork只需要很少的Git命令, By Rain2014 年 11 月 24 日
Linux中国 Linux下的6个扫雷游戏的翻版 Windows 下的扫雷游戏还没玩够么?那么来 Linux 下继续扫雷吧这是一个雷的时代 :D GNOME Mines 这是GNOME扫雷复制品,允许你从3个不同的预定义表大小(88, 1616, 3016)中选择其一,或者自定义行列的数量。它能以全屏模式运行,带有高分值、耗时和提示。游戏可以暂停和继续。 ace-minesweeper 这是一个大的软件包中的游戏,此包中也包含有其它一些游戏,如ace-freecel,ace-solitaire或ace-spider。它有一个以小企鹅为特色的图形化界面,但好像不能调整表的大小。该包在Ubuntu中名为ace-of-penguins。 XBomb XBomb是针对X Windows系统扫 By Rain2014 年 11 月 24 日
Linux中国 Ansible和Docker的作用和用法 在 Docker 和 Ansible 的技术社区内存在着很多好玩的东西,我希望在你阅读完这篇文章后也能像我们一样热爱它们。当然,你也会收获一些实践知识,那就是如何通过部署 Ansible 和 Docker 来为 Rails 应用搭建一个完整的服务器环境。 也许有人会问:你怎么不去用 Heroku?首先,我可以在任何供应商提供的主机上运行 Docker 和 Ansible;其次,相比于方便性,我更偏向于喜欢灵活性。我可以在这种组合中运行任何程序,而不仅仅是 web 应用。最后,我骨子里是一个工匠,我非常了解如何把零件拼凑在一起工作。Heroku 的基础模块是 Linux Containe By Rain2014 年 11 月 24 日