2014年11月

MariaDB是一个开源数据库且100%与MySQL兼容,目标是替代MySQL数据库。

MariaDB的背景 :

2008年,MySQL被后来被Oracle在2010年收购的Sun Microsystems收购了。 最初被Sun公司的收购由于符合项目的需要而受到MySQL社区的欢呼,但是这种情绪并没有持续太久,接下来被Oracle的收购,不幸期望远远低于预期。许多MySql的开发者离开了Sun和Oracle公司开始新的项目。在他们中间就有MySQL的创建者以及项目长期技术带头人之一的Michael ‘Monty’ Widenius。Monty和他的团队创建了MySQL的一个fork版本并且命名它为MariaDB

本篇我们会讨论如何在Ubuntu上安装MariaDB。默认上MariaDB的包并没有在Ubuntu仓库中。要安装MariaDB,我们首先要设置MariaDB仓库。

设置 MariaDB 仓库

$ sudo apt-get install software-properties-common
$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
$ sudo add-apt-repository 'deb http://sfo1.mirrors.digitalocean.com/mariadb/repo/10.0/ubuntu trusty main'

安装 MariaDB :

$ sudo apt-get update
$ sudo apt-get install mariadb-server

在安装中,你会被要求设置MariaDB的root密码。

从命令行连接到MariaDB :

linuxtechi@mail:~$ mysql -uroot -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 40
Server version: 10.0.14-MariaDB-1~trusty-log mariadb.org binary distribution
Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>

MariaDB 服务

$ sudo /etc/init.d/mysql stop
$ sudo /etc/init.d/mysql start

via: http://www.linuxtechi.com/install-mariadb-in-ubuntu/

作者:Pradeep Kumar 译者:geekpi 校对:wxy

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

提问: 我使用libvirt和virt-manager在我的Linux系统上创建虚拟机。我注意到虚拟机镜像位于/var/lib/libvirt/images目录。有没有办法改变虚拟机镜像的默认路径?

libvirt和它的GUI前端virt-manager可以使用不同的虚拟机管理程序创建和管理VM,例如LVM和Xen。默认上所有的虚拟机镜像通过libvirt创建到/var/lib/libvirt/images目录。然而,这有时并不是我们希望的。比如 /var/lib/libvirt/images 此处的磁盘分区大小有限。或者你想要存储所有的虚拟机镜像到一个特定的用于管理的仓库中。

实际上,你可以非常容易地改变libvirt镜像的默认目录,或者称之为“存储池”。

有两种方法可以改变默认存储池。

方法一: Virt-Manager GUI

如果你正在使用virt-manager GUI程序,改变默认存储池非常容易。

进入virt-manager的菜单GUI “编辑” -> "连接细节"。

你可以看到如下所是的默认存储池。在窗口的左下角,点击叉形按钮,将会停止默认的存储池。存储池一旦停止后,点击右边的垃圾桶,将会删除存储池。注意这个动作不会删除池中的镜像。

现在点击左边的加号增加一个新的存储池。

输入新的存储池的名字(比如:default),并且选择存储池的类型。本例中,因为我们只是改变存储池目录所以选择“文件系统目录”。

输入新的存储池路径(比如,/storage)。

这时,新的存储池应该启动了,并且自动在你创建一个新的虚拟机的时候使用。

方法二: Virsh 命令行

另外一个改变默认存储池目录的方法是使用来自libvirt包的virsh 命令行工具。

首先,运行下面的命令来导出默认存储池的XML定义。

 $ virsh pool-dumpxml default > pool.xml 

用文本编辑器打开XML文件,并且改变节点中的/var/lib/libvirt/images改成新的地址。

<pool type='dir'>
  <name>default</name>
  <uuid>0ec0e393-28a2-e975-feec-0c7356f38d08</uuid>
  <capacity unit='bytes'>975762788352</capacity>
  <allocation unit='bytes'>530052247552</allocation>
  <available unit='bytes'>445710540800</available>
  <source>
  </source>
  <target>
    <path>/var/lib/libvirt/images</path>
    <permissions>
      <mode>0711</mode>
      <owner>-1</owner>
      <group>-1</group>
    </permissions>
  </target>
</pool>

移除现在的默认池。

$ virsh pool-destroy default 

Pool default destroyed

现在创建一个基于更新后的XML文件的新存储池。

$ virsh pool-create pool.xml 

Pool default created from pool.xml

