VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2...

Fedora16 ,代号Verne ,于2011年11月08日发布正式版,我第一时间下载,并安装到了 VirtualBox 虚拟机上。

经过几天的折腾,发现不少问题,但总算搭建好了 LAMP 环境,成功运行织梦CMS , PHPMyAdmin,

所以写篇文章希望和大家分享,也给自己日后的学习留个笔记。

新手写文章压力很大,希望各位多多支持,如果您发现有错误或者存在安全隐患,亦或者您有更好的方法,

请您回复我,谢谢!

 

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第1张图片

 【目的

通过 Fedora16 搭建一个 LAMP 环境,运行 织梦CMS 与 PHPMyAdmin。

 【安装方式

1.VirtualBox 虚拟机安装 Fedora16 32位系统。

2.Samba,Apache2,Mysql5,PHP5 通过Fedora16 DVD 光盘和 yum 方式安装。

 【我的安装环境

1.Windows 7 SP1 64位 旗舰版 6G内存,256显存,分了20G的虚拟磁盘空间给Fedora,安装之后占用 7G 左右。

2.网络环境:ADSL PPPoE 方式,Modem 接入网卡,没有使用DHCP,需要手动设置 IP 和 DNS。

3.Oracle VM VirtualBox Manager 4.1.6,下载地址:http://www.virtualbox.org/wiki/Downloads

4.Fedora 16 32位 DVD iso ,下载地址:http://fedoraproject.org/zh_CN/get-fedora-options#formats

 【注意事项

1.我是新手,学习 Linux 不过 3 个月,基本命令还没认全……文中难免会有许多错误和安全隐患,因此只能作为测试使用。

2.文中没有通过源码包的方式安装,省去了编译的时间,当然这有利有弊,也许不适合做开发。

但是据我了解,如果做开发的似乎应该选择相对稳定的 RedHat , CentOS 或者 Debian 系列 配合源码安装,

选择更新如此之快的Fedora似乎不太合适。 

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第2张图片

第 1 部分 - Windows 7 的设置

Windows 端主要是网络设置,保证虚拟机可以正常联入互联网。

1.1 设置网络连接

依次打开 控制面板 -> 网络和 Internet -> 网络和共享中心

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第3张图片

----------------------------------------

选择左上角的 更改适配器设置。

我的电脑里有2个链接,如图。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第4张图片

----------------------------------------

“本地连接”ADSL PPPoE 的连接:

已经在 Modem 里设置好,自动拨号,关闭 DHCP ,路由 IP 地址 192.168.1.1,分配给 Windows 7 的地址:192.168.1.3 。

“VirtualBox Host-Only Network”是 VirtualBox 生成的虚拟网卡,我已经将他禁用了,因为我总是将这两个连接弄混……

注:我是按照禁用的方法,也就是通过 Bridged Adapter 的方式,

当然也可以不禁用,就是 NAT 方式,稍后我会在 VirtualBox 的设置中说明。

右击“本地连接”,选择“属性”,将“VirtualBox Bridged Networking Driver”选中。

“Microsoft 网络的文件和打印机共享”也选中,这个我没有测试过,不过应会与 Samba服务有关。

其他的根据自己的网络情况选好,确保 Windows 能上网。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第5张图片

----------------------------------------

1.2 设置网络共享

回到“网络和共享中心”,开始设置网络与共享。

网络环境我选的是家庭网络,如图,这并不是必须的,根据个人需要即可,重要的是高级共享设置。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第6张图片

----------------------------------------

在“网络和共享中心”选择 “更改高级共享设置”,将“启用网络发现”,“启用文件和打印机共享”选中。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第7张图片

----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第8张图片

----------------------------------------

如此,Windows 的设置基本完成了,因为我只在自己的机器上试过,所以不能保证适合每一台机器,

如果一会 Fedora 连不上网,请回来修改吧。

第 2 部分 - VirtualBox 的设置

确保你的 VirtualBox 是最新版,确保不会因为虚拟机版本过低造成的错误。

这里比较重要的是网络设置与显示设置,关系到能否接入网络和能否启用 Gnome3。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第9张图片

----------------------------------------

2.1 全局设定

首先修改全局设定,因为 VirtualBox 会默认将 配置文件安装在 C 盘,我不太喜欢这个设定,所以更改了一下,不改也可以。

运行 VirtualBox,在菜单栏选择 管理 -> 全局设定 ,将“默认虚拟电脑位置”移动到别的磁盘,

我放到了“D:\VirtualBox\Liunx”里,然后更改语言为简体中文,点击确定保存设置。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第10张图片

----------------------------------------

2.2 新建虚拟机

回到VirtualBox的主页面,点击“新建”,这时 VirtualBox 会运行 向导工具,帮助我们建立虚拟机,单击下一步。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第11张图片

----------------------------------------

