2014年11月

据其官方网站,ownCloud可以让你通过一个Web界面或者WebDAV访问你的文件。它还提供了一个平台,可以轻松地查看、编辑和同步您所有设备的通讯录、日历和书签。尽管ownCloud与广泛使用Dropbox非常相似,但主要区别在于ownCloud是免费的,开源的,从而可以自己的服务器上建立与Dropbox类似的云存储服务。使用ownCloud你可以完整地访问和控制您的私人数据,而对存储空间(除了硬盘容量)或客户端的连接数量没有限制。

ownCloud提供了社区版(免费)和企业版(面向企业的有偿支持)。预编译的ownCloud社区版可以提供了CentOS、Debian、Fedora、openSUSE、,SLE和Ubuntu版本。本教程将演示如何在Debian Wheezy上安装和在配置ownCloud社区版。

在Debian上安装 ownCloud

进入官方网站:http://owncloud.org,并点击‘Install’按钮(右上角)。

为当前的版本选择“Packages for auto updates”(下面的图是v7)。这可以让你轻松的让你使用的ownCloud与Debian的包管理系统保持一致,包是由ownCloud社区维护的。

在下一屏中点击继续:

在可用的操作系统列表中选择Debian 7 [Wheezy]:

加入ownCloud的官方Debian仓库:

 # echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/community/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud.list 

加入仓库密钥到apt中:

# wget http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/Release.key
# apt-key add - < Release.key 

继续安装ownCLoud:

# aptitude update
# aptitude install owncloud 

打开你的浏览器并定位到你的ownCloud实例中,地址是 http://服务器 IP/owncloud:

注意ownCloud可能会包一个Apache配置错误的警告。使用下面的步骤来解决这个错误来解决这些错误信息。

a) 编辑 the /etc/apache2/apache2.conf (设置 AllowOverride 为 All):

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

b) 编辑 the /etc/apache2/conf.d/owncloud.conf

<Directory /var/www/owncloud>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

c) 重启web服务器:

# service apache2 restart 

d) 刷新浏览器,确认安全警告已经消失

设置数据库

这时可以为ownCloud设置数据库了。

首先登录本地的MySQL/MariaDB数据库:

$ mysql -u root -h localhost -p

为ownCloud创建数据库和用户账户。

mysql> CREATE DATABASE owncloud_DB;
mysql> CREATE USER ‘owncloud-web’@'localhost' IDENTIFIED BY ‘whateverpasswordyouchoose’;
mysql> GRANT ALL PRIVILEGES ON owncloud_DB.* TO ‘owncloud-web’@'localhost';
mysql> FLUSH PRIVILEGES; 

通过http://服务器 IP/owncloud 进入ownCloud页面,并选择‘Storage & database’ 选项。输入所需的信息(MySQL/MariaDB用户名,密码,数据库和主机名),并点击完成按钮。

为ownCloud配置SSL连接

在你开始使用ownCloud之前,强烈建议你在ownCloud中启用SSL支持。使用SSL可以提供重要的安全好处,比如加密ownCloud流量并提供适当的验证。在本教程中,将会为SSL使用一个自签名的证书。

创建一个储存服务器密钥和证书的目录:

# mkdir /etc/apache2/ssl

创建一个证书(并有一个密钥来保护它),它有一年的有效期。

 # openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt 

编辑/etc/apache2/conf.d/owncloud.conf 启用HTTPS。对于重写规则中的NC、R和L的意义,你可以参考Apache 文档:

Alias /owncloud /var/www/owncloud

<VirtualHost 192.168.0.15:80>
    RewriteEngine on
    ReWriteCond %{SERVER_PORT} !^443$
    RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
</VirtualHost>

<VirtualHost 192.168.0.15:443>
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/apache.crt
    SSLCertificateKeyFile /etc/apache2/ssl/apache.key
    DocumentRoot /var/www/owncloud/