这时,默认池已经改变到新的地址了,并且可以使用了。


via: http://ask.xmodulo.com/change-default-location-libvirt-vm-images.html

译者:geekpi 校对:wxy

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

左:Milestone 5,主屏幕展示了“All”按钮,两个dock图标,以及四个最近使用的应用。中:主屏幕与打开的应用程序列表。右边:电源菜单。

左:Milestone 5,主屏幕展示了“All”按钮,两个 dock 图标,以及四个最近使用的应用。中:主屏幕与打开的应用程序列表。右边:电源菜单 [Ron Amadeo供图]

安卓0.5, Milestone 5——如今已经是报废接口的领地了

“M5-RC14”版本发布后——也就是第一个安卓模拟器发布三个月之后,安卓迎来了它的首次重大革新。 2008 年 2 月发布的“Milestone5”甩掉了延伸自黑莓的界面,走向一个完全革新的设计——谷歌在触控友好界面上的第一次尝试。

在浏览器的用户代理字符串的中,此版本仍然被识别为“Android 0.5”,但 Milestone 5 与安卓的第一个版本相比已经完全不一样了。几个核心的 Android 功能直接追踪他们的血统会最终回到这个版本。通知面板的布局和功能几乎已经整装待发,并且,除了样式变化外,菜单也最终成型。距离安卓 1.0 项目发布的时间仅仅只剩八个月,一个操作系统的基础已经开始成型了。

有一件东西目前绝对不是它的最终模样,那就是是主屏幕。这是一个不可配置的、单屏壁纸的应用程序的抽屉和托盘。应用程序图标是气泡状的,三种颜色的组合,由一个圆角矩形的白色背景包围着。应用程序抽屉在右下角有一个“所有”按钮,轻按它,打开的应用程序列表显示在了左边。这个“所有”按钮正上面的是两个托盘图标,“联系人”和“拨号盘”分别获得了永久的专属主屏幕位置。然后上边有四个模块,它们是“最近的应用程序”的早期版本,展示了最后访问的应用程序。没有了左侧屏幕和右侧屏幕,要是没有托盘和“最近的应用程序”占用的一整列,这种布局下只能放下 21 个应用程序图标。模拟器仍然只带有尽量少的应用程序,但在实际的设备中,这样的设计看起来并不会很好的工作效果。

按住“挂断”按钮会出现电源菜单的一个相当早期的版本,就像你最右侧的图片中看到的。谷歌此时仍然没有标准的智能手机命名术语:对于 “关闭屏幕” Turn Off Screen 最好的形容也许是 “锁定屏幕” Lock screen (虽然当时没有锁屏)和 “关闭射频” Turn Off Radio 在今天被叫做 “飞行模式” Airplane Mode

从左至右依次为:令人惊喜的现代通知面板,谷歌地图的菜单在打开着(地图已经不可用了),和新的适合触控的列表视图。

从左至右依次为:令人惊喜的现代通知面板,谷歌地图的菜单在打开着(地图已经不可用了),和新的适合触控的列表视图 [Ron Amadeo供图]

回溯到 Milestone 5,谷歌在那时对通知面板有着明确的认识。就像在任何现代的智能手机里一样,通知中心从屏幕顶部下拉下来以唤出。目前的通知都以列表的形式显示。通知面板的第一个版本是不透明的白色薄片以及底部中心有个橙色圆点的,带着棱纹的的“把手”。通知是可点击的,通过点击可以打开该通知关联的应用程序。没有人为此列表中垂直对齐应用程序图标而感到困扰,不过也没关系,随着接下来的更新,它已经是过去式了。

置顶通知能够进入一个在面板顶部的“正在进行”的部分。在这个版本中,这里似乎只包含通话。在“最近事件”里的通知只有打开相应的应用程序后才清楚。用户惊喜地发现可以通过内置的 XMPP 连接成功登录到谷歌 talk。不过,虽然通知面板中显示“新会话信息”,这里实际上并不是一个即时消息应用程序。

Milestone 5 里是全新的艺术设计。应用程序图标被重新绘制,并且菜单从一个无聊的黑莓风格的文本列表转变为一个全彩、卡通的大图标方阵。通知面板图标也从简单的、突兀的、白色的图标切换到一个绿色的气泡设计。当时信号指示下边有一条奇怪的黑线,没有明显的作用。早期开发版本的微小列表视图不适合手指使用,所以 Milestone 5 带来了更加强大的整体布局。