键入名称,选择操作系统种类,如果以Fedora开头 VirtualBox 将自动识别,

如果取别的名字,请在下列列表中选择“Linux”和“Fedora”,我将新建的虚拟机文件取名为“Fedora_16”。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第12张图片

----------------------------------------

接下来是内存的设定,我的内存比较充裕,因此分了 2G 给 Fedora ,如果想 启动Gnome3,内存应该设置的大一点。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第13张图片

----------------------------------------

然后是硬盘设置,除了虚拟硬盘保存的位置和容量外,其他的默认即可。

首先选择“创建新的虚拟硬盘”。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第14张图片

----------------------------------------

硬盘格式就选“VDI”就好。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第15张图片

----------------------------------------

选择“Dynamically allocated”。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第16张图片

----------------------------------------

硬盘容量,我分了 20G 给 Fedora ;

这里的 20G 并不是马上用掉,由于之前选择了“Dynamically allocated”,会动态的分配容量,

也就是说,我们安装完毕用掉 8G,那虚拟机文件只会占用 8G 空间,其余的 12G 不会占用真正的硬盘空间。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第17张图片

----------------------------------------

好了,硬盘设置完成。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第18张图片

----------------------------------------

点击“Create”后,VirtualBox,会以默认设置新建一个虚拟机文件,我们要更改这些设置才能开始安装。

再次点击“Create”回到VirtualBox的主页面,我们看到会多出一个选项“Fedora_16”,就是我们新建的虚拟机文件。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第19张图片

----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第20张图片

----------------------------------------

2.3 虚拟机设定

由于现在我们只设定了内存和磁盘的参数,其他诸如网卡,显卡,声卡,第一启动设备等

都是 VirtualBox 默认设置,无法满足需要,于是我们重新设置。

选中“Fedora_16”,单击“设置”,会弹出设置窗口,默认打开常规选项卡,

这里可以修改名称,和操作系统版本,储存位置等,由于我们已经设置好,所以不必修改。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第21张图片

----------------------------------------

来到“系统”页面,我们只选则光驱和硬盘,并将光驱作为第一启动项。

在这里还可以修改内存的大小,其他设定默认即可。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第22张图片

----------------------------------------

“显示”页面应该比较重要,能否启动 Gnome3 和这里的设定关系很大。

显存尽量调到最大;

“Monitor Count”显示器数量,1;

选择“启用3D加速”;

不选“启用2D加速”;

其他不必调整。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第23张图片
----------------------------------------

“Storage”页面是用来设置磁盘驱动器的,我们先选择 IDE 控制器里的光盘(默认“没有盘片”);

在点击右侧“第二IDE控制通道”右侧的光盘图标,找到我们下载的Fedora6,32位DVD的ISO文件,Fedora-16-i386-DVD.iso。

其他的设置不必更改,如果你以后想增加一块磁盘,或者更换光盘,可以在这里设置。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第24张图片

----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第25张图片

----------------------------------------

“声音”页面默认就好:

声卡类型“Windows DirectSound”;

控制芯片“ICH AC97”。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第26张图片

----------------------------------------

最后是“网络”设置,也比较重要,关系到Fedora能否接入互联网。

只设置“Adapter 1”就好,勾选“启用网络连接”。

连接方式我选择的是“Bridged Adapter”:

因为之前我将VirtualBox建立的虚拟网上连接“VirtualBox Host-Only Network”,

并在我的“本地连接”里,将“VirtualBox Bridged Networking Driver”选中。

如果你没有将“VirtualBox Host-Only Network”禁用,可以尝试使用“NAT”方式。

“界面名称”用默认即可,的“Realtek PCIe GBE Family Controller”即可,高级设置不必更改。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第27张图片

----------------------------------------

“串口”“USB”“数据空间”使用默认设置即可,单击确定保存退出。

第 3 部分 - 安装 Fedora 16

回到VirtualBox的主页面,选中“Fedora_16”,单击菜单栏的“开始”。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第28张图片

3.1 安装前的设置

首先来到安装方式选择,直接回车,选择“Install or upgrade Fedora”,进入图形安装环境。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第29张图片

----------------------------------------

下面来到验证磁盘界面,如果你可以确定安装光盘的来源没有问题,就点“Skip”,跳过这一步骤,以节省时间。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第30张图片

----------------------------------------

选择语言,这里我选了英文,因为我的英文查到离谱,所以想强迫自己学习一下。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第31张图片

----------------------------------------

选择键盘,美国英语式。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第32张图片

----------------------------------------

选择磁盘。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第33张图片

----------------------------------------

如果硬盘没有分区表,会出现此界面,确认。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第34张图片

----------------------------------------

主机名称与网络设置,主机名称最好改一下,不要以localhost.的形式,

因为在建立Samba服务器的时候,会与 Windows 的本机冲突,我改成了fedora.localdomain。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第35张图片

----------------------------------------