<Directory /var/www/owncloud>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>
</VirtualHost>

启用重写模块并重启Apache:

# a2enmod rewrite
# service apache2 restart 

打开你的ownCloud实例。注意一下,即使你尝试使用HTTP,你也会自动被重定向到HTTPS。

注意,即使你已经按照上述步骤做了,在你启动ownCloud你仍将看到一条错误消息,指出该证书尚未被受信的机构颁发(那是因为我们创建了一个自签名证书)。您可以放心地忽略此消息,但如果你考虑在生产服务器上部署ownCloud,你可以从一个值得信赖的公司购买证书。

创建一个账号

现在我们准备创建一个ownCloud管理员帐号了。

欢迎来自你的个人云!注意你可以安装一个桌面或者移动端app来同步你的文件、日历、通讯录或者更多了。

在右上叫,点击你的用户名,会显示一个下拉菜单:

点击Personal来改变你的设置,比如密码,显示名,email地址、头像还有更多。

ownCloud 使用案例:访问日历

让我开始添加一个事件到日历中并稍后下载。

点击左上角的下拉菜单并选择日历。

添加一个时间并保存到你的日历中。

通过 'Event and Tasks' -> 'Import...' -> 'Select file' 下载你的日历并添加到你的Thunderbird日历中:

提示:你还需要设置你的时区以便在其他程序中成功地导入你的日历(默认情况下,日历程序将使用UTC+00:00时区)。要更改时区在左下角点击小齿轮图标,接着日历设置菜单就会出现,你就可以选择时区了:

ownCloud 使用案例:上传一个文件

接下来,我们会从本机上传一个文件

进入文件菜单(左上角)并点击向上箭头来打开一个选择文件对话框。

选择一个文件并点击打开。

接下来你就可以打开/编辑选中的文件,把它移到另外一个文件夹或者删除它了。

总结

ownCloud是一个灵活和强大的云存储,可以从其他供应商快速、简便、无痛的过渡。此外,它是开源软件,你只需要很少有时间和精力对其进行配置以满足你的所有需求。欲了解更多信息,可以随时参考用户管理开发手册。


via: http://xmodulo.com/2014/08/install-configure-owncloud-debian.html

作者:Gabriel Cánepa 译者:geekpi 校对:wxy

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

逻辑卷管理有许多特性,比如像快照和精简资源调配。在先前(第三部分中),我们已经介绍了如何为逻辑卷创建快照。在本文中,我们将了解如何在LVM中设置精简资源调配。

Setup Thin Provisioning in LVM

在LVM中设置精简资源调配

精简资源调配是什么?

精简资源调配用于LVM以在精简池中创建虚拟磁盘。我们假定我服务器上有15GB的存储容量,而我已经有2个客户各自占去了5GB存储空间。你是第三个客户,你也请求5GB的存储空间。在以前,我们会提供整个5GB的空间(富卷)。然而,你可能只使用5GB中的2GB,其它3GB以后再去填满它。

而在精简资源调配中我们所做的是,在其中一个大卷组中定义一个精简池,再在精简池中定义一个精简卷。这样,不管你写入什么文件,它都会保存进去,而你的存储空间看上去就是5GB。然而,这所有5GB空间不会全部铺满整个硬盘。对其它客户也进行同样的操作,就像我说的,那儿已经有两个客户,你是第三个客户。

那么,让我们想想,我到底为客户分配了总计多少GB的空间呢?所有15GB的空间已经全部分配完了,如果现在有某个人来问我是否能提供5GB空间,我还可以分配给他么?答案是“可以”。在精简资源调配中,我可以为第四位客户分配5GB空间,即使我已经把那15GB的空间分配完了。

警告:从那15GB空间中,如果我们对资源调配超过15GB了,那就是过度资源调配了。

它是怎么工作的?我们又是怎样为客户提供存储空间的?

我已经提供给你5GB空间,但是你可能只用了2GB,而其它3GB还空闲着。在富资源调配中,我们不能这么做,因为它一开始就分配了整个空间。