拨号盘,最近通话,和来电。

拨号盘,最近通话,和来电。 [Ron Amadeo供图]

M5 是第一个有一个拨号盘的版本,即使她是一个相当难看的版本。数字被显示在包含一个奇怪的聊天气泡风格的退格键的渐变填充条里,看上去就像是从其他界面回收回来的。对齐问题随处可见。按钮上的数字没有正确的垂直居中,而且退格键的“X”也没有与对话框对齐。由于屏幕上没有的“拨号”按钮,你甚至不能从拨号盘打个电话,它强制要求有个拨号的硬件实体按钮。

Milestone 5 有几个选项卡式界面,所有这些都演示了一个关于标签应该如何工作的奇怪的想法。活跃的标签是白色的,而背景标签是底部拥有一小条白色条带的黑色标签。后台标签应该是表示向下下沉的吗?切换标签时,是没有动画效果的。直到目前还不清楚这个设计试图想表达什么。

在第二张图片中显示的最近通话记录项,是从一个单独的应用程序降级为拨号盘的选项卡。它抛弃了早期版本疯狂的十字 UI,多亏了大块列表视图,现在所有必要的信息都是显示在一个正常的列表中。

不同于拨号盘,来电画面有显示在屏幕上的按钮来接听和结束通话。奇怪的是,来电屏幕贴在屏幕的底部,而不是顶部或中心。它可能是从旧的黑莓 4:3 屏幕遗留下来的问题。

通话中,触摸屏不可用的显示错误信息,和显示第二通话暂停的通话界面。

通话中,触摸屏不可用的显示错误信息,和显示第二通话暂停的通话界面 [Ron Amadeo供图]

通话中的界面看起来正常,但在实际中毫无意义。今天,在通话中为了阻止你的脸按到按钮,手机近距离传感器一旦检测到物体会关闭屏幕。尽管 Milestone 5 不支持近距离传感器。谷歌的随意的解决方案是在通话过程中禁用整个触摸屏。与此同时,通话中的屏幕显然会检测触摸。这时候是有大的、可触摸的按钮,但就是不让你摸!

M5 在这里让 Milestone 3 版本的几个功能回归了。许多旧的界面里体面的图标被替换成了文本。像“静音”按钮在激活的时候不再提供屏幕上的反馈。合并通话被完全去除了。

浏览器的主要菜单,浏览器的二级菜单,疯狂的变焦控制和窗口界面。

浏览器的主要菜单,浏览器的二级菜单,疯狂的变焦控制和窗口界面 [Ron Amadeo供图]

浏览器菜单中进行了常规的触摸功能大整修,并且“更多”按钮第一次出现。它充当一个你菜单的额外菜单。相对于将 3x2 的网格变成 3x4 的网格,Milestone 5(以及 Android 的许多后续版本一样)中使用很长的、滚动的列表来引出其他选项。不支持双指缩放(据说是向苹果让步),因此 Android 运行着荒谬的控件,就像上边第三张图片一样。谷歌将它显示在屏幕的中间,而不是明智地设置成比如一个水平的、底部对齐的缩放控件。最后一张图片显示浏览器的“窗口”界面,允许你打开多个网页并在它们之间更轻松地切换。

谷歌地图的图层选择,搜索界面,以及路线界面。

谷歌地图的图层选择,搜索界面,以及路线界面。 [Ron Amadeo供图]

谷歌地图仍然不能使用,但我们接触的小小 UI 却有了显著更新。你可以选择地图图层,虽然只有两种可以选择:卫星和交通。顶部对齐的搜索界面奇怪地隐藏了状态栏,而底部对齐的路线没有隐藏状态栏。路线的输入按钮被标有“Go”,而且搜索的输入按钮却被标有一个奇怪的弯曲的箭头。这样的例子不胜枚举,并演示了保守的安卓在最坏时候的情况:在同一个应用程序,外观和工作方式应该类似的两个功能,在实现上却完全相反。


Ron Amadeo / Ron 是 Ars Technica 的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。@RonAmadeo


via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/2/

译者:cereuz 邮箱:cereuz 校对:alim0x/wxy

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

让我们跟着安卓从 0.5 版本到 7 的无尽迭代来看看它的发展历史。

这些年来历代安卓的主屏幕。

这些年来历代安卓的主屏幕 [图片提供:Ron Amadeo]