按左下角的 Configure Network 设置网络。

在弹出的网络设置窗口,选中 System p2p1 ,点击 Edit ;

然后你可以为连接起一个名字,比如eth0;

切换到 IPv4 Settings ,设置 TCP/IP4;

Method 选择 Manual 手动设置;

Address:IP地址我写的是 192.168.1.7 ,与我的 Windows 7 位于同一网段;

Netmask:子网掩码,255.255.255.0;

Gateway:网关,192.168.1.1;

DNS servers:根据个人网络环境而定,我用的是 Google 的 8.8.8.8, 8.8.4.4;

Seve 保存,再 close 关闭 Network Connections 关闭网络设置窗口,下一步。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第36张图片

----------------------------------------

选择时区,上海,不要选 System clock uses UTC,下一步 。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第37张图片

----------------------------------------

设置 root 密码,尽量设置得复杂些并记牢,下一步。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第38张图片

----------------------------------------

下面是分区的设置,我是虚拟机安装,全新的硬盘,所以选择自定义 Create Custom Layout

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第39张图片

----------------------------------------

只有一块硬盘 sda,选中 sda 的 free,点击 Create ,增加一个分区。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第40张图片

----------------------------------------

我对分区了解的不多,这次只是作为练习系统使用,可能不太合理;

分区至少要 3 个 ,BIOS Boot 分区,跟分区 / ,SWAP 分区;

我分了 8 个:

BIOS Boot 分区,2 m;

/boot 分区,128 m;

/usr 分区,8192 m;

/ 分区, 4096 m;

/home 分区,2048 m;

/var 分区,2048 m;

SWAP 分区,2048 m;

SWAP 分区最好是物理内存的 1.5 - 2 倍,我分给 Fedora 2G 的物理存,已经足够了;

/web 分区,用来做 网站的专用分区,1916m;

点击 Ctreate 新曾一个分区,选择默认分区系统。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第41张图片

----------------------------------------

文件系统格式选择 BIOS Boot,没有挂载点;容量为 2 m,这是新东西,还没来得及看资料。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第42张图片

----------------------------------------

继续添加/boot分区,挂载点 /boot ;文件系统用 ext2就好,因为/boot容量比较小,没必要用 ext4,我这里似乎忘记改了;容量 128m。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第43张图片

----------------------------------------

根分区,挂载点/;文件系统ext4;大小4096m。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第44张图片

----------------------------------------

swap 分区,文件系统 swap,没有挂载点;容量 2048m。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第45张图片

----------------------------------------

/usr 分区,挂载点 /usr(下拉列表中没有,自己输入就可以了);文件系统 ext4;大小 8192m。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第46张图片

----------------------------------------

同样的方法,设置好 /home /var 分区,最后 添加一个 /web 分区;

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第47张图片

----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第48张图片

----------------------------------------

挂载点 /web ;分区格式 ext4;选择 Fill to maximum allowable size,将剩余容量分给他;

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第49张图片

----------------------------------------

全部设置好后点击下一步,将分区表写入磁盘,并格式化分区。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第50张图片

----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第51张图片

----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第52张图片

----------------------------------------

之后是安装 boot looder 到 硬盘中的启动扇区,

如果有多个操作系统,可以在“Change device”中设置,

我是用虚拟机安装的,这块虚拟磁盘只有一个 Fedora 操作系统,就不必设置了;

boot loader 的密码暂时没有设定。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第53张图片

----------------------------------------

接下来是选择 软件包套装,由于我要搭建 LAMP 环境,所以选择了 web server ,

然后选择左下方的 Customize now,自定义软件包。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第54张图片

----------------------------------------

桌面环境,只选了Gnome。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第55张图片

----------------------------------------

应用软件根据自己的需要选择。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第56张图片

----------------------------------------

服务软件,把 MySQL,Web Server,Windows File Server 等选上。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第57张图片

----------------------------------------

系统软件也根据需要选择。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第58张图片

----------------------------------------

语言包选择简体中文。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第59张图片

----------------------------------------

选择好语言包后,确定,系统开始安装,之后是漫长的等待……

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第60张图片

----------------------------------------

安装完成,重新启动。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第61张图片


第 3 部分 - 安装 Fedora 16 part 2

3.2 第一次启动系统

第一次启动系统,需要设置一些配置。

来到欢迎画面。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第62张图片

----------------------------------------

添加一个帐号,选中加入管理员组,我 添加了一个帐号 icanon 。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第63张图片

----------------------------------------

设置时间,与时间同步;我没有设置时间同步。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第64张图片

----------------------------------------

之后会列出系统信息,选择 Do not send profile ,不要发送,然后选择完成。

来到登录界面,输入我们刚刚添加的帐号密码,登录系统。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第65张图片

----------------------------------------

之后是这个界面,提示 GNOME 3 Failed to Load ,进入 Fallbanck 模式。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第66张图片