在精简资源调配中,如果我为你定义了5GB空间,它就不会在定义卷时就将整个磁盘空间全部分配,它会根据你的数据写入而增长,希望你看懂了!跟你一样,其它客户也不会使用全部卷,所以还是有机会为一个新客户分配5GB空间的,这称之为过度资源调配。

但是,必须对各个卷的增长情况进行监控,否则结局会是个灾难。在过度资源调配完成后,如果所有4个客户都尽量写入数据到磁盘,你将碰到问题了。因为这个动作会填满15GB的存储空间,甚至溢出,从而导致这些卷下线。

前置阅读

我的服务器设置

操作系统 — 安装有LVM的CentOS 6.5
服务器IP — 192.168.0.200

步骤1: 设置精简池和卷

理论讲太多了,让我们还是来点实际的吧,我们一起来设置精简池和精简卷。首先,我们需要一个大尺寸的卷组。这里,我创建了一个15GB的卷组用于演示。现在,用下面的命令来列出卷组。

# vgcreate -s 32M vg_thin /dev/sdb1

Listing Volume Group

列出卷组

接下来,在创建精简池和精简卷之前,检查逻辑卷有多少空间可用。

# vgs
# lvs

Check Logical Volume

检查逻辑卷

我们可以在上面的lvs命令输出中看到,只显示了一些默认逻辑用于文件系统和交换分区。

创建精简池

使用以下命令在卷组(vg\_thin)中创建一个15GB的精简池。

# lvcreate -L 15G --thinpool tp_tecmint_pool vg_thin
  • -L – 卷组大小
  • –thinpool – 创建精简池
  • tp\_tecmint\_poolThin - 精简池名称
  • vg\_thin – 我们需要创建精简池的卷组名称

Create Thin Pool

创建精简池

使用‘lvdisplay’命令来查看详细信息。

# lvdisplay vg_thin/tp_tecmint_pool

Logical Volume Information

逻辑卷信息

这里,我们还没有在该精简池中创建虚拟精简卷。在图片中,我们可以看到分配的精简池数据为0.00%

创建精简卷

现在,我们可以在带有-V(Virtual)选项的‘lvcreate’命令的帮助下,在精简池中定义精简卷了。

# lvcreate -V 5G --thin -n thin_vol_client1 vg_thin/tp_tecmint_pool

我已经在我的vg\_thin卷组中的tp\_tecmint\_pool内创建了一个精简虚拟卷,取名为thin\_vol\_client1。现在,使用下面的命令来列出逻辑卷。

# lvs 

List Logical Volumes

列出逻辑卷

刚才,我们已经在上面创建了精简卷,这就是为什么没有数据,显示为0.00%M

好吧,让我为其它2个客户再创建2个精简卷。这里,你可以看到在精简池(tp\_tecmint\_pool)下有3个精简卷了。所以,从这一点上看,我们开始明白,我已经使用所有15GB的精简池。

Create Thin Volumes

创建文件系统

现在,使用下面的命令为这3个精简卷创建挂载点并挂载,然后拷贝一些文件进去。

# mkdir -p /mnt/client1 /mnt/client2 /mnt/client3

列出创建的目录。

# ls -l /mnt/

Creating Mount Points

创建挂载点

使用‘mkfs’命令为这些创建的精简卷创建文件系统。

# mkfs.ext4 /dev/vg_thin/thin_vol_client1 && mkfs.ext4 /dev/vg_thin/thin_vol_client2 && mkfs.ext4 /dev/vg_thin/thin_vol_client3

Create File System

创建文件系统

使用‘mount’命令来挂载所有3个客户卷到创建的挂载点。

# mount /dev/vg_thin/thin_vol_client1 /mnt/client1/ && mount /dev/vg_thin/thin_vol_client2 /mnt/client2/ && mount /dev/vg_thin/thin_vol_client3 /mnt/client3/

