linux中国_ 发布的文章

问题:我想从Red Hat 的标准仓库中下载一个RPM包,我能使用yum命令来下载一个RPM包但是不进行安装吗?

yum是基于Red Hat的系统(如CentOS、Fedora、RHEl)上的默认包管理器。使用yum,你可以安装或者更新一个RPM包,并且他会自动解决包依赖关系。但是如果你只想将一个RPM包下载到你的系统上该怎么办呢? 例如,你可能想要获取一些RPM包在以后使用,或者将他们安装在另外的机器上。

这里说明了如何从yum仓库上下载一个RPM包。

方法一:yum

yum命令本身就可以用来下载一个RPM包,标准的yum命令提供了--downloadonly(只下载)的选项来达到这个目的。

$ sudo yum install --downloadonly <package-name>

默认情况下,一个下载的RPM包会保存在下面的目录中:

/var/cache/yum/x86_64/[centos/fedora-version]/[repository]/packages

以上的[repository]表示下载包的来源仓库的名称(例如:base、fedora、updates)

如果你想要将一个包下载到一个指定的目录(如/tmp):

$ sudo yum install --downloadonly --downloaddir=/tmp <package-name>

注意,如果下载的包包含了任何没有满足的依赖关系,yum将会把所有的依赖关系包下载,但是都不会被安装。

另外一个重要的事情是,在CentOS/RHEL 6或更早期的版本中,你需要安装一个单独yum插件(名称为 yum-plugin-downloadonly)才能使用--downloadonly命令选项:

$ sudo yum install yum-plugin-downloadonly

如果没有该插件,你会在使用yum时得到以下错误:

Command line error: no such option: --downloadonly

方法二: Yumdownloader

另外一个下载RPM包的方法就是通过一个专门的包下载工具--yumdownloader。 这个工具是yum工具包(包含了用来进行yum包管理的帮助工具套件)的子集。

$ sudo yum install yum-utils

下载一个RPM包:

$ sudo yumdownloader <package-name>

下载的包会被保存在当前目录中。你需要使用root权限,因为yumdownloader会在下载过程中更新包索引文件。与yum命令不同的是,任何依赖包不会被下载。


via: http://ask.xmodulo.com/yum-download-rpm-package.html

译者:theo-l 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

本书由Linux中国站长wxy & Linux中国翻译组译者Tinyeyeser共同翻译并亲力推荐,是通往Perl大师之路必读经典书籍,它体现了一种编程思维,能够帮你解决很多实际的问题。

活动内容

活动时间:2015年3月19日-2015年3月30日

活动要求:

活动形式一:在新浪微博转发本微博,并@ 一位你身边用过perl语言的人,即有机获赠本书。每转发过百,送出一本。

微博地址:http://weibo.com/1772191555/C9h43bNgW