----------------------------------------

这是因为我们还没有安装 VirtualBox 的 VBOX ADDITIONS 增强功能,

下面我们就来安装 增强功能,

让 Fedora 16 启动 Gnome 3。

 

3.3 启动 Gnome 3.2

首先我们对系统进行升级。

由于我在安装的时候就已经将网络设置好,所以可以直接升级系统。

打开终端  Terminal ,输入命令,升级。

这里用 sudo 升级吧,顺便测试一下,由于我刚刚选择了将 icanon 帐号加入管理员组(wheel),所以可以直接使用sudo。

sudo yum update

第一次使用 sudo 会出现提示信息;

输入 icanon 的密码,便可以升级。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第67张图片

----------------------------------------

呵呵,这里我激动了,第一遍输错密码了。

检测到升级包,输入 y 确认下载,如果无法搜索升级包,请点击桌面右上角的电脑图标配置网络。


VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第68张图片

----------------------------------------

下载完成,安装升级包,Is this ok ?当然 ok。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第69张图片

----------------------------------------

好了,升级完成。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第70张图片

----------------------------------------

由于 VirtualBox 会用的 kernel-devel ,所以需要安装。

下面安装 gcc 和 kernel-devel,gcc在应该已经安装好了,这里确认一下。

我顺便 测试一下 gcc-c++ 是否也安装了,因为之后可能会用的。

还有 之前 安装 Fedora 15 时可能需要 kernel-PAE-devel,一起安上吧。

先且换到root。

su -

输入密码。

yum install gcc gcc-c++ kernel-devel kernel-PAE-devel

 

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第71张图片

----------------------------------------

看来只有一个 kernel-devel 没有安装的,完成之后重启。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第72张图片

----------------------------------------

这里我选择了关机,因为之前在 VirtualBox 里设置了光盘为第一启动项,这里先关机将虚拟机的第一启动设备修改为硬盘。

poweroff

poweroff关机,icanon 这个用户也可以执行。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第73张图片

----------------------------------------

重新登录系统以后,在 VirtualBox 的菜单栏里选择 设备 -> 安装增强功能。

此时 Fedora 会自动挂载 VirtualBox 的 VBOXADDITIONS 光盘,提示是否运行,

我试过,选择 run 以后似乎也无法运行,于是选择 Cancel 取消,通过终端安装吧。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第74张图片

----------------------------------------

打开终端,

su -

切换到 root。

注:由于后面许多操作都需要管理员权限,所以都我以 root 的身份执行命令。

cd /media/VBOXADDITIONS_*(这里是版本号,果断 Tab 键)*/

ll

看到光盘的内容,运行

./VBoxLinuxAdditions.run

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第75张图片

----------------------------------------

之后看到一堆 OK ,表示安装成功,如果有问题,请根据提示安装缺少的安装包。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第76张图片

----------------------------------------

先不要重启,因为 VirtualBox 增强包会安装在 /opt/VBoxGuestAdditions-4.1.6(版本号) 文件夹下,

而且安装时的 安全上下文写的似乎有点问题,这会使 SELinux 禁止它运行。

用 restorecon 命令重置一下 安全上下文,我的 opt 文件夹只有VBoxGuestAdditions-4.1.6这一个文件夹,所以直接对 /opt 执行

restorecon; -R 属性 包含子文件夹(recursive 递归),-v (view?)将信息显示在屏幕上。

restorecon -Rv /opt

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第77张图片

----------------------------------------

看到 VBoxGuestAdditions-4.1.6 文件夹下的许多文件的安全上下文关系已经被修改。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第78张图片

----------------------------------------

成功之后重启系统。

reboot

之后看到黑色的登录框,说明 Gnome 3.2 已经启动。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第79张图片

----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第80张图片

---------------------------------------- 

果然,可以启动 Gnome 3 ,不必运行在 Fallback 模式了。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第81张图片

----------------------------------------

如此,Fedora 16 的系统安装部分基本结束,先上个网试试效果吧。

第 4 部分 - 搭建 LAMP 环境

下面开始搭建 服务器环境,将 Samba ,Apache,MySQL,PHP,配置好。

方法

1.Apache 服务器的 都放到 /web/www/html 文件夹下

2.利用 Samba ,让 Windows 端可以修改 icanon 的 宿主文件夹,即 /home/icanon

3.利用 Samba ,让 Windows 端可以修改 Apache 的 DocumentRoot,即 /web/www/html

步骤

1.设置 Linux 防火墙

2.修改配置文件,顺序:samba,apache,mysql,php

3.设置 SELinux

4.测试:运行 PHPMyAdmin,织梦CMS

 

注:

1.这里的步骤只做测试使用,所以权限会给的比较大,只能作为本机的 Web 服务器

2.命令都是以root 身份执行

 

4.1 安装  Samba ,Apache,MySQL,PHP