使用‘df’命令来列出挂载点。

# df -h

Print Mount Points

显示挂载点

这里,我们可以看到所有3个客户卷已经挂载了,而每个客户卷只使用了3%的数据空间。那么,让我们从桌面添加一些文件到这3个挂载点,以填充一些空间。

Add Files To Volumes

添加文件到卷

现在列出挂载点,并查看每个精简卷使用的空间,然后列出精简池来查看池中已使用的大小。

# df -h
# lvdisplay vg_thin/tp_tecmint_pool

Check Mount Point Size

检查挂载点大小

Check Thin Pool Size

检查精简池大小

上面的命令显示了3个挂载点及其使用大小百分比。

13% of datas used out of 5GB for client1
29% of datas used out of 5GB for client2
49% of datas used out of 5GB for client3

在查看精简池时,我们看到总共只有30%的数据被写入,这是上面3个客户虚拟卷的总使用量。

过度资源调配

现在,第四个客户来申请5GB的存储空间。我能给他吗?因为我已经把15GB的池分配给了3个客户。能不能再给另外一个客户分配5GB的空间呢?可以,这完全可能。在我们使用过度资源调配时,就可以实现。过度资源调配可以给我们比我们所拥有的更大的空间。

让我来为第四位客户创建5GB的空间,然后再验证一下大小吧。

# lvcreate -V 5G --thin -n thin_vol_client4 vg_thin/tp_tecmint_pool
# lvs

Create thin Storage

创建精简存储

在精简池中,我只有15GB大小的空间,但是我已经在精简池中创建了4个卷,其总量达到了20GB。如果4个客户都开始写入数据到他们的卷,并将空间填满,到那时我们将面对严峻的形势。如果不填满空间,那不会有问题。

现在,我已经创建在thin\_vol\_client4中创建了文件系统,然后挂载到了/mnt/client4下,并且拷贝了一些文件到里头。

# lvs

Verify Thin Storage

验证精简存储

我们可以在上面的图片中看到,新创建的client 4总计使用空间达到了89.34%,而精简池的已用空间达到了59.19。如果所有这些用户不再过度对卷写入,那么它就不会溢出,下线。要避免溢出的话,我们需要扩展精简池大小。

重要:精简池只是一个逻辑卷,因此,如果我们需要对其进行扩展,我们可以使用和扩展逻辑卷一样的命令,但我们不能缩减精简池大小。

# lvextend

这里,我们可以看到怎样来扩展逻辑精简池(tptecmintpool)。

# lvextend -L +15G /dev/vg_thin/tp_tecmint_pool

Extend Thin Storage

扩展精简存储

接下来,列出精简池大小。

# lvs

Verify Thin Storage

验证精简存储

前面,我们的tptecmintpool大小为15GB,而在对第四个精简卷进行过度资源配置后达到了20GB。现在,它扩展到了30GB,所以我们的过度资源配置又回归常态,而精简卷也不会溢出下线了。通过这种方式,我们可以添加更多的精简卷到精简池中。

在本文中,我们已经了解了怎样来使用一个大尺寸的卷组创建一个精简池,以及怎样通过过度资源配置在精简池中创建精简卷和扩着精简池。在下一篇文章中,我们将介绍怎样来移除逻辑卷。


via: http://www.tecmint.com/setup-thin-provisioning-volumes-in-lvm/

作者:Babin Lonston 译者:GOLinux 校对:wxy

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

磁盘镜像包括了整个磁盘卷的文件或者是全部的存储设备的数据,比如说硬盘,光盘(DVD,CD,蓝光光碟),磁带机,USB闪存,软盘。一个完整的磁盘镜像应该包含与原来的存储设备上一样完整、准确,包括数据和结构信息。

