Linux中国 你知道 Linux 内核是如何构建的吗? 介绍 我不会告诉你怎么在自己的电脑上去构建、安装一个定制化的 Linux 内核,这样的资料太多了,它们会对你有帮助。本文会告诉你当你在内核源码路径里敲下make 时会发生什么。 当我刚刚开始学习内核代码时,Makefile 是我打开的第一个文件,这个文件看起来真令人害怕 :)。那时候这个 Makefile 还只包含了1591 行代码,当我开始写本文时,内核已经是4.2.0的第三个候选版本 了。 这个 makefile 是 Linux 内核代码的根 makefile ,内核构建就始于此处。是的,它的内容很多,但是如果你已经读过内核源代码,你就会发现每个包含代码的目录都有 By Rain2015 年 9 月 11 日
Linux中国 Linux 有问必答:如何解决 Linux 上的 Wireshark 界面僵死 问题: 当我试图在 Ubuntu 上的 Wireshark 中打开一个 pre-recorded 数据包转储时,它的界面突然死机,在我运行 Wireshark 的终端出现了下面的错误和警告。我该如何解决这个问题? (wireshark:3480): GLib-GObject-WARNING **: invalid unclassed pointer in cast to 'GObject' (wireshark:3480): GLib-GObject-CRITICAL ... By Rain2015 年 9 月 11 日
Linux中国 Linux 上将出现一个新的文件系统:bcachefs 这个有 5 年历史,由 Kent Oberstreet 创建,过去属于谷歌的文件系统,最近完成了全部关键组件。Bcachefs 文件系统自称其性能和稳定性与 ext4 和 xfs 相同,而其他方面的功能又可以与 btrfs 和 zfs 相媲美。主要特性包括校验、压缩、多设备支持、缓存、快照与其他漂亮的特性。 Bcachefs 来自 bcache,这是一个块级缓存层。从 bcaceh 到一个功能完整的写时复制文件系统,堪称是一项质的转变。 对自己的问题为什么要出一个新的文件系统中,Kent Oberstreet ... By Rain2015 年 9 月 11 日
Linux中国 RHCSA 系列(三): 如何管理 RHEL7 的用户和组 和管理其它Linux服务器一样,管理一个 RHEL 7 服务器要求你能够添加、修改、暂停或删除用户帐户,并且授予他们执行其分配的任务所需的文件、目录、其它系统资源所必要的权限。 RHCSA: 用户和组管理 Part 3 管理用户帐户 如果想要给RHEL 7 服务器添加账户,你需要以root用户执行如下两条命令之一: # adduser # useradd 当添加新的用户帐户时,默认会执行下列操作。 ... By Rain2015 年 9 月 10 日
Linux中国 如何在 CentOS 7 上安装开源 ITIL 门户 iTOP iTOP是一个简单的基于Web的开源IT服务管理工具。它有所有的ITIL功能,包括服务台、配置管理、事件管理、问题管理、变更管理和服务管理。iTOP依赖于Apache/IIS、MySQL和PHP,因此它可以运行在任何支持这些软件的操作系统中。因为iTOP是一个Web程序,因此你不必在用户的PC端任何客户端程序。一个简单的浏览器就足够每天的IT环境操作了。 我们要在一台有满足基本需求的LAMP环境的CentOS 7上安装和配置iTOP。 下载 iTOP iTOP的下载包现在在SourceForge上,我们可以从这获取它的官方链接。 我们从这里的连接用wget命令获取压缩文件。 # wget h By Rain2015 年 9 月 10 日
Linux中国 Debian GNU/Linux,22 年未完的美妙旅程 在2015年8月16日, Debian项目组庆祝了 Debian 的22周年纪念日;这也是开源世界历史最悠久、热门的发行版之一。 Debian项目于1993年由Ian Murdock创立。彼时,Slackware 作为最早的 Linux 发行版已经名声在外。 22岁生日快乐! Debian Linux! Ian Ashly Murdock, 一个美国职业软件工程师, 在他还是普渡大学的学生时构想出了 Debian 项目的计划。他把这个项目命名为 Debian 是由于这个名字组合了他彼时女友的名字 Debra ... By Rain2015 年 9 月 9 日
Linux中国 FISH:Linux 下的一个智能易用的 Shell FISH(friendly interactive shell)是一个用户友好的命令行 shell,主要是用来进行交互式使用。shell 就是一个用来执行其他程序的程序。 FISH 特性 自动建议 fish 会根据你的历史输入和补完来提供命令建议,就像一个网络浏览器一样。注意了,就是Netscape Navigator 4.0! 漂亮的VGA 色彩 fish 原生支持 term256, 它就是一个终端技术的艺术国度。 你将可以拥有一个难以置信的、256 色的shell 来使用。 ... By Rain2015 年 9 月 9 日
Linux中国 对 Linux 内核的发展方向的展望 ** Linux 4.2 内核涉及到史上最多的贡献者数量,内核开发者 Jonathan Corbet 如是说。** 西雅图报道。Linux 内核持续增长:代码量在增加,代码贡献者数量也在增加。而随之而来的一些挑战需要处理一下。以上是 Jonathan Corbet 在今年的 LinuxCon 的内核年度报告上提出的主要观点。以下是他的主要演讲内容: Linux 4.2 内核已经于上月底释出。Corbet 强调有 1569 名开发者为这个版本贡献了代码,其中 277 名是第一次提交代码。 越来越多的开发者的加入,内核更新非常快,Corbet ... By Rain2015 年 9 月 9 日
Linux中国 请捐助伟大的 ESR 吧,让他能为这个世界继续奉献 作为开源爱好者,你一定读过 ESR(Eric S.Raymond)的里程碑著作《大教堂与集市》,甚至在各种开源集会中多次见过他的身影。 上个月,ESR 在www.patreon.com上发起来一份捐赠众筹,请求大家帮助他,让他能继续为互联网世界奉献。以下是他的众筹全文: Every time you use a Web browser, locate yourself on Google Maps, draw money from an ATM, ... By Rain2015 年 9 月 8 日
Linux中国 4 个开源的命令行邮件客户端 无论你承认与否,email并没有消亡。对那些对命令行至死不渝的 Linux 高级用户而言,离开 shell 转而使用传统的桌面或网页版邮件客户端并不适应。归根结底,命令行最善于处理文件,特别是文本文件,能使效率倍增。 幸运的是,也有不少的命令行邮件客户端,而它们的用户大都乐于帮助你入门并回答你使用中遇到的问题。但别说我没警告过你:一旦你完全掌握了其中一个客户端,你会发现很难回到基于图形界面的客户端! 要安装下述四个客户端中的任何一个是非常容易的;主要的 Linux 发行版的软件仓库中都提供此类软件,并可通过包管理器进行安装 By Rain2015 年 9 月 8 日
Linux中国 如何在 Ubuntu 15.04 下创建一个可供 Android/iOS 连接的 AP 我成功地在 Ubuntu 15.04 下用 Gnome Network Manager 创建了一个无线AP热点。接下来我要分享一下我的步骤。请注意:你必须要有一个可以用来创建AP热点的无线网卡。如果你不知道如何确认它的话,在终端(Terminal)里输入iw list。 如果你没有安装iw的话, 在Ubuntu下你可以使用sudo apt-get install iw进行安装. 在你键入iw list之后, 查看支持的接口模式, 你应该会看到类似下面的条目中看到 AP: Supported interface modes: * ... By Rain2015 年 9 月 8 日
Linux中国 新手指南: Linux 新手应该知道的 26 个命令 当你进入了 Linux 的世界,在下载、安装了某个 Linux 发行版,体验了 Linux 桌面并安装了一些你喜爱和需要的软件之后,应该去了解下 Linux 真正的魅力所在:命令行。每一个 Linux 命令其实就是一个程序,借助这些命令,我们可以办到非常多的事情。下面将会为大家介绍一下几个常用的命令。 如何寻求帮助? 在 Linux 下遇到问题,最重要的是要自己寻求帮助,下面是三种寻求帮助的方法。 man man是 Linux 的帮助手册,即manual。因为大多数程序都会自带手册,所以可以通过man命令获取帮助。执行以后,在man page页面中按q退出。 获取ls的帮 By Rain2015 年 9 月 6 日
Linux中国 RHCSA 系列(二): 如何进行文件和目录管理 在本篇中,我们将回顾一些系统管理员日常任务需要的技能。 RHCSA: 运行文件以及进行文件夹管理 - 第二部分 创建、删除、复制和移动文件及目录 文件和目录管理是每一个系统管理员都应该掌握的必备技能。它包括了从头开始的创建、删除文本文件(每个程序的核心配置)以及目录(你用来组织文件和其它目录),以及识别已有文件的类型。 touch 命令 不仅仅能用来创建空文件,还能用来更新已有文件的访问时间和修改时间。 touch 命令示例 你可以使用 file 来判断一个文件的类型 (在你用文本编辑器编辑之前,判断类型将会更方便编辑)。 file By Rain2015 年 9 月 6 日
Linux中国 在 Ubuntu 上配置高性能的 HHVM 环境 HHVM全称为 HipHop Virtual Machine,它是一个开源虚拟机,用来运行由 Hack(一种编程语言)和 PHP 开发应用。HHVM 在保证了 PHP 程序员最关注的高灵活性的要求下,通过使用最新的编译方式来取得了非凡的性能。到目前为止,相对于 PHP + APC (Alternative PHP Cache) ,HHVM 为 FaceBook 在 HTTP 请求的吞吐量上提高了9倍的性能,在内存的占用上,减少了5倍左右的内存占用。 同时,HHVM ... By Rain2015 年 9 月 6 日
Linux中国 如何在 Linux 上自动调整屏幕亮度保护眼睛 当你开始在计算机前花费大量时间的时候,问题自然开始显现。这健康吗?怎样才能舒缓我眼睛的压力呢?为什么光线灼烧着我?尽管解答这些问题的研究仍然在不断进行着,许多程序员已经采用了一些应用来改变他们的日常习惯,让他们的眼睛更健康点。在这些应用中,我发现了两个特别有趣的东西:Calise和Redshift。 Calise 处于时断时续的开发中,Calise的意思是相机光感应器(Camera Light Sensor)。换句话说,它是一个根据摄像头接收到的光强度计算屏幕最佳的背光级别的开源程序。更进一步地说,Calise可以基于你的地理坐标来考虑你所在地区 By Rain2015 年 9 月 6 日
Linux中国 Linux 小技巧:Chrome 小游戏,让文字说话,计划作业,重复执行命令 重要的事情说两遍,我完成了一个Linux提示与彩蛋系列,让你的Linux获得更多创造和娱乐。 Linux提示与彩蛋系列 本文,我将会讲解Google-chrome内建小游戏,在终端中如何让文字说话,使用at命令设置作业和使用watch命令重复执行命令。 1. Google Chrome 浏览器小游戏彩蛋 网线脱掉或者其他什么原因连不上网时,Google Chrome就会出现一个小游戏。声明,我并不是游戏玩家,因此我的电脑上并没有安装任何第三方的恶意游戏。安全是第一位。 所以当Internet发生出错,会出现一个这样的界面: 不能连接到互联网 按下空格键来激活Google-chrome By Rain2015 年 9 月 5 日
Linux中国 如何使用 Weave 以及 Docker 搭建 Nginx 反向代理/负载均衡服务器 Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器。Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动发现。它可以让我们更加专注于应用的开发,而不是基础架构。Weave 提供了一个如此棒的环境,仿佛它的所有容器都属于同个网络,不需要端口/映射/连接等的配置。容器中的应用提供的服务在 weave 网络中可以轻易地被外部世界访问,不论你的容器运行在哪里。在这个教程里我们将会使用 weave 快速并且简单地将 nginx web 服务器部署为一个负载均衡器,反向代理一个运行在 By Rain2015 年 9 月 5 日
Linux中国 如何在 Quagga BGP 路由器中设置 IPv6 的 BGP 对等体和过滤 在之前的教程中,我们演示了如何使用Quagga建立一个完备的BGP路由器和配置前缀过滤。在本教程中,我们会向你演示如何创建IPv6 BGP对等体并通过BGP通告IPv6前缀。同时我们也将演示如何使用前缀列表和路由映射特性来过滤通告的或者获取到的IPv6前缀。 拓扑 教程中,我们主要参考如下拓扑。 服务供应商A和B希望在他们之间建立一个IPv6的BGP对等体。他们的IPv6地址和AS信息如下所示。 对等体IP块: 2001:DB8:3::/64 供应商A: AS 100, 2001:DB8:1::/48 供应商B: AS 200, 2001:DB8:2::/48 CentOS/RHEL安装Quagga 如果Quagga还没有安装,我们可 By Rain2015 年 9 月 4 日
Linux中国 如何为你的平台部署一个公开的系统状态页 如果你是一个系统管理员,负责关键的 IT 基础设置或公司的服务,你将明白有效的沟通在日常任务中的重要性。假设你的线上存储服务器故障了。你希望团队所有人达成共识你好尽快的解决问题。当你忙来忙去时,你不会想一半的人问你为什么他们不能访问他们的文档。当一个维护计划快到时间了你想在计划前提醒相关人员,这样避免了不必要的开销。 这一切的要求或多或少改进了你、你的团队、和你服务的用户之间沟通渠道。一个实现它的方法是维护一个集中的系统状态页面,报告和记录故障停机详情、进度更新和维护计划等。这样,在故障期间你避免了 By Rain2015 年 9 月 3 日
Linux中国 在 Ubuntu 15.04 中如何安装和使用 Snort 对于网络安全而言入侵检测是一件非常重要的事。入侵检测系统(IDS)用于检测网络中非法与恶意的请求。Snort是一款知名的开源的入侵检测系统。其 Web界面(Snorby)可以用于更好地分析警告。Snort使用iptables/pf防火墙来作为入侵检测系统。本篇中,我们会安装并配置一个开源的入侵检测系统snort。 Snort 安装 要求 snort所使用的数据采集库(DAQ)用于一个调用包捕获库的抽象层。这个在snort上就有。下载过程如下截图所示。 解压并运行./configure、make、make install来安装DAQ。然而,DAQ要求其他的工具,因此,./configure脚本会生成 By Rain2015 年 9 月 3 日
Linux中国 Linux 日志管理指南 管理日志的一个最好做法是将你的日志集中或整合到一个地方,特别是在你有许多服务器或多层级架构时。我们将告诉你为什么这是一个好主意,然后给出如何更容易的做这件事的一些小技巧。 集中管理日志的好处 如果你有很多服务器,查看某个日志文件可能会很麻烦。现代的网站和服务经常包括许多服务器层级、分布式的负载均衡器,等等。找到正确的日志将花费很长时间,甚至要花更长时间在登录服务器的相关问题上。没什么比发现你找的信息没有被保存下来更沮丧的了,或者本该保留的日志文件正好在重启后丢失了。 集中你的日志使它们查找更快速, By Rain2015 年 9 月 3 日
Linux中国 在 Ubuntu 中如何安装或升级 Linux 内核到4.2 Linux 内核 4.2已经发布了。Linus Torvalds 在 lkml.org 上写到: 通过这周这么小的变动,看来在最后一周 发布 4.2 版本应该不会有问题,当然还有几个修正,但是看起来也并不需要延迟一周。 所以这就到了,而且 4.3 的合并窗口现已打开。我已经有了几个等待处理的合并请求,明天我开始处理它们,然后在适当的时候放出来。 从 rc8 以来的简短日志很小,已经附加。这个补丁也很小... 新内核 4.2 有哪些改进?: ... By Rain2015 年 9 月 3 日
Linux中国 Linux有问必答:如何启用Open vSwitch的日志功能以便调试和排障 问题 我试着为我的Open vSwitch部署排障,鉴于此,我想要检查它的由内建日志机制生成的调试信息。我怎样才能启用Open vSwitch的日志功能,并且修改它的日志等级(如,修改成INFO/DEBUG级别)以便于检查更多详细的调试信息呢? Open vSwitch(OVS)是Linux平台上最流行的开源的虚拟交换机。由于当今的数据中心日益依赖于软件定义网络(SDN)架构,OVS被作为数据中心的SDN部署中的事实标准上的网络元素而得到飞速应用。 Open vSwitch具有一个内建的日志机制,它称之为VLOG。VLOG工具允许你在各种网络交换组件中启用并自定义日志,由VLOG生成 By Rain2015 年 9 月 2 日
Linux中国 RHCSA 系列(一): 回顾基础命令及系统文档 RHCSA (红帽认证系统工程师) 是由 RedHat 公司举行的认证考试,这家公司给商业公司提供开源操作系统和软件,除此之外,还为这些企业和机构提供支持、训练以及咨询服务等。 RHCSA 考试准备指南 RHCSA 考试(考试编号 EX200)通过后可以获取由 RedHat 公司颁发的证书. RHCSA 考试是 RHCT(红帽认证技师)的升级版,而且 RHCSA 必须在新的 Red Hat Enterprise Linux(红帽企业版)下完成。RHCT 和 ... By Rain2015 年 9 月 2 日