安卓已经以各种形式陪伴了我们六年以上。在这段时间内,我们已经看到了不同于任何已有开发周期的,绝对惊人的变化速度。当 Google 卷入智能手机的战场中时,它拿出了它的快速迭代、Web 风格的更新周期,把它们应用到了开发这个操作系统之中,而结果就是突击式的持续改进。近来,安卓项目甚至以前所未闻的六个月开发周期在运行,这可比它之前的开发周期慢。在安卓的第一年商业运作时,Google 每两个半月就会发布一个新版本。

Google 在 2007 年 11 月时对安卓最初的视频介绍:

同行业的其它公司和之相比,只能是以蜗牛的步伐在缓慢前进。微软每三到五年升级它的桌面操作系统,苹果对 OS X 和 iOS 以一年为一个更新周期。另外不是每个更新都是同等地位的。iOS 在七年内有一个主要的设计上的大变动,而最新的 Windows Phone 8 看起来和 Windows Phone 7 十分相似。但在安卓上,如果用户能看到今年的任何东西看起来和去年一样,那简直是中彩票了一样。比如 Play 商店,五年内有五次的重新设计。对安卓来说那更是家常便饭。

回头看看,安卓的存在是很模糊的。从其历史来看,现在它是个使用量巨大的操作系统。近十亿的设备销量,以及每天一百五十万左右的激活量——但 Google 是如何达到这种地步的?安卓现在如此水平的规模和成功,可能会让你觉得安卓从零开始到万众瞩目的英雄,覆盖到了方方面面。但事实上不是这样的。安卓在早期并不流行,以及直到安卓 4.0 屏幕截图还只能通过开发者工具实现。这两个因素意味着你无法轻易找到许多安卓早期版本的图片或信息。

对于早期版本的缺乏覆盖问题现在称作“安卓早期版本的消亡现象”。尽管像 Windows 1.0 这样的系统可以永远在你身边——只要找台旧电脑把它装上去就好了——安卓可以被认为是第一个基于云的操作系统。许多功能严重依赖 Google 的服务来实现。随着越来越少的人使用老版本的安卓,那些服务被逐渐关闭。当一个依赖云的应用其服务支持停止之后,它再也不能正常运作——应用崩溃并显示空白的屏幕,或直接无法启动。

正是由于这种“云腐烂”现象,安卓回顾展在几年内不可能出现。早期版本的安卓没有了云的支持会是一个不能正常工作的破碎的空壳。尽管可以简单地认为这是早期版本安卓渐渐消失的一种方法,但这就是正在发生的。就在写到这里的时候,正有无数的应用因为服务器支持被关闭而失去作用。例如早期的谷歌地图和安卓市场客户端,已经不能和 Google 服务器交互。它们会弹出错误消息并崩溃或者是显示一个空白的界面。有些应用甚至在前一个星期正常运行,然后下个星期就宣告死亡,因为就在我们写下这篇文章的时候谷歌正在积极地关闭服务器!

为了防止在滚滚历史里丢失掉更多关于安卓的过去,我们做了需要完成的工作。这里有 20+ 个版本的安卓,七台设备,以及无数的屏幕截图被集合到一起。这就是安卓编年史,从最早的公开版本到最新的 KitKat。


目录


Android 0.5, Milestone 3——第一个公开版本

在我们开始在实体硬件上研究安卓之前,我们要从很早,很早以前的安卓时光开始说起。尽管 1.0 是第一个运行在实体硬件上的版本,但在那之前其实还有若干个只随 SDK 发布的模拟器 beta 版本。这些模拟器只用于开发的目的,所以它们不含任何谷歌应用,甚至只是一些核心系统应用。但它们仍然是回顾安卓的发布前时光的最好渠道。

模拟器默认的qwerty布局并运行Milestone 3。

模拟器默认的 qwerty 布局并运行 Milestone 3 [Ron Amadeo供图]

在异想天开的糖果版本代号和与跨国食品公司跨界合作之前,第一个安卓的公开发布版本的标签是“m3-rc20a”——“m3”代表“Milestone 3(里程碑3)”。尽管谷歌可能不会公布版本号——这个版本甚至没有一个设置应用来查看——浏览器用户标识被识别为“Android 0.5”。

在 2007 年 11 月,谷歌收购安卓两年、iPhone 发布五个月之后,安卓正式发布,第一个模拟器正式释出。回到那时候看,这个系统才刚处于起步阶段。它很容易就被认为“只是个黑莓的山寨而已”。模拟器使用了一个 qwerty 布局的皮肤以及 320×240 的显示屏,是一台原型设备的复制品。这台设备由 HTC 制造,通过一些早期的安卓账户可以得知这台设备的代号似乎是“Sooner”。但是 Sooner 从未正式上市。