确保已经安装了 Samba ,Apache,MySQL,PHP:

通过 rpm -qa 的方式依次查询。

rpm -qa | grep samba

rpm -qa | grep httpd

rpm -qa | grep mysql

rpm -qa | grep php

(ps:我不会同时查询多款软件,见笑了)

如果都安装成功,就可以继续下一步,如果没安装,就执行

yum install 软件名称安装。

 

4.2 设置 Fedora 16 的防火墙

我的 IP 如下:

网关:192.168.1.1

Windows 7 :192.168.1.3

Fedora 16 :192.168.1.7

打开终端,切换到 root,修改 防火墙的配置文件;

vi /etc/sysconfig/iptables

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第82张图片

----------------------------------------

在中间加一行:

-A INPUT -j ACCEPT -s 192.168.1.3

不限制 192.168.1.3 的访问;

:wq

保存退出。 

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第83张图片

----------------------------------------

4.3 配置 Samba 3.6

新建文件夹,赋予任何人可读可写可执行的权限;

我要在 Windows 下修改 Fedora 这么改的,如果要放到网上可不能如此设置。

mkdir -p  /web/www/html

chmod -R 777 /web/www

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第84张图片

----------------------------------------

修改 Samba 的配置文件

vi /etc/samba/smb.conf

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第85张图片

----------------------------------------

找到 workgroup ,修改成与 Windows 7 一致的 WORKGROUP(选做)。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第86张图片

----------------------------------------

之后再配置文件末尾,加一个共享文件夹,可以直接复制 public 的配置。

[web]

path = /home/samba

public = yes

writable = yes

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第87张图片

----------------------------------------

:wq

保存退出。

之后是 SELinux 的设置,我会在最后同 httpd mysql 一起设置,这里先跳过。

 

执行

systemctl start smb.service 

systemctl start nmb.service

测试一下 samba 能否打开,如果没有错误提示则证明可以开启。

查看一下 tcp 和 udp 协议:

netstat -tnl | grep 139

可以看到 139 端口已经打开;

netstat -unl | grep 13

可以看到 137 138 端口已经打开。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第88张图片

----------------------------------------

下面添加一个 samba 用户并设置密码,这个用户必须在 Fedora 16 中 已经建立。

我用的是 icanon 这个账户。

smbpasswd -a icanon

输入两遍密码便可设置成功。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第89张图片

----------------------------------------

修改即时生效,不需要重启 samba 服务,现在到 Windows 的 网上邻居,

若看到 Fedora 的图标就表示 Samba 服务架设成功;

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第90张图片

----------------------------------------

若能够进入 Fedora ,看到 两个文件夹,一个是 icanon 的宿主目录,另一个是我们新添加的 web

说明 Samba 的 icanon 账户添加成功,Fedora 的防火墙设置成功。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第91张图片

----------------------------------------

由于现在还没有设置 SELinux ,访问 icanon 与 web 文件夹,可能会弹出一下对话框。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第92张图片

----------------------------------------

----------------------------------------

稍后再来修改。

 

4.4 配置 Apache 2.2

首先修改配置文件

vi /etc/httpd/conf/httpd.conf

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第93张图片

----------------------------------------

找到 DocumentRoot 将原来的 /var/www/html 修改为 /web/www/html

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第94张图片

----------------------------------------

找到原来 /var/www/html 的 <Directory "/web/www/html"> 修改为 <Directory "/web/www/html">

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第95张图片

----------------------------------------

由于 httpd 的 perl.so 模块会导致 httpd 无法加载,我们需要将其屏蔽。

vi /etc/httpd/conf.d/perl.conf

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第96张图片

----------------------------------------

找到 LoadModule perl_module modules/mod_perl.so 的前面加 “#” 注释。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第97张图片

----------------------------------------

下面我们测试一下能否启动 Apache 。

先重置一下 /web 的安全上下文;

restorecon -Rv /web

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第98张图片

----------------------------------------

启动 httpd;

systemctl start httpd

如果没有提示信息,则表示启动成功,查看一下 80 端口,已经打开。

netstat -tnl | grep 80

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第99张图片

我们打开浏览器,输入 localhost 测试一下,可以看到 Apache 的提示信息。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第100张图片

----------------------------------------

到 Windows 端,输入 Fedora 的 IP 192.168.1.7 也可以访问。

 

4.5 设置 Mysql 5.5 与 PHP 5.3

MySQL 与 PHP 使用默认的配置文件即可。

MySQL现在无法运行,需要修改SELinux,稍后同前面的服务修改。

PHP 要根据需要通过 yum 安装不同的模块,这个放到最后再来配置。

 

4.6 配置 SELnux

这里是最头疼的,我只是了解了一点,如果有不对的地方,请您指出,谢谢。

我们现在有下列问题:

Samba

4.6.1 Samba 需要对 icanon 的宿主目录具有读写权限;