活动形式二:在Linux中国(http://linux.cn)试读图书样张,并进行评论,或说说你喜爱perl的理由,分享一下使用perl 过程中遇到过哪些有趣/神奇的事情

活动奖品:《精通Perl(第2版)》图书一本。

特此注意:

1、本站论坛评论方式参与的用户,评论前需登录您的Linux中国账号,匿名评论无效

2、微博用户参与活动,活动结束后注意查看@Linux中国\_笑语彦然 微博公布的中奖名单或留意您的微博私信,本站用户参与活动,注意查看您注册Linux中国时所填写的邮箱。 我们会通过微博私信以及电子邮件两种方式获取您的邮寄信息。

基本信息

作者: (美)brian d foy

译者: 王兴宇 刘宸宇

出版社:电子工业出版社

ISBN:9787121254192

出版日期:2015 年3月

开本:16开

页码:395

版次:2-1

编辑推荐

  • 探索高级的正则表达式功能
  • 如何避免程序的常见安全问题
  • 对 Perl 程序的性能分析和基准测试可以让你发现改进之处
  • 清理 Perl 代码,使之更加直观和易读
  • 了解 Perl 如何持续跟踪软件包内的变量
  • 动态定义子程序
  • 不必改动原有代码即可提升模块
  • 使用位操作和位向量更有效地存储更大的数据
  • 学习如何检测 Perl 中未报告的错误
  • 深入学习日志、数据持久化和绑定变量的魔法

内容简介

《精通Perl(第2版)》作者brian d foy 用他生动的第一人称视角向各位读者介绍了精彩的Perl 高级语言知识以及丰富的实战工具与实用技巧。《精通Perl(第2版)》各章的内容相对独立,您完全可以根据自己的兴趣或需要直达你所需要的章节。
《精通Perl(第2版)》的读者主要面对具有较多经验的Perl 编程人员。阅读本书前,建议阅读本书的姊妹篇《Perl 语言入门》和《Perl 进阶》。作者在这本书里针对调试、优化、错误和日志等方面均有深入解析,也揭示了Perl 中如绑定变量、持久化存储等各种魔法般的特性和功能的实现细节和用途。书中还对如何开发、调试自己的模块,以及如何做出更适合使用的模块做了详细介绍。
总之,本书可以作为读者在向Perl 高手进阶过程中的一个助力器,希望读者能在阅读过程中深入思考,加入自己的理解,用Perl 来完成一件件神奇的事情。

作者简介

brian d foy是一名多产的 Perl 培训讲师和作家,其出版的 The Perl Review 帮助人们通过教育、咨询、代码审查等方面来学习和使用 Perl。

译者序

  --献给逝去的和新生的纪念
  作为译者,总是有一些特权,比如说,可以在翻译的书前面,用铅字写一些自己想说的话。当然,作为读者,您可能不喜欢,不过,请您谅解我们激动的心情,愿意的话,您可以看看我们的吐槽。
  我的父亲是一个传统的老知识分子,虽然我自己并不成器,但是他一直告诉我,要我写一些东西出来,留一些文字,因此能出版一些自己的文字一直是我心里长久的梦想。不过,我在各种方面的积淀还远远不够,所以直到现在也没有足以称道的文字可以出版。
  在一个偶然的机会,我得到了付睿老师的委托,和刘宸宇一同接下了这本《精通Perl》的翻译工作。虽然翻译工作和出版自己的文字还不同,但是我想这也是我给去世的父亲的一点纪念吧。
  Perl 我用了有十多年了吧,这门语言基本上算是我从事互联网行业以来第一门真正掌握和熟悉的语言了。最初是从一本薄薄的《Perl语言入门》,大约花了一周入门的。当时正值第一波的互联网热潮,工作方面使用Perl甚多,也陆续看过Perl方面的各种书籍,但是从来没有想到自己会有机会翻译一本Perl方面的书,更别说是这本经典Perl三部曲之一的《精通Perl》。
  虽然现在Perl用的比较少了,但是今年Larry Wall先生来华访问时,还是专门去朝觐了一番。然后不久,就接到了付睿老师的委托,可谓有缘。
  我平时的工作比较忙,而且也组织运作着一个翻译组:LCTT(Linux中国翻译组- http://lctt.github.io/),业余时间都占满了,所以当时对是否要接下翻译工作有些犹豫。我和LCTT的核心成员之一刘宸宇(tinyeyeser)商量了一番,感觉这个事情还是很有意义的,所以我们两个共同接下了对这本书的翻译工作。 王兴宇

  我要把这本书献给我刚出生的小天使,翻译完交稿不到10天,她便降临到我的世界里,成为了我生活中不可缺少的一部分。
  一直以来,我喜欢翻译对话、评论、调侃性质的技术博客等文章,钟情于感受那种面对面交流的感觉;而技术书籍这种相对较为正式的翻译,对于我来说,反而是件痛苦的事,哪怕只翻译半本(前言、附录及前8章)。但是当我真正深入本书,与brian d foy 正面交锋时,我发现,这不正是我所熟悉的面对面的对话吗?是的!不同于一般的技术书籍,大师的行文,几乎所有的主观句子都是以第一人称"I"开头,这就好像他坐在你面前,手把手讲授一样,生动、客观、幽默、立体!因此,我和王兴宇(wxy)在翻译的时候,把大部分"I"翻译成了"我们",这样既忠于作者的语境,也更贴合中国课堂上老师的讲课习惯。
  冯德伦的电影《太极》里有一句词:"人这一辈子,干好一件事就足够了"。我自认为不是一个有长性的人,一件事情很难坚持做到最好,总是觉得60分及格就可以了。因此,翻译过程中一度出现了厌烦情绪,但我很高兴自己成功坚持了下来。我要感谢几个月来,整个翻译过程中一直陪伴我督促我的媳妇儿,她怀着身孕,每当我消沉的时候,都会在我耳边给予
  我支持和鼓励,"翻译完了吗?翻译完了吗?赶紧翻译啊!好好翻译啊!"每个成功男人的背后,都有一个伟(lao)大(dao)的女人。我爱这个唠叨的女人! 刘宸宇

  Perl 作为老牌的编程语言,其成熟度和应用广泛令人称道,也是系统管理员和科研工作所必备的技能之一,因此,我们希望这本书的再版翻译,能够帮助读者进一步掌握Perl 语言的应用,也希望能够为开源社区反哺更多的智慧。
  将来,如果有机会,我们也希望这本书能够以某种开源方式,分享给社区,并接受社区的不断反馈和完善,成为一本真正有生命力的书籍。
  一本书的出版,其实要感谢很多人,虽然俗套,但是我们觉得依然有必要,占用一点小小的空间感谢他们: 感谢我们的家人的支持。 感谢我们的同事和领导的支持。 感谢编辑付睿老师的信任和委托。 感谢编辑李利健老师的辛勤审校。 感谢所有不知名的工作人员的辛勤工作。 王兴宇&刘宸宇

试读样章: 【第四章】 【第五章】

购买链接:http://product.china-pub.com/4594222

提问: 我想要知道运行中脚本子shell的进程id。我该如何在shell脚本中得到PID。

当我在执行shell脚本时,它会启动一个叫子shell的进程。作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为“批处理进程”)。

在某些情况下,你也许想要知道运行中的子shell的PID。这个PID信息可以在不同的情况下使用。比如,你可以使用shell脚本的PID在/tmp下创建一个唯一的临时文件。有时侯脚本需要检测所有运行的进程,它可以从进程列表中排除自身的子shell。

在bash中,子shell进程的PID存储在一个特殊的变量‘$$’中。这个变量只读,你不可以在脚本中修改它。比如:

#!/bin/bash

echo "PID of this script: $$"

上面的脚本会得到下面的输出:

PID of this script: 6583

除了$$, bash shell还会导出其他的只读变量。比如,PPID存储子shell父进程的ID(也就是主shell)。UID存储了执行这个脚本的当前用户ID。比如:

#!/bin/bash

echo "PID of this script: $$"
echo "PPID of this script: $PPID"
echo "UID of this script: $UID"

输出是:

PID of this script: 6686
PPID of this script: 4656
UID of this script: 1000

上面输出中,PID每次执行都会变化。这个因为每次运行都会创建一个新的shell。另一方面,PPID每次都会一样只要你在同一个shell中运行。

对于所有bash内置变量列表,参考man页。

$ man bash

via: http://ask.xmodulo.com/process-id-pid-shell-script.html

译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

以在开源界粗鲁而闻名的 Linux 创始人 Linus Torvalds 在最新的内核4.0-rc3中接受合并了一个“冲突准则(code of conflict)”文档。这一篇 Greg KH 写的文字,旨在限制代码评审过程中的语言暴力现象。

[冲突准则](https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/CodeOfConflict?id=b0bc65729070b9cbdbb53ff042984a3c545a0e34)
----------------

与“传统”的软件开发方式相比,Linux 内核的开发是相当个人化的。  
你的代码及其背后的想法会被仔细评审,而这往往导致了别人的评点和  
批评。评审总是可以让代码在进入内核前得到改进。我们这样认为,是  
因为我们知道每个人都希望为了 Linux 的全面成功而尽力做到最好。  
这一开发过程已经被我们所创建的迄今为止最强大的操作系统而证实,  
我们并不希望做任何可能导致提交质量降低和整体品质劣化的事情。  
  
但是,如果任何人在这一过程中觉得受到了侮辱、歧视或其它不舒服的  
感觉,那就是不可接受的。如果发生了这些事情,请联系 Linux 基金  
会的技术委员会 ([email protected])或其成  
员,他们会尽最大的努力解决这个问题。关于技术委员会及其职责,请  
参看: 
  http://www.linuxfoundation.org/programs/advisory-councils/tab

作为代码评审者,请您保持文明并将关注点放在技术问题上。对于我们  
所有人来说,评审过程的最终结果于双方都有提升。请牢记 Bill 和   
Ted 的名言"Be excellent to each other."

Linus 对此准则的提出评价说,“让我们看看它是否有效果。”

也让我们拭目以待,看看是否内核开发社区能从此变得文雅一些?

去年随着Debian 以 systemd 作为 init 管理器的决议,以及随后的 init 系统投票,有三个人从 Debian 技术委员会退出:Colin Watson, Ian Jackson, 以及 Russ Allbery。现在,这些空缺席位现已由现有的技术委员会成员任命。

新任命的技术委员会成员是 Sam Hartman, Tollef Fog Heen 以及 Didier Raboud。这些新成员加上Bdale Garbee, Don Armstrong, Andreas Barth, Steve Langasek 以及 Keith Packard 组成了现在的Debian技术委员会。由Debian章程确定的 Debian 技术委员会(TC)负责对 Debian 项目中的技术争端做出最后的决定,他们在去年所有的关于 init 系统的讨论中变得十分重要。

新技术委员会成员的委任公告可以从 debian-devel-announce列表 中获悉。


via: http://www.phoronix.com/scan.php?page=news_item&px=Debian-TC-Three-Appointments

作者:Michael Larabel 译者:alim0x 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

虽然几个月前,就尝试过在二月份之前发布 Debian 8.0,但是似乎我们有可能在四月份就看到这个已经等待了太久的 Jessie。

在昨天,Debian 发布组的 Niels Thykier 写道: “...从这一点看,四月份发布也许是可能的,不过,这需要我们埋头苦干,把所有剩下的 bug 搞定才行。”

截止至昨晚,还有55个影响 Sid 和 Jessie 的 RC bug 没解决,非关键性的软件包上还有17个 RC bug,而且发行注记也需要做很多修订。