磁盘镜像文件格式可以是采用开放的标准,像ISO格式的光盘镜像,或者是专有的软件应用程序的特定格式。"ISO"这个名字来源于用CD存储的ISO 9660文件系统。但是,当用户转向Linux的时候,经常遇到这样的问题,需要把专有的的镜像格式转换为开放的格式。

磁盘镜像有很多不同的用处,像烧录光盘,系统备份,数据恢复,硬盘克隆,电子取证和提供操作系统(即LiveCD/DVDs)。

有很多不同的方法可以把ISO镜像挂载到Linux系统下。强大的mount 命令给我们提供了一个简单的解决方案。但是如果你需要很多工具来操作磁盘镜像,你可以试一试下面的这些强大的开源工具。

很多工具还没有看到最新的版本,所以如果你正在寻找一个很好用的开源工具,你也可以加入,一起来为开源做出一点贡献。

Furius ISO Mount

Furius ISO Mount是一个简单易用的开源应用程序,可以用来挂载镜像文件,它支持直接打开ISO,IMG,BIN,MDF和NRG格式的镜像而不用把他们烧录到磁盘。

特性:

  • 支持自动挂载ISO, IMG, BIN, MDF and NRG镜像文件
  • 支持通过 loop 方式挂载 UDF 镜像
  • 自动在根目录创建挂载点
  • 自动解挂镜像文件
  • 自动删除挂载目录,并返回到主目录之前的状态
  • 自动记录最近10次挂载历史
  • 支持挂载多个镜像文件
  • 支持烧录ISO文件及IMG文件到光盘
  • 支持MD5校验和SHA1校验
  • 自动检索之前解挂的镜像
  • 自动创建手动挂载和解挂的日志文件
  • 语言支持(目前支持保加利亚语,中文(简体),捷克语,荷兰语,法语,德语,匈牙利语,意大利语,希腊语,日语,波兰语,葡萄牙语,俄语,斯洛文尼亚语,西班牙语,瑞典语和土耳其语)

fuseiso

fuseiso 是用来挂载ISO文件系统的一个开源的安全模块。

使用FUSE,我们完全可以在用户空间里运行一个完整的文件系统。

特性:

  • 支持读ISO,BIN和NRG镜像,包括ISO 9660文件系统
  • 支持普通的ISO 9660级别1和级别2
  • 支持一些常用的扩展,想Joliet,RockRidge和zisofs
  • 支持非标准的镜像,包括CloneCD's IMGs 、Alcohol 120%'s MDFs 因为他们的格式看起来恰好像BIN镜像一样

iat

iat(Iso 9660分析工具)是一个通用的开源工具,能够检测很多不同镜像格式文件的结构,包括BIN,MDF,PDI,CDI,NRG和B5I,并转化成ISO 9660格式.

特性:

  • 支持读取(输入)NRG,MDF,PDI,CDI,BIN,CUE 和B5I镜像
  • 支持用 cd 刻录机直接烧录光盘镜像
  • 输出信息包括:进度条,块大小,ECC扇形分区(大小),头分区(大小),镜像偏移地址等等

AcetoneISO

AcetoneISO 是一个功能丰富的开源图形化应用程序,用来挂载和管理CD/DVD镜像。

当你打开这个程序,你就会看到一个图形化的文件管理器用来挂载镜像文件,包括专有的镜像格式,也包括像ISO, BIN, NRG, MDF, IMG 等等,并且允许您执行一系列的操作。

AcetoneISO是用QT 4写的,也就是说,对于基于QT的桌面环境能很好的兼容,像KDE,LXQT或是Razor-qt。

这个软件适用于所有正在寻找Linux版本的Daemon Tools的人。