4.6.2 Samba 需要对 /web/www 具有读写权限;

4.6.3 Samba 需要对 /web/www/html 具有读写权限;

 

Apache

4.6.4 Apache 需要对 /web/www/html 具有读写权限;

 

MySQL

4.6.5 MySQL 现在无法运行。

 

一步一步来:

4.6.1 Samba 需要对 icanon 的宿主目录具有读写权限

首先查看一下 SELinux 的 boolean 值里有关 samba 的信息:

getsebool -a | grep samba

看到 samba_enable_home_dirs 是禁止的,我们需要将他开启:

setsebool -P samba_enable_home_dirs on

现在,Windows 就可以对 icanon 的宿主目录 /home/icanon 进行读写操作了。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第101张图片

----------------------------------------

4.6.2 Samba 需要对 /web/www 具有读写权限

4.6.3 Samba 需要对 /web/www/html 具有读写权限

4.6.4 Apache 需要对 /web/www/html 具有读写权限

这 3 个问题可以合在一起解决。

首先,需要修改 /web/www 的安全上下文;

因为 /web/www/html 即要让 Samba 的 smb 进程有读写权限,又要让 Apache 的 httpd 进程有读写权限;

所以我将他的 安全上下文设置为 public_content_rw_t:

chcon -Rt public_content_rw_t /web/www

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第102张图片

----------------------------------------

其次,需要让 smb 进程 与 httpd 进程本身具有写权限,搜索 SELinux 的布尔值:

getsebool -a | grep smb

getsebool -a | grep httpd

发现他们的写权限对应的2个值均为禁止:

allow_httpd_anon_write --> off

allow_smbd_anon_write --> off

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第103张图片

----------------------------------------

现在将他们开启:

setsebool -P allow_httpd_anon_write on

setsebool -P allow_smbd_anon_write on

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第104张图片

----------------------------------------

如此便解决了以上 3 个问题。

 

4.6.5 MySQL 现在无法运

----------------------------------------

2011-11-27 注 :最近一次升级似乎修复了此 BUG,可以直接启动 mysql

selinux-policy-targeted-3.10.0-56.fc16.noarch

libselinux-devel-2.1.6-4.fc16.i686

libselinux-2.1.6-4.fc16.i686

libselinux-python-2.1.6-4.fc16.i686

libselinux-utils-2.1.6-4.fc16.i686

selinux-policy-3.10.0-56.fc16.noarch 

mysql-5.5.17-1.fc16.i686

libdbi-dbd-mysql-0.8.3-8.fc16.i686

mysql-server-5.5.17-1.fc16.i686

mysql-connector-odbc-5.1.8-3.fc16.i686

php-mysql-5.3.8-3.fc16.i686

mysql-libs-5.5.17-1.fc16.i686

----------------------------------------

最后来处理 Mysql 不能启动的问题,这个似乎最麻烦,

第1次安装时我并没有经过这一步骤,直接可以启动 mysql ,

我想这可能与更新有关吧, 如果您有更好的方法,请回复我,谢谢。

首先运行

systemctl start mysqld.service

无法运行,根据提示输入

systemctl status mysqld.service

看到许多提示信息。

 VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第105张图片

----------------------------------------

mysqld.service - MySQL database server

 Loaded: loaded (/lib/systemd/system/mysqld.service; disabled)

 Active: failed since Thu, 17 Nov 2011 19:39:05 +0800; 6s ago

Process: 2665 ExecStart=/usr/bin/mysqld_safe --nowatch --basedir=/usr (code=exited, status=127)

Process: 2649 ExecStartPre=/usr/libexec/mysqld-prepare-db-dir (code=exited, status=0/SUCCESS)

 CGroup: name=systemd:/system/mysqld.service

 

我们先验证一下是否与 SELinux 有关,执行

setenforce 0

将 SELinux 调整到宽容模式,

再执行:

systemctl start mysqld.service

运行MySQL无提示信息,

systemctl status mysqld.service

提示启动成功,果然是 SELinux 的原因。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第106张图片

----------------------------------------

先将 MySQL 关闭,设置一下 SELinux 规则。

systemctl stop mysqld.service

setenforce 1

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第107张图片

----------------------------------------

打开 应用程序 里的 SELinux Troubleshooter 程序。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第108张图片

----------------------------------------

点击 “Details”会有提示信息。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第109张图片

----------------------------------------

SELinux is preventing /bin/bash from read access on the file /bin/bash.

 

*****  Plugin catchall (100. confidence) suggests  ***************************

 

If you believe that bash should be allowed read access on the bash file by default.

Then you should report this as a bug.

You can generate a local policy module to allow this access.

Do

allow this access for now by executing:

# grep mysqld_safe /var/log/audit/audit.log | audit2allow -M mypol

# semodule -i mypol.pp

 

Additional Information:

