Gallery:设备
Gallery设备[ ]
介绍[ ]
Gallery VMware Appliance是基于rPath Linux的GNU/Linux发行。它基本上是一个LAMP(Linux,Apache,MySQL和PHP)设备,预先安装有经过预先配置的Gallery1和Gallery2,同时还带有所有必要的和大部分可选的实用功能。它们也预先载入了Gallery团队成员提供的随机图片以供测试之用,这样你就不用忙着自己找图片进行测试了。
一个虚拟设备就是一个真实计算机设备的软件和硬件,但不同的是前者依托于一个虚拟化的层中。一个虚拟设备包含了执行任务所需的软件以及所需硬件资源的描述,并且独立于host操作系统之外运行。这样在虚拟设备中所作的修改不会对host操作系统构成危害。
Wikipedia也有一个相关的文章阐述虚拟设备的基础知识
支持[ ]
有一个新建论坛专门用于解决Gallery设备的支持问题。该论坛名为 Gallery Appliance。请将所有的支持请求都发布在这里, 建议与反馈也欢迎提出。
安装[ ]
首先你需要下载并安装免费的 VMware Player。你还需要下载Gallery Appliance最新的VMware Player Image。一旦你完成了Gallery Appliance的解压,就可以在VMware Player中打开并开始安装了。
一旦引导完成了,屏幕上就会显示一些简单的指导,其中包括供访问的正确URL。它会包含类似http://192.168.1.25/gallery/ 和 http://192.168.1.25/gallery2/这样的URL,这些都可以简单地在本地浏览器上载入。请记录下所提供的URL并在本地浏览器中打开。根据你所选择的URL,稍后就会看到Gallery1或Gallery 2。
Appliance自身不带有图形化的用户界面,因此你无法再appliance中浏览Gallery安装。
系统和mysql 根密码都是为空的,即没有密码。两种Gallery的用户名都是admin而密码是password。
此时,你应当将此Gallery Appliance认为是一个试用版本,因为它很不安全,而且在你没有遵循后文提到的安全性建议之前,它是不会变成公开可用的。
开发[ ]
如果某人需要一个简便快速的测试环境或在某个安全环境中做改动的话,此设备相对地可被用于开发。基本上分为3个步骤:1) 安装subversion,2) 把当前的gallery都弄走,3) 使用svn来查看各自的"最新"情况。
安装subversion[ ]
这必然是最简单的步骤了。只要使用内置的整合包管理器conary即可。
# conary更新 –解析 subversion 包括额外用于解析依赖性的troves: neon:lib=0.24.7-5-0.1 应用更新,1/2: Install neon(:lib)=0.24.7-5-0.1 应用更新,2/2: Install subversion(:devel :devellib :doc :lib :locale :python :runtime)=1.2.3-8-0.2[~!builddocs]
移除当前的gallerys[ ]
我们使用内置的init脚本gallery-appliance来完成大部分的工作。我们也需要手动创建一个文件,这样脚本就不会在下次引导时尝试重新安装gallery了。删除实际的gallery和gallery2目录之后就收尾了。我们还可以移除gallery,gallery2,g1conf和g2conf来保证将来不会发生严重问题。
# /etc/init.d/gallery-appliance clear Totally nuking gallerys... Done! # touch /etc/gallery-pre-configured
使用conary移除gallery整合包。另外你可以备份httpd config文件,允许G1与G2在/srv/www/中的安装而非/srv/www/html...
# cp /etc/httpd/conf.d/php_gallery.conf /etc/httpd/conf.d/php_gallery2.conf ~/ # conary erase gallery g1conf g2conf 应用更新: Erase g1conf(:runtime)=1.5.4_r1-2-1 Erase g2conf(:runtime)=2.1.2-1-1 Erase gallery(:lib :runtime)=/gallery.rpath.org@gallery:1/1.5.4-3-1 Erase gallery(:lib :runtime)=/gallery.rpath.org@gallery2:1/2.1.2-1-1 # cp ~/php_gallery.conf ~/php_gallery2.conf /etc/httpd/conf.d/
或直接移除目录…
# rm -Rf /srv/www/gallery /srv/www/gallery2
使用SVN查找最新[ ]
没有任何的理由重新创建已存在的资料。请在http://codex.gallery2.org/index.php/Gallery:Using_Subversion查找SVN文件来获取你所需Gallery版本的信息。一旦你完成了这些,就需要通过标准的方式安装G1和G2了。在web浏览器中访问./gallery/ 或 ./gallery2/目录就足够了。
Of note为需要做checkout的位置。服务器的文档根目录是/srv/www/html,如果你稍加注意的话,就会发现G1和G2在/srv/www/gallery与/srv/www/gallery2中。原因就是conary gallery整合包创建一个conf文件供apache web服务器读取。因此你可以拷贝这些文件或在/srv/www/html中做checkout。
安全性[ ]
正如你在上面所看到的,如果不做些额外的工作的话,就只能将其看作Gallery1和Gallery2的试用版本。此设备不应为网络可访的,并且你不应将任何重要信息存储其中。但走运的是,还是能够保证其安全,所需完成的步骤在后文将给出。
设定系统和mysql的根密码[ ]
直接运行下面的命令就能更改系统和mysql根密码。
% passwd root Changing password for user root. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. % mysqladmin -u root password 'new-password-here'
清除现有的G1和G2[ ]
经过预先配置的G1和G2将各自的用户名和密码发布在internet上,因此你会希望能够使用自己的选择进行G1或G2的安装。你可能也不希望我们的相片出现在你的Gallery中。Gallery Appliance的特殊init脚本可以派上很大的用场。最后的命令将防止appliance自我重新配置。
% /etc/init.d/gallery-appliance clear Totally nuking gallerys... Done! % touch /etc/gallery-pre-configured
新建Gallery2的mysql用户[ ]
当然你需要将用户名和密码修改为期望中的。用户名gallery2是完全合理的。我们也需要重建gallery2数据库,但如果出现了已存在类型的消息而失败的话,请不要担心。
% mysqladmin -uroot -p create gallery2 Enter password: % mysql gallery2 -uroot -p -e"GRANT ALL ON gallery2.* TO username@localhost IDENTIFIED BY 'password'" Enter password:password
使用新的mysqll用户名/密码更新init脚本[ ]
此步骤是可选的。在修改了mysql根密码之后, gallery-appliance init脚本将不复使用。将密码保存在一般文本中不是一个好主意。但如果你希望继续使用init脚本的话,还是很容易进行修正的。
% nano -w /etc/init.d/gallery-appliance
找到#MYUP="-u root -pPASSWORD"这一行并进行修正。你可以将mysql根密码放入PASSWORD的位置,或者你可以使用gallery2用户,将root修改为gallery2并将你所设定的gallery2密码放入PASSWORD中。
将此
#MYUP="-u root -pPASSWORD"
修改为
MYUP="-u gallery2 -pmYnEWpasS"
访问G1或G2并进行配置[ ]
一旦全部完成了,你就需要使用标准的方式进行G1和G2的安装了。在web浏览器中访问./gallery/或./gallery2/目录就足够了。URL即Gallery Appliance引导屏幕上所显示的。
Init脚本的特点[ ]
你会发现/etc/init.d/gallery-appliance init 脚本的某些特点还是有用处的。在启动时,它进行自我预配置,使用文件/etc/gallery-pre-configured来判断其是否进行了预配置。在关闭时,它将备份你的G1和G2至/opt/g[1,2]backup。它还带有backup,restore,setup,clear,zip,bz2,secure和status这些参量。
backup[ ]
此选项直接将重要的G1和G2组分备份到/opt/g1backup和/opt/g2backup目录。如果需要的话,它可以被用于稍后的设定恢复。
% /etc/init.d/gallery-appliance backup Backing up Gallery 1... Done! Backing up Gallery 2... Done!
restore[ ]
此选项自/opt/g1backup和/opt/g2backup目录对G1和G2进行恢复。如下所见,它尝试创建gallery2数据库,如已存在的话将会失败。
% /etc/init.d/gallery-appliance restore Restoring Gallery 1... Done! Restoring Gallery 2... Done!
setup[ ]
这被用于预配置G1和G2。start命令的效用如出一辙,都对文件/etc/gallery-pre-configured的存在进行检查,并在其存在的情况下不予运行。
% /etc/init.d/gallery-appliance setup Pre-configuring gallery... Done!
clear[ ]
如果你要重新来过的话,可以使用它来清除G1和G2。请留意,它会移除/etc/gallery-pre-configured文件,因此你可以运行start或setup命令。这意味着图过你重新进行引导的话,你的gallery *将会*被重新进行预配置。
% /etc/init.d/gallery-appliance clear Totally nuking gallerys... Done!
zip / bz2[ ]
此命令创建当前G1和G2的.zip或.tar.bz2,这样你就可以根据需要进行操作了。你可以保留一个off-system备份,使用它来将你的gallery转移到其他服务器上。
% /etc/init.d/gallery-appliance zip Backing up Gallery 1... Done! Backing up Gallery 2... Done! Your G1 data has been zip'd to /opt/gallery1-contents.zip Your G2 data has been zip'd to /opt/gallery2-contents.zip
% /etc/init.d/gallery-appliance bz2 Backing up Gallery 1... Done! Backing up Gallery 2... Done! Your G1 data has been bzip2'd to /opt/gallery1-contents.tar.bz2 Your G2 data has been bzip2'd to /opt/gallery2-contents.tar.bz2
secure[ ]
此命令直接将你指向此wiki页面。
% /etc/init.d/gallery-appliance secure Please visit http://codex.gallery2.org/index.php/Gallery:Appliance for information on securing this appliance.
status[ ]
此命令将告知你G1和G2看起来是否被预配置了。
% /etc/init.d/gallery-appliance status Gallery appears to be pre-configured, use the 'clear' option to undo this