标签 Linux 下的文章

在2013年结束前,Linux Torvalds宣布Linux内核3.13分支中的第六个候选版本已发布,即时可用。

Linux内核3.13 RC6仅包含了很小数量的一些提交,使得此次候选版本成为了迄今体积最小的一个,至少在这一个开发周期中如此。

Linus Torvalds在官方发布中说道:“正如我们之前期望的那样,整个一周假期都没有什么大的bug出现。因此,我们这次只有一些小的随机更新:驱动方面(例如无限宽带、GPU、CPUfreg、libata、块设备等),一些小的文件系统修复(ext4/jdb2),以及一些ARM SoC方面的更新。x86、perCPU 和 cgroup 方面的更新很少。甚至没什么值得注意的,只有81个很平常的小提交。”

大神平常是非常健谈的,但是对于年底的这次小发布却如此惜字如金,估计是为了避免更多的非议,打算过个好年。

Linus Torvalds还在12月18号庆祝了自己的生日,但并没有大操大办。

Linux内核 3.13 RC6 的亮点

  • 修正了音频pins的数目(drm/radeon/dce6)
  • 在Cayman上禁用了SS(drm/radeon/dpm)
  • 检查了扬声器分配和SAD代码中的0计数(drm/radeon)
  • 修复了拔掉块设备时的内存泄露问题
  • 修复了SDHI资源的大小
  • 修复了执行缓存中分配内存失败后仍然释放引用的问题(drm/i9150)
  • 修复了 resetstatus 中对 batchobj 的错误引用释放
  • Sandybridge+ 启用了正确的 GMCH\_CTRL 注册
  • 对废弃的消息 JBD->JBD2 进行了重命名
  • 增加对 ValleyView Soc 的支持
  • 增加对 PWM 背光电源的支持

完整的修改、改进以及修复列表请参看官方修改日志

下载Linux内核3.13 RC6:

请注意这是一个测试版本,仅用于测试目的,请不要用在任何生产环境中。


via: http://news.softpedia.com/news/Linus-Torvalds-Releases-Last-Linux-Kernel-3-13-RC-for-2013-412622.shtml

译者:Mr小眼儿 校对:Caroline

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

Ubuntu可能不像你想象的那么安全.据报道,Linux驱动的发行版在主目录外存储Wi-Fi配置文件,这使得它们更易于被访问。这包括Wi-Fi配置文件的密码。报道说,一个用户指出,Wi-Fi密码在Ubuntu上是不加密的,因为它们都存储在主目录之外。此文件夹虽然可以在操作系统的安装过程中进行加密。

"最近,我偶然发现了一个事实,NetworkManager默认存储WiFi配置文件包括明文密码到/etc/NetworkManager/system-connections/。我认为当他/她开启了主目录加密时,肯定不希望存储密码到主目录之外,应该以某种方式纠正。" - Softpedia引用邮件列表中Per Guth的话。

这个问题显然是为了让“所有用户都可以连接到这个网络”,即默认情况下启用该选项的结果。为了关掉此功能,用户必须打开Network Indicator,然后去Edit Connection。然后选择在Edit上的Select Network and clock。在General选项卡,取消勾选,以将其关闭。

取消选中该选项据说会移动这个密码进入到所需的文件夹(主目录),但Softpedia报告推测,大多数用户不会注意到这个问题。Canonical是否会进行任何更改,还有待观察。


via: http://www.efytimes.com/e1/fullnews.asp?edid=125483

译者:Akagi201 校对:wxy

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

Linux无处不在。大到空间站,小到微波炉,都能看到Linux的强大威力。”可能你听过很多前面这样的描述,也许你会想“真的假的?是夸张?还是确实如此?”我可以负责任的告诉你,的确如此!那些世界上最大的公司都在使用Linux。也许听到那些公司的名字你都不会相信,那么,准备好环游世界吧!我会向你展示Linux到底在哪,人们又是如何使用Linux的~

政府

很明显,大多数政府使用Linux的主要原因有两个,一是便宜,二是灵活。这两者其他操作系统都无法做到。下面列出了世界范围内使用Linux的政府名单:

  • 美国 - 从2001年7月起,白宫开始向基于Linux的红帽操作系统和ApacheHTTP服务器迁移,迁移工作于2009年2月结束。2009年10月,白宫选择Drupal作为其主要的服务器内容管理系统。