通过安卓早期开发账号得知,当苹果在 2007 年 1 月最终发布它革命性的智能手机后,谷歌不得不对安卓“从头来过”——包括放弃 Sooner。考虑到 Milestone 3 模拟器在苹果的 iPhone 后近一年才推出,设备界面看起来还是那么像黑莓的模型实在是令人惊奇的事情。尽管在 iPhone 发布后的开发任务毫无疑问地在优先保障下完成了,但模拟器仍然以被认为是“旧学院风”的界面发布。这使得它没能给人留下一个好的第一印象。

在早期阶段,安卓按键布局看起来并没有最终确定下来。尽管第一台商业安卓设备使用了“主屏幕”,“后退”,“菜单”以及“搜索”作为标准的按键套件,模拟器上有一个空白的标记为“X”的键,你可能会认为是那是搜索键应该在的地方。“Sooner”原型机看起来更奇怪——它在第四个键上有个星形标记。

从左到右:主屏幕,一个打开的通知,以及“应用”文件夹。

从左到右:主屏幕,一个打开的通知,以及“应用”文件夹 [Ron Amadeo供图]

在这里没有可以配置的主屏幕或小插件,仅仅只是简单的在底部有聚合图标的 dock,可以循环或是点击。尽管已经有一些特性支持触摸屏,Milestone 3 主要还是使用五向十字键——一个时至今日安卓仍然支持的不合时宜的设计。甚至早期的安卓都能够实现动画效果。图标在进入 dock 的中心窗口时会变大或缩小。

在这时候同样也还没有通知栏。通知图标显示在顶部状态栏(上面图片中的微笑标志),打开它的唯一方法是在主屏幕按下十字键的上键。你无法通过点击微笑的图标来打开它,也无法从除主屏幕以外的地方打开通知。当通知被打开的时候,状态栏扩展开些许,通知文本会显示在一个聊天气泡中。一旦你阅读完通知,你无法手动清除它——应用本身负责清除它的通知消息。

应用抽屉的职责由托盘左侧简单的“应用程序”文件夹负责。尽管有着不少标志性的功能,Milestone 3 模拟器应用图标还不是十分完善。只有“浏览器”,“联系人” ,以及“地图”是这里面真正的应用。奇怪的是,“最近通话”被提升为一个独立的图标。因为这仅仅只是个模拟器,像闹钟,日历,拨号,计算器,照相机,相册,以及设置这样的智能手机核心功能的图标统统没有。硬件原型倒是有其中的大部分,它还有一套谷歌应用出现并运行着。不幸的是我们没办法看到它们了。它们已经老到无论如何都连不上谷歌的服务器了。

Milestone 3的浏览器菜单系统,壁纸界面,以及音量控制。

Milestone 3 的浏览器菜单系统,壁纸界面,以及音量控制 [Ron Amadeo供图]

这套现在已经过时的菜单系统出现并运行在 Milestone 3上。点击实体菜单键会打开一个灰色带有蓝色梯度高亮的列表,通过实体键盘完成操作。在上面的截图中,你可以看到在浏览器中打开的菜单。进入二级菜单,像缩放菜单,一级菜单这些变成有些奇怪的透明状态。

令人惊喜的是,多任务及后台应用在 Milestone 3 上已经可以运作了。离开应用而不关闭它——应用会保存状态,甚至写入文本保存。这个特性直到 2010 年 iOS 推出 iOS 4 才能与其相比,这就真正显示出了这两个平台的不同。iOS 最初是作为一个封闭的平台而没有第三方应用,所以平台的健壮性并没有得到很大的关注。安卓是从头开始被构建成一个强大的应用软件平台,轻松开发应用是它创造出来背后的推动力之一。

在安卓之前,谷歌已经通过 WAP 网站J2ME 手机应用向移动端开始迁移,这使得它们强烈地意识到移动开发的难度。据 The Atlantic 报道,拉里.佩奇曾这么描述公司在移动端的努力“我们有超过 100 台的一系列手机,我们在每一台设备上都要构建一次我们的应用”。开发者们现在经常抱怨安卓的碎片化,但在安卓出现之前,问题要比现在糟糕很多。