特性:

  • 支持挂载大多数windows 镜像,界面简洁易用
  • 可以将其所有支持镜像格式转换到ISO,或者是从中提取内容
  • 加密,压缩,解压任何类型的镜像
  • 转换DVD成xvid avi,支持将各种常规视频格式转换成xvid avi
  • 从视频里提取声音
  • 从不同格式中提取镜像中的文件,包括bin mdf nrg img daa dmg cdi b5i bwi pdi
  • 用Kaffeine / VLC / SMplayer播放DVD镜像,可以从Amazon 自动下载封面。
  • 从文件夹或者是CD/DVD生成ISO镜像
  • 可以做镜像的MD5校验,或者是生成镜像的MD5校验码
  • 计算镜像的ShaSums(128,256和384位)
  • 支持加密,解密一个镜像文件
  • 按兆数分拆和合并镜像
  • 以高压缩比将镜像压缩成7z 格式
  • 翻录PSX CD成BIN格式,以便在ePSXe/pSX模拟器里运行
  • 为BIN和IMG格式恢复丢失的 CUE 文件
  • 把MAC OS的DMG镜像转换成可挂载的镜像
  • 从指定的文件夹中挂载镜像
  • 创建数据库来管理一个大的镜像集合
  • 从CD/DVD 或者是ISO镜像中提取启动文件
  • 备份CD成BIN镜像
  • 简单快速的把DVD翻录成Xvid AVI
  • 简单快速的把常见的视频(avi, mpeg, mov, wmv, asf)转换成Xvid AVI
  • 简单快速的把FLV 换换成AVI 格式
  • 从YouTube和一些视频网站下载视频
  • 提取一个有密码的RAR存档
  • 支持转换任何的视频到PSP上
  • 国际化的语言支持支持(英语,意大利语,波兰语,西班牙语,罗马尼亚语,匈牙利语,德语,捷克语和俄语)

ISO Master

ISO Master是一个开源、易用的、图形化CD 镜像编辑器,适用于Linux 和BSD 。可以从ISO 里提取文件,给ISO 里面添加文件,创建一个可引导的ISO,这些都是在一个可视化的用户界面完成的。可以打开ISO,NRG 和一些MDF文件,但是只能保存成ISO 格式。

ISO Master 是基于bkisofs 创建的,这是一个简单、稳定的阅读,修改和编写ISO 镜像的软件库,支持Joliet, RockRidge 和EL Torito扩展,

特性:

  • 支持读ISO 格式文件(ISO9660, Joliet, RockRidge 和 El Torito),大多数的NRG 格式文件和一些单轨道的MDF文件,但是,只能保存成ISO 格式
  • 创建和修改一个CD/DVD 格式文件
  • 支持CD 格式文件的添加或删除文件和目录
  • 支持创建可引导的CD/DVD
  • 国际化的支持


via: http://www.linuxlinks.com/article/20141025082352476/DiskImageTools.html

作者:Frazer Kline 译者:barney-ro 校对:wxy

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

前一段时间, 文档基金会带着它的开源LibreOffice生产力套件的又一个小版本更新回来了。

LibreOffice 4.3.4,新系列中的第四个次版本,该版本只包含 BUG 修复,按计划发布了。

可以看到的变化是,如基金会所说的在developers’ butterfly net上被揪出来并且修复的bug数量大概有:60个左右。

  • 排序操作现在还是默认为旧式风格(Calc)
  • 在预览后恢复焦点窗口(Impress)
  • 图表向导对话框不再是‘切除’式
  • 修复了记录改变时的字数统计问题 (Writer)
  • 各种各样的RTF修复,包括图像边框导入(Writer)

完整列表可以在 LibreOffice Wiki 页面查看。

下载

许多家伙有完整的LibreOffice安装程序但是从来没用过它。如果你是其中一份子,你就当做没看到。

如果你喜欢升级,你可以在官方网站上找到所有相关的下载链接。

预测一下LibreOffice 4.4

Info bar coming in LibreOffice 4.4

来自LibreOffice 4.4的信息栏

LibreOffice 4.4应该会让大家更多期望。

维基上讲述了正在进行中的不间断大范围GUI调整,包括一个新的颜色选择器,重新设计的段落行距选择器和一个在凸显部位表示该文件是否为只读模式的信息栏。