美国国防部使用Linux - “美国陆军是安装红帽Linux的最庞大个体,而美国海军核潜艇舰队也运行着Linux”。

2006年,美国联邦航空管理局发表声明,仅用了预定时间的三分之一就完成了向红帽企业版Linux的迁移,此举共省下了1500万美元。

美国国家核安全管理局运行着世界上速度排名第十的超级计算机 —— IBM Roadrunner,它使用的就是红帽企业版Linux,它的操作系统为Fedora

美国佛罗里达Largo市政府使用Linux,“在全市范围内广泛节省了大量开支”,从而赢得了国际赞誉。

2012年6月,美国海军与雷神公司(Raytheon)签署了一项将近2800万美元的合同,后者将为其Northup-Grumman MQ8B型火力侦察无人机的垂直起降舰队安装Linux地面站控制软件。合同中包含了马里兰州克森特河海军航空站为Linux系统的准备工作已经先行支付的 $5,175,075美元。

  • 德国 - 2003年,慕尼黑市政府决定将其14000台桌面系统迁移到Debian的一个定制版 —— LiMux。到了2008年11月,尽管超过80%的工作岗位已经在使用诸如OpenOffice、Firefox和Thunderbird这样的自由软件,但是由于一直专注于在较小的拓展范围内巩固政府员工对Linux的价值认知,因此,五年时间桌面系统的迁移量仅仅只完成了20%。但是到了2011年底,超过9000个桌面系统已经在运行Linux,稍后没多久,慕尼黑政府宣布Linux的迁移工作取得了巨大成功,总共为全市节省了超过1100万欧元(约合1400万美元)的开支。

德国联邦就业办公室已经将13000台公共工作站从Windows NT迁移到了OpenSuse

  • 法国 - 法国议会已经转为使用Ubuntu桌面系统,而法国农业部也已经在使用Mandriva Linux。

2007年,法国的国家警察部队 —— 国家宪兵,由于担心升级到Vista会产生额外的培训开支,于是开始将他们的90000台桌面系统从Windows XP更换为Ubuntu,紧接着还成功的部署了OpenOffice。整个迁移工作应该会在2015年结束。从2004年到2008年,该部门已经在软件许可证方面节省了超过5000万欧元。

  • 南非 - 南非社会安全局(SASSA)由于预算和基础设施的限制,为50家农业网站部署了多站点Linux桌面系统。
  • 土耳其 - 2003年,土耳其政府决定创建自己的Linux发行版 —— Pardus。该发行版由UEKAE(电子和密码国防研究所)开发。2005年12月官方发布了第一版Pardus1.0。
  • 菲律宾 - 2010年,菲律宾开始使用部署在Ubuntu上的国家投票系统。
  • 马来西亚 - 2010年7月,马来西亚已经将全国724个行政部门中的703个,转为采用基于Linux操作系统的自由软件。援引其政务司司长的话,“Linux之所以能被大家普遍接受,是因为它质量更好、更可靠、更灵活、也更便宜”。
  • 中国 - 国有“爱存不存”银行(ICBC,有人也叫工商银行)以它的web服务器和一个新的终端平台为基础,已经在其全部20000个营业网点安装了Linux。