谷歌的平台战略实际上胜出了,iOS最终在不久后开始慢慢加入这些围绕应用的特性——多任务,跨应用分享,以及应用切换。

当你在主屏幕按数字键弹出的拨号界面,来电,以及电话会议界面。

当你在主屏幕按数字键弹出的拨号界面,来电,以及电话会议界面 [Ron Amadeo供图]

尽管没有拨号图标,Milestone 3 模拟器还是有办法拨号。按键盘上的任意键会打开上图左侧的界面,这是拨号/联系人搜索混合界面。仅输入数字并点击绿色的实体拨号键来开始通话,输入字母会搜索联系人。但是联系人无法通过数字搜索。甚至直接点击一个号码也不会打开联系人。

来电被显示成一个几乎全屏的令人愉快的透明背景弹窗。一旦进入通话,背景会变成深灰色,Milestone 3 展现给用户一些令人惊奇的高级特性:静音,扬声器,通话保持,以及电话会议按钮。多方通话会显示成重叠,半透明的卡片状,用户有切换或者合并通话的选项可以选择。切换通话会触发一个漂亮的小卡片洗牌动画。

联系人列表,打开一个联系人,编缉联系人,以及最近通话界面。

联系人列表,打开一个联系人,编缉联系人,以及最近通话界面 [Ron Amadeo供图]

联系人是一个质朴的,黑色和蓝色的姓名列表。联系人卡片中有个联系人头像的位置但是没办法设置一张图像上去(至少在模拟器中不行)。这里唯一的装饰是每个联系人名字左侧的 XMPP 状态点。就传统来说,一个保持在线的 XMPP 连接是安卓的核心,它的深度集成从 Milestone 3 就已经开始了。安卓使用 XMPP 来驱动一个 24/7 在线的与谷歌服务器之间的连接,以驱动 Google Talk 的云到端消息推送,以及应用的安装和卸载信息。

浏览器的假Google首页,地址栏,浏览历史界面。

浏览器的假 Google首 页,地址栏,浏览历史界面 [Ron Amadeo供图]

浏览器运行 Webkit 419.3,它也被用在相同时代的像 Mac OS X 10.4 的 Safari 2上。浏览器主页并不是 Google.com,而是一个包含在安卓里的硬编码的 home.html 文件。它看起来就像是千年之前的 Google.com。浏览器的 OS X 遗留还可以辨认出来,用了顺滑的、Aqua 风格的搜索按钮来渲染浏览器按钮。

这个小小的黑莓风格的屏幕需要一个分离的地址栏,可以通过浏览器菜单里的“前往”选项打开。尽管自动补全不起作用,地址栏会在你输入的时候实时搜索你的浏览历史。右侧图片显示的是历史界面,它使用了略缩图来显示各个站点。当前的略缩图在其它两个缩略图之前,滑动它们会触发一个俯冲动画效果。但在早期阶段,浏览器不支持多标签或窗口——你可以看到当前站点,那就是全部了。

一个视频屏幕抓取导出的谷歌地图界面,方向界面,相册测试界面。

一个视频屏幕抓取导出的谷歌地图界面,方向界面,相册测试界面 [Ron Amadeo供图]

在开始的时候,谷歌认识到在移动端地图将会非常重要,甚至在 Milestone 5 模拟器中内置了地图客户端。那个版本的谷歌地图是我们遇到的第一个死于云腐烂的!这个客户端无法从谷歌的服务器上载入信息,所以地图显示为一片空白,灰色的网格。没有什么能够工作。

幸运的是,因为上面的第一张截图,我们能够从安卓启动视频中拼凑出准确的界面。旧的谷歌地图看起来完全是为非触摸设备准备的,实体键快捷方式列表排列在屏幕底部。这样在看地图时,或是在如果仅仅显示该点的地址的时候就不大清楚。

隐藏在菜单之后的是搜索选项,路线,以及卫星和交通图层。中间的截图是获取路径的 UI 之一,你可以选择一个联系人的地址作为起点或者终点。但地图缺乏任何种类的集成 GPS,你在哪都找不到“我的位置”这个按钮。

尽管没有合适的相册,不过在右边是相册的测试界面,隐藏在“API Demos”应用里。图片可以向左向右滚动,但无法以全屏的方式打开一张照片。同样它也没有照片管理选项。它本质上就是个图片滚动界面的测试视图。

时间设置和日历,有点字间距问题,以及以Ars为特色的垂直列表测试。