虽然我知道一些桌面社区对这些大规模的界面变动的抗议声不断,但是他们还是朝着正确的方向稳步前进。

要记住,在一些必要情况下,LibreOffice对于企业和机构来说是一款非常重要的软件。在外观和布局上有任何引人注目的修改都会引发一串连锁效应。

感谢Tim W!


via: http://www.omgubuntu.co.uk/2014/11/libreoffice-4-3-4-arrives-bundle-bug-fixes

作者:Joey-Elijah Sneddon 译者:ZTinoZ 校对:wxy

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

从左到右:安卓0.9的主屏幕,添加的应用抽屉,以及快捷方式删除界面。

从左到右:安卓 0.9 的主屏幕,添加的应用抽屉,以及快捷方式删除界面 [Ron Amadeo供图]

Android 0.9, Beta——嘿,这看起来很眼熟!

Milestone 5 发布后六个月,2008 年 8 月, 安卓 0.9 发布。尽管安卓 0.5 milestone 版看起来“很早期”,而此时距离 1.0 发布也只有两个月时间了。因此,安卓 0.9 被打上了“beta”的标签。在移动操作系统之路的另一边,苹果在一个月前已经发布了iPhone 的第二代产品——iPhone 3G。第二代的 iPhone 搭载了第二代 iPhone OS。苹果同样发布了 App Store 应用商店并且已经开始接受应用提交。谷歌在追赶的道路上还有很多事情要做。

谷歌抛弃了很多在 Milestone 5 中引入的 UI 设计。所有设计都回炉重造,采用全彩设计,白色方形图标背景被抛弃。尽管 0.9 还是一个模拟器版本,相比与安卓发布版来说看起来还是有点熟悉。安卓 0.9 有一个可用的桌面式主屏幕,一个特有的应用抽屉,多主屏,更多的应用程序,以及全功能(仅是它自身的)小部件。

Milestone 5 中似乎没有计划支持安装 21 个以上的应用,但在安卓 0.9 中有一个垂直滚动的应用抽屉,可以通过屏幕底部的灰色标签打开。那时候,应用抽屉真的只是个抽屉。除了作为一个按钮使用,灰色标签还可以跟随你的手指被向上拉起,就像通知面板被拉下来那样。还额外添加了一些应用,像闹钟,计算器,图片,信息,以及照相机。

这是第一个可以完全自定义主屏幕的版本。长按应用或小部件可以拖动它们。你可以把应用从抽屉中拖出到主屏幕快捷方式,或长按一个已经存在的主屏幕快捷方式来移动它。

安卓 0.9 提醒我们谷歌那时候并不像今天这样擅长设计。实际上,当时安卓的部分设计工作外包给了其它公司。你可以从时钟小插件看出一点端倪,它包含了“MALMO”字样,它是设计公司 The Astonishing Tribe 的所在地。

安卓0.9的“添加到主屏幕”对话框。

安卓 0.9 的“添加到主屏幕”对话框 [Ron Amadeo供图]

安卓 0.9 中只有三个小部件:时钟,相框和搜索。搜索小部件在列表中甚至没有一个自己的图标——它用的是图片的图标。也许这里面最有趣的选项是壁纸选项中的“购买的图片”——一个“在非智能机时购买铃声是个普遍的现象”的遗留产物。谷歌要么准备出售壁纸,要么在某时已经加入了一个运营商。不过这家公司最终从未实现这个计划。

小部件集合,打开的文件夹,重命名文件夹,以及一个复制/粘贴菜单。

小部件集合,打开的文件夹,重命名文件夹,以及一个复制/粘贴菜单 [Ron Amadeo供图]

在上面左侧的截图展示了谷歌搜索和图片小部件。除了给你一个框进行输入之外,搜索小部件做不了其它事情——它没有自动补全或是附加的 UI 界面。在框里输入并点击“Go”会启动浏览器。底部的一排图标显示了一些菜单中通过长按得到的“快捷方式”,它会创建图标并将应用启动到特定屏幕。独立的联系人,浏览器书签,以及音乐播放列表都是 0.9 中可以被添加到主屏幕上的快捷方式。