Source Context                system_u:system_r:mysqld_safe_t:s0

Target Context                system_u:object_r:shell_exec_t:s0

Target Objects                /bin/bash [ file ]

Source                        mysqld_safe

Source Path                   /bin/bash

Port                          <Unknown>

Host                          fedoran.localdomain

Source RPM Packages           bash-4.2.10-5.fc16

Target RPM Packages           bash-4.2.10-5.fc16

Policy RPM                    selinux-policy-3.10.0-55.fc16

Selinux Enabled               True

Policy Type                   targeted

Enforcing Mode                Permissive

Host Name                     fedoran.localdomain

Platform                      Linux fedoran.localdomain 3.1.1-1.fc16.i686.PAE #1

                              SMP Fri Nov 11 22:04:40 UTC 2011 i686 i686

Alert Count                   18

First Seen                    Thu 17 Nov 2011 07:38:04 PM CST

Last Seen                     Thu 17 Nov 2011 07:40:10 PM CST

Local ID                      fad68267-0ab5-40d0-a7b6-9d0f77069edb

 

Raw Audit Messages

type=AVC msg=audit(1321530010.258:122): avc:  denied  { read } for  pid=2690 comm="mysqld_safe" path="/bin/bash" dev=sda4 ino=132191 scontext=system_u:system_r:mysqld_safe_t:s0 tcontext=system_u:object_r:shell_exec_t:s0 tclass=file

 

 

type=SYSCALL msg=audit(1321530010.258:122): arch=i386 syscall=mprotect success=yes exit=0 a0=811c000 a1=1000 a2=1 a3=811c000 items=0 ppid=1 pid=2690 auid=4294967295 uid=27 gid=27 euid=27 suid=27 fsuid=27 egid=27 sgid=27 fsgid=27 tty=(none) ses=4294967295 comm=mysqld_safe exe=/bin/bash subj=system_u:system_r:mysqld_safe_t:s0 key=(null)

 

Hash: mysqld_safe,mysqld_safe_t,shell_exec_t,file,read

 

audit2allow

 

#============= mysqld_safe_t ==============

allow mysqld_safe_t shell_exec_t:file read;

 

audit2allow -R

 

#============= mysqld_safe_t ==============

allow mysqld_safe_t shell_exec_t:file read;

 

根据提示操作即可,但提示的方法似乎有许多重复,提示的操作为:

grep mysqld_safe /var/log/audit/audit.log | audit2allow -M mypol

将 /var/log/audit/audit.log 日志中有关 mysqld_safe 的选项找出来,然后执行 audit2allow

我们先找执行

grep mysqld_safe /var/log/audit/audit.log > ./001.txt

vi ./001.txt

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第110张图片

----------------------------------------

看一下,发现有许多是重复的问题,我们可以用输入输出重定向的 执行 audit2allow

有不少,但都是同一个问题,只留一个就好

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第111张图片

----------------------------------------

type=AVC msg=audit(1321529884.303:85): avc:  denied  { read } for  pid=2338 comm="mysqld_safe" path="/bin/bash" dev=sda4 ino=132191 scontext=system_u:system_r:mysqld_safe_t:s0 tcontext=system_u:object_r:shell_exec_t:s0 tclass=file

type=SYSCALL msg=audit(1321529884.303:85): arch=40000003 syscall=125 success=no exit=-13 a0=811c000 a1=1000 a2=1 a3=811c000 items=0 ppid=1 pid=2338 auid=4294967295 uid=27 gid=27 euid=27 suid=27 fsuid=27 egid=27 sgid=27 fsgid=27 tty=(none) ses=4294967295 comm="mysqld_safe" exe="/bin/bash" subj=system_u:system_r:mysqld_safe_t:s0 key=(null)

:wq

保存退出。 

其实这个与  SELinux Troubleshooter 里的提示是类似的。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第112张图片

----------------------------------------

type=AVC msg=audit(1321530010.258:122): avc:  denied  { read } for  pid=2690 comm="mysqld_safe" path="/bin/bash" dev=sda4 ino=132191 scontext=system_u:system_r:mysqld_safe_t:s0 tcontext=system_u:object_r:shell_exec_t:s0 tclass=file


type=SYSCALL msg=audit(1321530010.258:122): arch=i386 syscall=mprotect success=yes exit=0 a0=811c000 a1=1000 a2=1 a3=811c000 items=0 ppid=1 pid=2690 auid=4294967295 uid=27 gid=27 euid=27 suid=27 fsuid=27 egid=27 sgid=27 fsgid=27 tty=(none) ses=4294967295 comm=mysqld_safe exe=/bin/bash subj=system_u:system_r:mysqld_safe_t:s0 key=(null)

直接从 SELinux 里复制出来,vi 写成文件即可。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第113张图片

----------------------------------------

以上两种方法可以。

再执行

audit2allow -M mypol < 001.txt