时间设置和日历,有点字间距问题,以及以 Ars Technica 为特色的垂直列表测试 [Ron Amadeo供图]

同样模拟器中也没有设置应用,但是通过 API Demos 我们可以看到最初的日期时间设置界面。这个示例暴露出很多安卓没来得及处理的问题:到处都有的字间距问题,分钟数字间巨大的间隔,以及日历中星期日间不均等的间隔。尽管时间设置允许你单独更改每个数字,但除非你将当前日期移出本月到前一个或下一个月,否则你无法改变月份或年份。

别忘了尽管这看起来像是一些被遗忘时代的恐龙级别遗留物,但这仅仅是六年前发布的。我们总趋向与适应科技的脚步。我们很容易将这样的东西看作是 20 年前的东西。比较一下 2007 年晚些时候这个时间段的桌面操作系统,微软尝试将 Windows Vista 售往全世界快要一年了,而苹果刚刚发布了 OS X 10.5 Leopard。

最后一个关于 Milestone 3 的细节:谷歌在 Milestone 3 模拟器中给了 Ars Technica 一个快捷方式。打开“API Demos”应用并打开"Views," "Focus,",然后"Vertical"显示一个 this very Website 的头条测试列表。

随Milestone 3,RC37a发布的更加现代,全触控风格的模拟器。

随 Milestone 3,RC37a 发布的更加现代、全触控风格的模拟器 [Ron Amadeo供图]

两个月后,2007 年 12 月,谷歌放出了一个 Milestone 3 的更新,带来了更大的 480×320 设备设置。这个更新的标签是“m3-rc37a”。软件看起来还是像黑莓一样,仅仅是带来了更多的屏幕分辨率支持。


Ron Amadeo / Ron 是 Ars Technica的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。@RonAmadeo


via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/

译者:alim0x 校对:wxy

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

如果你在Debian或Ubuntu系统上经常感觉到apt-getaptitude包安装速度过慢,那么这里就有几种改善这一情况的方法。你有没有考虑过改变正被使用的默认镜像站点?你有没有排除因特网连接的上游带宽成为瓶颈的可能?

如果不是这些原因,你可以尝试第三个选择:使用apt-fast工具。apt-fast实际上是一个围绕apt-get和aptitude所写的shell脚本容器,它能加速包的下载速度。apt-fast本质上采用aria2下载工具,这款工具能够以“块”的方式从多个镜像并行下载一个文件(就像BitTorrent下载)。

在Debian或Ubuntu上安装apt-fast

下面是在基于Debian的Linux上安装apt-fast的步骤

Debian

$ sudo apt-get install aria2
$ wget https://github.com/ilikenwf/apt-fast/archive/master.zip
$ unzip master.zip
$ cd apt-fast-master
$ sudo cp apt-fast /usr/bin
$ sudo cp apt-fast.conf /etc
$ sudo cp ./man/apt-fast.8 /usr/share/man/man8
$ sudo gzip /usr/share/man/man8/apt-fast.8
$ sudo cp ./man/apt-fast.conf.5 /usr/share/man/man5
$ sudo gzip /usr/share/man/man5/apt-fast.conf.5

Ubuntu 14.04 以及更高版本

$ sudo add-apt-repository ppa:saiarcot895/myppa
$ sudo apt-get update
$ sudo apt-get install apt-fast

Ubuntu 11.04 到 Ubuntu 13.10

$ sudo add-apt-repository ppa:apt-fast/stable
$ sudo apt-get update
$ sudo apt-get install apt-fast

在安装期间,你需要选择一个默认的软件包管理器 (e.g., apt-get. aptitude ),还需要设置其余选项。但是你可以随时通过编辑配置文件 /etc/apt-fast/conf 来更改设置。

配置 apt-get

安装完成后,你需要在/etc/apt-fast.conf里配置apt-fast使用的一系列镜像。

你可以在下面的URL中找到一系列Debian/Ubuntu镜像。

选择完那些地理上靠近你的镜像后,你需按照下面的格式将选择的镜像加入到/etc/apt-fast.conf。

$ sudo vi /etc/apt-fast.conf

Debian:

MIRRORS=('http://ftp.us.debian.org/debian/,http://carroll.aset.psu.edu/pub/linux/distributions/debian/,http://debian.gtisc.gatech.edu/debian/,http://debian.lcs.mit.edu/debian/,http://mirror.cc.columbia.edu/debian/')