这个国家为了其技术独立,仅仅使用Linux作为其龙芯处理器家族的操作系统。

  • 古巴 - 来自古巴大学信息科学专业的学生们开发了他们自己的Linux发行版——Nova,为的就是替代政府与公民电脑上的微软Windows操作系统,该项目现在已经得到了古巴政府的支持,并成功部署了超过8000台电脑。
  • 俄罗斯 - 2010年底,弗拉基米尔·普京签署了一项计划,到2012年第二季度,俄联邦政府全部转为使用包括Linux在内的自由软件。
  • 荷兰 - 荷兰警方的因特网调查研究部门(iRN)只使用2003年以来在因特网上公开源代码的基于开源标准的自由和开源软件。使用Ubuntu的工作站已经超过了2200个。
  • 西班牙 - 西班牙的安达卢西亚自治区政府在2004年开发出了他们自己的Linux发行版——Guadalinex。
  • 巴基斯坦 - 巴基斯坦政府于2002年建立了一个技术资源调度部门,组织专业人员交流观点、协调相关活动、教授用户使用替代的自由软件。对于贫穷的国家来说,公共投资的回报很少,Linux自然成为了一个合适的选择。巴基斯坦正在公立学校和大学中使用开源软件,并希望在Linux上运行所有的政府服务。
  • 印度 - 印度喀拉拉邦政府于2001年发表了关于从国家IT政策层面支持自由软件的官方声明。当年7月,喀拉拉邦首府Trivandrum举办了印度历史上第一届自由软件大会 —— “自由第一!”,大会上Richard Stallman还宣布了印度自由软件基金会的成立。从诸如“IT@学校”等几个重大项目可以看出,从那时起,喀拉拉邦的IT政策已经被自由和开源软件深刻影响,也许这是目前世界范围内专门针对Linux的最新拓展政策了,而这也促成了2009年自由与开源软件国际中心(ICFOSS)的形成。

教育

“教育是改变世界的最有力武器” —— 纳尔逊·曼德拉。自由软件应当成为教育系统的一部分,一些国家已经为了将自由软件与自身教育系统整合做出了相当斐然的工作。

  • 儿童计算机 - OLPC XO-1项目(之前也叫做MIT100美元笔记本电脑项目或儿童计算机项目),是一种运行Linux的廉价笔记本电脑,这种电脑将被分发到数百万个儿童手中,它是“每个孩子一人一本(One Laptop Per Child - OLPC)”项目的一部分,主要在发展中国家推广。
  • 中国 - 中国政府正打算购买1500万台Linux龙芯电脑作为其支持国内产业计划的一部分。另外江苏省还打算从2009年起,为农村中学15万台使用龙芯处理器的电脑安装Linux。
  • 意大利 - 2005年9月,意大利城市Bolzano的总共16000名学生,使用上了定制的Linux发行版(FUSS Soledad GNU/Linux)。
  • 俄罗斯 - 2007年10月,俄罗斯声明它的所有学校都将运行Linux,此举可以避免当前未经授权软件的许可证付费问题。
  • 瑞士 - 瑞士第二大城市日内瓦学校中的9000台电脑改用Linux和OpenOffice。
  • 格鲁吉亚 - 2004年,格鲁吉亚开始在所有电脑上和LTSP瘦客户机上运行Linux,主要使用的是Kubuntu、ubuntu和基于Fedora的精简版发行版。
  • 菲律宾 - 菲律宾已经部署了13000台Fedora桌面系统,前1万台已经由Advances Solutions公司于2007年部署完毕。另外还有1万台Edubuntu和Kubuntu正在计划中。
  • 印度 - 印度的喀拉拉邦政府声明,他们将在2650所公立或半公立高校中,只使用基于Linux平台的自由软件,用于计算机教育。印度的Tamilnadu也计划为当地学生分发1万台装配Linux的笔记本。

印度政府为学生提供的预装Linux操作系统的笔记本电脑售价还不到1500卢比(约合35美刀)。

  • 德国 - 2012年,巴伐利亚学院Keibniz超级计算机中心发布了超级计算机SuperMUC,排名世界第四。它基于x86架构,搭载了155000个处理器,最大运算速度3千万亿次,324T RAM内存。它的操作系统为SUSE Linux Enterprise Server。

德国还宣布,33所大学总共56万名学生都将转为使用Linux。

  • 委内瑞拉 - 2009年,委内瑞拉教育部发起了一个名为Canaima-educativo的项目,为所有公立学校的学生提供搭载“Canamita”的笔记本电脑,电脑预装了基于Canaima Debian的Linux发行版,另外还安装了开源教育内容。

商业与非营利性领域