这时当前目录变会生成两个文件,

mypol.pp

mypol.te

之后将 mypol.pp 写入规则

semodule -i mypol.pp

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第114张图片

----------------------------------------

如此 mysql 的 SELinux 规则设置完成。

再次执行

systemctl start mysqld.service

无提示信息,

systemctl status mysqld.service

提示启动成功。

netstat -tnl | grep 3306

看到 3306 端口已经打开,成功!

好的,下面修改一下啊 mysql 密码:

mysqladmin -u root password

输入 mysql 的 root 用户密码即可

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第115张图片

----------------------------------------

好了,LAMP 基本搭建成功,现在就剩下 PHP 的模块了,

我会在安装 织梦 CMS 和 PHPMyAdmin 时修改。

下面我们先将 Samba Apache MySQL 设置为开机启动。

 

4.6 设置 Samba Apache MySQL 开机自启动

这个就比较容易了:

systemctl enable smb.service

systemctl enable nmb.service

systemctl enable httpd.service

systemctl enable mysqld.service

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第116张图片

---------------------------------------- 

reboot

重启系统。

系统重启后查看端口。

netstat -tunl

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第117张图片

----------------------------------------

tcp 80 139 3306

udp 137 138

端口均已打开,说明 Samba Apache MySQL 已经成功运行。

第 4 部分 - 搭建 LAMP 环境 part 2

4.7 安装 织梦 CMS和 PHPMyAdmin 和 php 加载模块

下载 织梦CMS 与 PHPMyAdmin

织梦CMS 5.7(11-11-11 更新) : http://www.dedecms.com/products/dedecms/downloads/

PHPMyAdmin (3.4.7.1):http://www.phpmyadmin.net/home_page/

 

PHPMyAdmin

文件格式为.tar.gz,在 Windows 端将两个压缩包下载,然后拷贝到 Fedora 中,顺便测试一下 Samba。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第118张图片

---------------------------------------- 

在 Fedora 中,先切换到 /web/www 目录

cd /web/www

将 phpmyadmin 解压到当前文件夹

tar -zxf ./phpMyAdmin-3.4.5-all-languages.tar.gz

之后移动到 /web/www/html/phpmyadmin

mv ./phpMyAdmin-3.4.5-all-languages ./html/phpmyadmin

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第119张图片

----------------------------------------

这样我们输入 http://192.168.1.7/phpmyadmin 便会进入 phpmyadmin

由于我在配置 MySQL 时,忘记截图了,又重新安装了一遍,所以 ip 有些不同……

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第120张图片

----------------------------------------

提示我们缺少 mcrypt 模块,

先用 yum 查询一下:

yum list | grep mcrypt

php-mcrypt 正是我们需要的,我们将他下载并安装:

yum install php-mcrypt.i686

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第121张图片

----------------------------------------

安装完成,将 Apache 重启一下:

systemctl restart httpd.service

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第122张图片

----------------------------------------

在 Windows 的浏览器中刷新,看到原来的提示信息已经没用了。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第123张图片

----------------------------------------

之后我们安装 php 模块也可以采取类似的方法,先用 yum list 查询 ,

找到 php-(模块名称),便是我们需要的PHP加载模块。

通过 root 用户便可登录 PHPMyAdmin。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第124张图片

----------------------------------------

织梦CMS 5.7

同样,先切换到 /web/www 目录

cd /web/www

将织梦CMS 解压到当前文件夹

tar -zxf ./DedeCmsV5-1.7-GBK-Final.tar.gz

那个 update 文件夹就是 织梦CMS 的主文件夹,将里面的文件全部移动的 /web/www/html

mv /web/www/uploads/* /web/www/html

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第125张图片
----------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第126张图片

----------------------------------------

在 Windows 端直接输入 Fedora 的 IP 地址便可以进入 织梦CMS 的安装程序。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第127张图片

----------------------------------------

继续,这里与些问题,PHP 不支持 gd ,

无法实现验证码,无法登陆后台,依旧使用 yum 方式安装。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第128张图片

----------------------------------------

先查询一下:

yum list | grep gd

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第129张图片

----------------------------------------

有 php-gd 这个安装包,果断安装:

yum install php-gd

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第130张图片

---------------------------------------

安装完成后,重新启动一下 Apache 。

systemctl restart httpd.service

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第131张图片

---------------------------------------

回到 Windows 端,刷新浏览器,已经支持 gd。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第132张图片

---------------------------------------

继续,输入 MySQL 的密码,其他信息可根据需要修改。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第133张图片

---------------------------------------

安装成功。

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第134张图片

---------------------------------------

织梦前台

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第135张图片

---------------------------------------

织梦后台

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第136张图片

---------------------------------------

VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2..._第137张图片

你可能感兴趣的:(VirtualBox 安装 Fedora 16 运行 Gnome3 Samba Apache2...)