“文件夹”是快捷方式标题下的一个选项,尽管它并不是任何东西的快捷方式。一旦创建了一个空文件夹,图标就可以被移动进去并重新排列。不像今天,那时候的文件夹里有什么并不反映在文件夹图标上,它一直是一个简单的,白色的,看起来空空的文件夹图标。

0.9 同样是第一个拥有系统级别复制/粘贴支持的安卓版本。长按任意文本框会唤出一个对话框,从而让你保存或撤销剪贴板中的文本。iOS 直到近两年后才支持复制/粘贴,所以在一段时间内,这是安卓的特色之一——以及许多网络争议的源头。

从左到右:安卓0.9的新菜单,最近使用应用,电源选项,以及锁屏。

从左到右:安卓 0.9 的新菜单,最近使用应用,电源选项,以及锁屏 [Ron Amadeo供图]

安卓 0.9 真正地开始显示出了它的成熟。主屏幕有完整的菜单选项,包括设置(尽管它还不能正常运作)以及搜索按钮(谷歌肯定很喜欢你去搜索)。从那时起菜单的设计便已经最终成型,直到安卓 2.3 它转变成了黑色。

长按实体 Home 键会唤出一个 3x2 方格的“最近使用应用”的菜单,这是一个一直持续到安卓 3.0 的设计。“最近使用应用”菜单会将背景显示模糊化,但这个设计用在这里显得有些奇怪,在其它弹窗比如“添加到主屏幕”对话框或是主屏幕文件夹视图之中并没有用到该设计。电源菜单至少包含在了背景模糊设计组之中,它的图标经过了重新设计,并且功能的对应名称更改得更容易让人接受。不过电源菜单图标缺乏填充,显得有些拥挤和不雅观。

安卓 0.9 以其锁屏为特色,虽然是非常基础的样子。黑色和灰色的锁屏没有任何屏幕解锁的选项——你需要点击实体菜单键。


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


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

译者:alim0x 校对:wxy

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

作为开发人员的你们,还记得你学会的第一种编程语言吗?跟大家聊聊你最爱的编程语言,或者分享一下你在敲代码过程中遇到过的趣事儿。小编为大家准备了9本编程语言图书,转发微博参与互动(微博地址见活动详情),11月21-11月29每天从参与活动的用户中抽取一位中奖用户,赠送图书一本(图书按照图片顺序)

活动详情:

活动时间:2014年11月21日-2014年11月29日

活动内容:在新浪微博转发微博参与互动,活动期间每天从参与活动的用户中抽取一位中奖用户,赠送图书一本(图书按照图片顺序)。

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

特此注意:

微博用户参与活动,注意查看@LINUX中国 官方微博公布的中奖名单或留意您的微博私信。我们会通过微博私信的方式获取您的邮寄信息。

1、《Go并发编程实战》

试读地址:http://www.ituring.com.cn/book/1525

2、《Python基础教程(第2版•修订版)》

试读地址:http://www.ituring.com.cn/book/1396

3、《Ruby基础教程(第4版)》

试读地址:http://www.ituring.com.cn/book/1237

4、《Groovy程序设计》

试读地址:http://www.ituring.com.cn/book/1294

5、《Swift开发指南(修订版)》

试读地址:http://www.ituring.com.cn/book/1517

6、《嗨翻C语言》

试读地址:http://www.ituring.com.cn/book/1004

7、《精通C#》

试读地址:http://www.ituring.com.cn/book/1046

8、《学习R》

试读地址:http://www.ituring.com.cn/book/1187

9、《C++程序设计:现代方法》

试读地址:http://www.ituring.com.cn/book/1263

更多图灵图书:请点击:http://jmall.jd.com/p151429.html