Linux在商业领域的服务器上有非常广泛的应用,而且已经持续了很长一个时期。另外,Linux还在企业环境中作为雇员的桌面平台广泛使用,商用的解决方案主要包括红帽企业版、SUSE Linux企业版以及Ubuntu。

  • 亚马逊 - Amazon.com,美国网络零售商,在其“商业帝国的几乎每个角落”都使用了Linux。
  • Google - Google使用了Ubuntu的一个内部版本Goobuntu。
  • 维基百科 - 维基百科在2008年底将其服务器迁移到了Ubuntu,之前使用的是红帽企业版和Fedora的组合。
  • 梦工厂 - 梦工厂动画公司自从2001年开始使用Linux,总共使用了超过1000台Linux桌面系统和3000台Linux服务器。
  • IBM - IBM为Linux的开发做了大量的工作,桌面系统和服务器端都有使用Linux。公司还有一条电视广告语:IBM百分百支持Linux。
  • 纽约证券系统 - 纽约证券系统在Linux上运行它的交易应用程序。
  • Novell - Novell在2004年从Windows回归Linux。到2006年4月,其一半的员工,共5500名,成功转为使用Linux,到11月,这一比例达到了八成。
  • 伦敦证券交易所 - 伦敦证券交易所使用基于Linux的MilleniumIT交易软件作为它的的交易平台,2011-12年间,从windows迁移到Linux为其节省至少1千万英镑开支。
  • 巴西银行 - 巴西最大的国有银行——巴西银行,除了个别企业系统需要运行一些特定的硬件以外,已经将几乎所有的桌面系统换为了Linux。他们从2002年开始迁移,各分支机构和ATM都运行这Linux,选择的发行版是Open SUSE。
  • 杜克航空 - 杜克航空(DukeJets)租赁公司,2012年从Windows转向了Ubuntu Linux,他们的运营管理套件也变为了Ubuntu帮忙设计的基于Web的航空管理软件。
  • Mindbridge - Mindbridge软件公司,2007年9月宣布,已经将一大批Windows服务器更换为一部分Linux服务器和一部分BSD服务器,同时它声称节省了“相当大的一笔钱”。
  • Wotif - Wotif是澳大利亚一家酒店预订网站,为了保持其业务增长需要,也从Windows转向了Linux服务器。
  • 维珍航空 - 美国维珍航空公司是一家低成本航空公司,使用Linux搭载它的机上娱乐系统RED。
  • Ernie Ball - Ernie Ball最广为人知的就是它的Super Slinky吉他弦,从2000年开始就开始使用Linux作为它的桌面操作系统。
  • 芝加哥商品交易所 - 芝加哥商品交易所所有的电脑都是Linux系统,已经处理了价值超过10的15次方这么多的金融交易。
  • 伊莱克斯冰箱 - 伊莱克斯的“无限i厨房”冰箱是一款使用Linux操作系统的智能电冰箱,搭载嵌入式400Mhz飞思卡尔i.MX25处理器,128MB RAM和480x800分辨率触摸屏。
  • KLM - KLM,荷兰皇家航空公司,使用基于Linux的开源软件作为它KLM的WebFarm。
  • 加拿大航管公司 - 加拿大航管公司2011年推出了新的互联网飞行计划系统,由Python编写,在红帽Linux上运行。
  • Kim Cascone - 2009年,美国电子音乐作曲家Kim Cascone将他的音乐工作室、演出使用和行政部门电脑系统从苹果Mac换成了Ubuntu。
  • Chi-X - 泛欧洲股权交易所Chi-X在Linux上运行它的MarketPrizm交易平台软件。
  • 标致 - 欧洲汽车制造商标致,2007年宣布计划部署近2万个Novell公司的SUSE Linux企业版桌面系统以及2500个SUSE Linux企业版服务器。
  • 加州联合银行 - 加州联合银行2007年1月宣布,为了降低支出,统一将IT基础设备更换为红帽企业版Linux。
  • 《Laughing Boy》 - 2004年,由所有者Geoff Beasley指导的唱片《Laughing Boy》,在音频录制的过程中,由于间谍软件问题,从Windows迁移到了Linux。