Ubuntu/Mint:

MIRRORS=('http://us.archive.ubuntu.com/ubuntu,http://mirror.cc.columbia.edu/pub/linux/ubuntu/archive/,http://mirror.cc.vt.edu/pub2/ubuntu/,http://mirror.umd.edu/ubuntu/,http://mirrors.mit.edu/ubuntu/')

如上面所示,对于一个特定档案的个别镜像,需要用逗号分割开来。你需要在/etc/apt/sources.list的MIRRORS字符串中包含默认的镜像指定站点。

使用apt-fast安装一个包

现在你就可以测试apt-fast的强大了。下面是使用apt-fast的示例:

apt-fast [apt-get options and arguments]
apt-fast [aptitude options and arguments]
apt-fast { { install | upgrade | dist-upgrade | build-dep | download  | source  } [ -y | --yes | --assume-yes | --assume-no ]   ... | clean }

使用apt-fast安装包:

 $ sudo apt-fast install texlive-full

在当前目录下载软件包,但不安装:

 $ sudo apt-fast download texlive-full

如前面所示,apt-fast的并行下载是通过aria2完成的。你可以看到如下图般从多个镜像并行下载。

$ sudo netstat -nap | grep aria2c

请注意,apt-fast并没有加速"apt-get update"。并行下载只在"install", "upgrade", "dist-upgrage"和"build-dep"操作中触发。其余的操作,apt-fast就会简单地回到默认的包管理器apt-get或aptitude。

apt-fast有多快?

为了比较apt-fast和apt-get,我尝试在两个相同的Ubuntu实例上使用两种方法安装几个软件包。下面的图表展示了所有软件包安装的时间(单位为秒)。

正如你所见到的,apt-fast确实比apt-get快(e.g. 快3--4秒),特别是安装庞大软件包的时候。

当然,安装性能的提高程度还依赖你上游因特网连通性。以我为例,我有富足的带宽来支持我的上游连接。这也是为什么我看到并行下载带来了成功的提高。


via: http://xmodulo.com/speed-slow-apt-get-install-debian-ubuntu.html

作者:Dan Nanni 译者:su-kaiyao 校对:wxy

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

问题: 我听说一个牛X的文件系统XFS,打算在我的磁盘上试试XFS。那格式化和挂载XFS文件系统的Linux命令是什么呢?

XFS是高性能文件系统,SGI为他们的IRIX平台而设计。自从2001年移植到Linux内核上,由于它的高性能,XFS成为了许多企业级系统的首选,特别是有大量数据,需要结构化伸缩性和稳定性的。例如,RHEL/CentOS 7 和Oracle Linux将XFS作为默认文件系统,SUSE/openSUSE已经为XFS做了长期支持。

XFS有许多独特的性能提升功能使他从众多文件系统中脱颖而出,像可伸缩/并行 IO,元数据日志,热碎片整理,IO 暂停/恢复,延迟分配等。

如果你想要创建和挂载XFS文件系统到你的Linux平台,下面是相关的操作命令。

安装 XFS系统工具集

首先,你需要安装XFS系统工具集,这样允许你执行许多XFS相关的管理任务。(例如:格式化,扩展,修复,设置配额,改变参数等)

Debian, Ubuntu , Linux Mint系统:

$ sudo apt-get install xfsprogs 

Fedora, CentOS, RHEL系统:

$ sudo yum install xfsprogs 

其他版本Linux:

$ sudo pacman -S xfsprogs 

创建 XFS格式分区

先准备一个分区来创建XFS。假设你的分区在/dev/sdb,如下:

$ sudo fdisk /dev/sdb 

假设此创建的分区叫/dev/sdb1。

接下来,格式化分区为XFS,使用mkfs.xfs命令。如果已有其他文件系统创建在此分区,必须加上"-f"参数来覆盖它。

$ sudo mkfs.xfs -f /dev/sdb1 

至此你已经准备好格式化后分区来挂载。假设/storage是XFS本地挂载点。使用下述命令挂载:

$ sudo mount -t xfs /dev/sdb1 /storage 

验证XFS挂载是否成功:

$ df -Th /storage 

如果你想要启动时自动挂载XFS分区在/storage上,加入下列行到/etc/fstab:

/dev/sdb1  /storage xfs  defaults  0  0

via: http://ask.xmodulo.com/create-mount-xfs-file-system-linux.html

译者:Vic\_\_\_/VicYu 校对:wxy

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