科研领域

  • NASA - NASA已经将国际空间站从Windows XP迁移到了Debian 6。
  • 朴茨茅斯大学 - 英国的朴茨茅斯大学部署了一台“性价比超高”的高性能计算机,用来分析全世界范围内的数据,运行仿真算法测试当前的宇宙理论。它的操作系统就是Scientific Linux。朴茨茅斯大学的David Bacon博士说:“我们的宇宙学研究所恰好处在一个绝佳位置,这样我们使用这种高性能计算机就可能取得探索宇宙的真正突破,它可以分析最新的天文观测,还能计算令人难以置信的新理论结果…… 通过选择Dell的工业化标准硬件和开源软件,我们将那些通常用于许可证和授权的支出节省下来。”
  • 天河超级计算机 - 2010年10月,作为当时世界上最快的超级计算机,位于中国天津的国家超级计算机中心的天河1号运行的就是Linux。
  • 多伦多大学 - 加拿大最大的超级计算机,位于多伦多大学的IBM iDataPlex集群计算机使用的操作系统也是Linux。
  • 欧洲核子研究中心 - 欧洲核子研究中心(CERN)和费米国立加速器实验室(Fermilab)在工作中使用的都是Scientific Linux;包括大型强子碰撞型加速装置和暗物质摄像机的2万台CERN内部服务器。
  • 互联网档案馆 - 互联网档案馆(Internet Archive)使用数百个x86服务器将互联网编入目录,所有的服务器运行的都是Linux。

综上,这些就是我所知道的使用Linux的地方,当然,这些绝对不是真实数字的全部,甚至沧海一粟都算不上。请在评论中自由留言,如果我遗漏了哪些使用Linux的国家或公司,请在评论中提出来,我会尽快把它们添加到列表中~

数据与资料来源: 维基百科


via: http://www.linuxfederation.com/linux-everywhere/

译者:Mr小眼儿 校对:wxy

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

在 *nix 的世界里,cd 命令是最为基础的命令,它所做的是改变当前的工作目录。 本文将深入讲解关于 cd 的技术细节。

cd 命令:一个内部命令

绝大多数的 Linux 发行版都将 Bash Shell 用作默认的 Shell。Bash 有一些自己内部的命令,cd 就是其中一个。我将会解释究竟什么是内部命令,以及为什么 cd 会是一个内部命令。

那么首先,请检查确认你的当前 shell 以及环境变量:

现在继续使用 which 命令来检查 cd 所在的路径:

我们发现没有输出。因为在我们的系统中 cd 命令其实并没有对应某个 binary,但是我们却又仍然可以执行这个命令,这就是因为 cd 其实是 BASH 的一个内部命令。内部命令都是被整合进入 shell 里面的。接下来我们可以继续使用 type 命令来查看 cd 这个内部命令的更多信息。

如果你尝试去查看内部命令的手册,会发现并没有为它们单独设置手册。

对于这些内部命令来说,并没有创建单独的进程,因此它们执行起来非常快。

我们可以使用 help 命令来查看所有的内部命令(help 命令本身也是一个内部命令):

为什么 cd 会是一个内部命令

让我们从简单的开始聊起吧。我不会说太多繁琐细节,但是想要弄明白这个问题,还是需要对 Unix 进程有一点了解。

不管 BASH 什么时候创建了一个进程,这个进程事实上都是在 BASH 的一个子 shell 中运行(也就是当前 BASH 进程的子进程)。这些新的进程会做一些改变,或是显示一些东西(如果需要的话),以及当这个进程死亡的时候,子 shell 并不会向当前 BASH 返回信息。请注意,cd 所做的是改变 shell 的 PWD。 因此倘若 cd 是一个外部命令,那么它改变的将会是子 shell 的 PWD,也不会向父 shell 返回任何东西。所以,当前 shell 的 PWD 就不会做任何改变。所有能对当前 shell的环境作出改变的命令都必须是内部命令。 因此如果我们将 cd 做成外部命令,就无法像原来一样改变当前目录了。

好了,现在让我们再来聊聊 cd 命令的用法。

cd 命令的用法:

如果你不加任何参数地来使用 cd 命令,不管你现在在哪,都会把你带到你的 home 目录下。

其实波浪线符号(~)代表的也是 home 目录,我们同样可以用它回到 home(译注:通常用~配合其下的子目录名,来切换到自己home下的子目录,如:cd ~/Desktop)。

如果你是 root 用户,你可以通过使用波浪号加任何一个用户名来切换到该用户的 home 目录下。在一些 Linux 发行版中,没有特权的用户默认是没有权限访问其他用户的 home 目录的。

再来看,. 目录代表的是当前目录,而 .. 代表的是上级目录。所以我们可以使用 .. 来回到上级目录。

大部分情况下,cd . 是不会改变你的 PWD。举例来看:

但是如果你的当前目录已经被重命名了,那么你的 PWD 就会发生改变:

在 BASH 和大部分其他的 shell 中,你可以提供两种不同的路径:绝对路径和相对路径。绝对路径以 / 开始,并且和你的 PWD 无关。而相对路径不会以 / 开始,并且和你的 PWD 相关。

使用绝对路径来改变 PWD:

使用相对路径来改变 PWD:

我们可以在两个目录切换:

cd - 命令可以返回上一次的工作目录,我们可以使用它在两个不同的目录中快速切换。

我们上一次的工作目录会被储存在 OLDPWD 这个变量中。但是如果你在一个新开启的终端中来使用的话,会报出下面的错误:

你可以配合 cd 命令来使用一些 bash 小技巧。

比如,不妨使用 ? 这个万能药:

使用 *:


via: http://linoxide.com/linux-command/linux-cd-command-examples/

译者:ailurus1991 校对:wxy

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

系统管理员的日常工作之一就是升级服务,为服务打上补丁包或升级一些花哨的功能。2013年初,最新的 MySQL 5.6发布,目标是提供更好的性能和扩展能力。如果你对此有点兴趣,倒是可以看看我写的这篇 如何在 Debian 和 Ubuntu 上升级 MySQL

在这篇教程中,我会假设你已经通过 apt-get 安装了 MySQL。写这篇文章的时候,大部分 Linux 发行版上部署的都是 MySQL 5.5。这里我将向你们介绍如何从 MySQL 5.5升级到5.6。

步骤1:备份 MySQL 配置文件。

$ sudo mkdir /backup
$ sudo tar cvfvz /backup/mysql_conf.tgz /etc/mysql

步骤2:把数据库导出到一个 .sql 文件,并且把数据存放路径下面的数据也备份起来。

$ sudo sh -c 'mysqldump -u root -p -A --events > /backup/backup_db.sql
$ sudo tar cvfvz /backup/mysql_data.tgz /var/lib/mysql

注意:如果你为你的在线 MySQL 系统提供了持续备份,强烈建议你在执行上面步骤时使用单事务选项,或显式使用锁(以保证数据一致性 —— 译注),详见这个教程

步骤3:停止 MySQL 服务

$ sudo service mysql stop

步骤4:卸载 MySQL 软件包

$ sudo apt-get remove mysql-server mysql-client mysql-common
$ sudo apt-get autoremove
$ sudo apt-get autoclean

使用 apt-get 卸载时不要用 purge 选项,这会删除 MySQL 配置文件和其它一些以后要用到的数据。

步骤5: 安装 MySQL 依赖包(内核异步 IO 访问库),MySQL 5.5以及之后的版本都依赖它。

$ sudo apt-get install libaio1

步骤6:从官网下载 Debian 版的 MySQL 软件包

32位系统:

$ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15-debian6.0-i686.deb

64位系统:

$ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15-debian6.0-x86_64.deb

步骤7:安装 MySQL 软件包

$ sudo dpkg -i mysql-5.6.15-debian6.0-*.deb

这个软件包会被安装在 /opt/mysql 目录下面。

步骤8:将 MySQL 命令所在的路径添加到系统环境变量 PATH 内。

Debian 上:

$ sudo sh -c 'echo "PATH=$PATH:/opt/mysql/server-5.6/bin" >> /etc/profile'
$ source /etc/profile

Ubuntu 或 Linux Mint 上:

$ sudo sh -c 'echo "PATH=${PATH}:/opt/mysql/server-5.6/bin" >> /etc/environment'
$ source /etc/environment

步骤9:进入 MySQL 配置文件,修改下面两行配置。

$ sudo vi /etc/mysql/my.cnf

-

basedir = /opt/mysql/server-5.6

lc-messages-dir = /opt/mysql/server-5.6/share

步骤10:设置启动脚本

复制 MySQL 启动脚本到 /etc/init.d 目录下,并且将脚本设置为开机启动,这样一来 MySQL 就能在系统启动的时候自动启动了。

$ sudo cp /opt/mysql/server-5.6/support-files/mysql.server /etc/init.d/mysql
$ sudo update-rc.d mysql defaults

步骤11:(仅限 Ubuntu) 编辑AppArmor配置

MySQL 的上个版本安装时会为 AppArmor 服务创建一个配置文件,这个文件在 MySQL 卸载后会保留在系统中,但是它与现在安装好的 MySQL 版本不兼容。你需要重新编辑下这个配置文件,然后 MySQL 服务才能正常启动。

首先,建一个软链接。

$ sudo ln -s /opt/mysql/server-5.6/bin/mysqld /usr/sbin/mysqld

然后编辑 MySQL AppArmor 配置文件。

$ sudo vi /etc/apparmor.d/usr.sbin.mysqld

/opt/mysql/server-5.6/lib/plugin/ r,

/opt/mysql/server-5.6/lib/plugin/.so mr,

/opt/mysql/server-5.6/share/** r,

最后重启 AppArmor 服务。

$ sudo service apparmor restart

步骤12:(还是仅限 Ubuntu)删除上个 MySQL 版本留下的自启动配置文件。

这个版本的 MySQL 使用 SysVinit (就是 /etc/init.d/mysql)来代替。

$ sudo rm /etc/init/mysql.conf

步骤13:启动 MySQL 服务。

$ sudo service mysql start

步骤14:恢复 MySQL 数据库。

$ sudo mysql -u root -p < /backup/backup_db.sql

步骤15:最后,升级 MySQL 系统表。

$ sudo /opt/mysql/server-5.6/bin/mysql_upgrade -v -u root -p

解决 MySQL 升级过程中产生的问题

如果 Ubuntu 下的 MySQL 服务启动时出现如下错误,就是由于旧版 MySQL AppArmor 配置文件禁止其运行而引起。你需要参考步骤11来更新 AppArmor 的配置文件。

Dec 20 19:57:48 ubuntu kernel: [ 5856.960592] type=1400 audit(1387598268.807:39): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=25216 comm="apparmor_parser"

via: http://xmodulo.com/2013/12/upgrade-mysql-server-debian-ubuntu.html

译者:bazz2 校对:Caroline

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

你有没有感到需要一款Linux下的命令行工具,它可以验证你的拼写?一款可以显示包含特定前缀字符串的行?好的,本篇中,我们会讨论Linux下的 look命令,它满足了上面的这些要求。

Linux下的look命令

下面是来自look命令man页面描述的截图:

测试环境

  • OS – Ubuntu 13.04
  • Shell – Bash 4.2.45
  • Application – look 2.20.1-5.1ubuntu8

简要教程

现在让我们通过一些特定例子来讨论这个命令。

假设你要验证单词'rendezvous'的拼写。你可以轻松地用look命令做到。

这是个例子 :

$ look rendez
rendezvous
rendezvous's
rendezvoused
rendezvouses
rendezvousing

如你所见,我只传入了单词的前面几个字符作为命令行参数,命令产生了所有的相关单词。这些单词通过look命令从文件 /usr/share/dict/words取回。

另外一种情况是需要打印所有包含特定字符串的行。比如,如果我想要显示c文件中所有的头文件,那么我就用下面的方法:

$ look "#include" efence_test.c 
#include 
#include 

如你所见,它生成了所有的在文件efence\_test.c中以"#include"开始的行,因此我知道了原文件中包含的头文件。

默认上,所有look命令的匹配都是大小写敏感的。你可以使用非大小写敏感匹配的选项-f

下面是一些look命令提供了其他一些命令行选项:

想要获取这个命令的更多信息,阅读这个 man 页.

下载/安装/配置

下面是关于look命令的一些链接:

  • 主页 [如果你知道这个工具的主页的话让我知道一下]
  • 下载链接

look命令成了util-linux包的一部分,它在大多数Linux发行版中已经预安装了。

优点

  • 非常容易地在命令行验证拼写。
  • 在大多数Linux发行版中已经预安装。

缺点

  • 依赖于/usr/share/dict/words 来做拼写验证。

总结

一款出色的用来验证拼写的命令行工具。节省了大量时间如果你想要显示以特定字符串为开头的行的话。试一下,你一定会喜欢上它的。


via: http://mylinuxbook.com/look-verify-spellings-and-display-lines/

译者:geekpi 校对:wxy

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