1 ubuntu Linux 安装
1.1 ubuntu (Desktop)发行版本LINUX安装
本次安装采用ubuntu-Desktop发行版本的光盘介质安装,该光盘为LiveCD,即可以直接光盘启动并进入ubuntu OS。本次使用Version 6.06 LTS for PC。
启动LiveCD后提示是否安装ubuntu,选择安装,然后进入系统配置,如计算机名,用户名,用户密码,此时root用户密码初始为空(等待系统安装完毕可自行更改)。
然后进入到分配磁盘空间。(如果先前装有Windows,请预先划分Windows最后一个逻辑磁盘分区供ubuntu使用。),ubuntu提供三种磁盘划分模式--自动,升级,自定义。
a. 自动是指系统自动根据大小划分空间比例,完全格式化;
b. 升级是在原来划分好的空间上升级覆盖已有的系统文件,不作格式化要求,不会丢失以往数据;
c. 自定义是指手工划分空间(推荐),这种方式是最安全.
你至少需要有以下分区:
• 一个类型为 Linux native 的 /boot 分区
• 一个类型为 Linux native 的 / (根) 分区
• 一个类型为 Linux swap 的
最后系统会自动安装完毕,坐着喝茶就行了。
1.2 说明
Ubuntu只提供功能强大并且完整的操作系统层和基础应用层软件,更多的软件可以直接通过网络安装完成。
1.3 补充
如果需要了解更多关于Linux安装情况,请参阅经典《Red Hat Linux 9: Red Hat Linux x86 安装指南》 。
2 Mysql
2.1 Mysql的获取及安装
Mysql的获取方式很多,如果是手工安装,建议每次安装都到官方网站查看一下最新版本
下载镜像地址:http://www.mysql.org/downloads/mysql/5.0.html。
因为Linux 的发行版本过多,所以各个Linux发行版本的应用软件也存在差异,所以选择合适的软件版本很重要,大致两种方式比较可靠:一种是直接使用源码编译,一种是使用当前Linux发行版本的安装包。
由于源码编译时间过长(P2 333的机器估计也得5个小时吧)这里我们使用apt-get来通过网络自动获取ubuntu的当前版本(不一定是最新版本,但一定是最匹配的版本)的软件安装包。
具体操作如下:
1 打开终端,输入su,输入密码,切换到superUser
(Ubuntu提供一条sudo命令,可以先执行,再输入密码)
2 sudo apt-get install mysql-server-5.0
3 选择Y继续安装,系统会自动安装完所有的相关软件包以及共享库
4 sudo /opt/mysql/bin/mysqladmin -u root password 123456
//设置root 用户的密码为123456
5 mysql -u root -p
//试试看mysql能不能登录。\q退出。
2.2 安全
重新启动计算机,在终端$下输入mysql能直接进入mysql>下,说明有空用户存在。解决办法:先\q退出,再:
mysql -u root -p
mysql>delete from mysql.user where user=''; #删除空用户,强烈建议。
mysql>flush privileges; #刷新权限表,以便可以使更改立即生效
mysql>\q #回车退出
结果:再输入mysql,就不能进入了。必须用mysql -u xxxx -p的形式了。
修改密码:
终端输入:
$mysql -u root -p
UPDATE mysql.user SET Password = OLD_PASSWORD('123456') WHERE Host = 'localhost' AND User = 'root';
原因:我们修改过MYSQL的root的密码,因为MYSQL的password的散列加密方法和以前有了变化,所以出了这个问题 这个改变在MYSQL4.1版以上才有原先的方式变成了OLD_PASSWORD,我们重新更新一下密码就好了。
2.3 补充
源码编译安装方法:
2.3.1 下载mysql5的linux版本
地址: http://www.mysql.org/downloads/mysql/5.0.html
2.3.2 安装GCCt等必备的软件
在终端下执行(网通用户请用交大的源):
sudo apt-get install gcc cpp g++ libncurses5-dev
sudo apt-get install make autoconf automake libtool
2.3.3 解压
对于*.tar.gz的文件使用命令tar zxvf *.tar.gz来解压;
对于*.tar.bz2的文件使用命令tar jxvf *.tar.bz2来解压.
将mysql,php,apache以及gd安装到/opt/目录下,便于管理.
具体过程可参考:
把桌面上刚下的MySQL复制到/tmp下:cp Desktop/mysql-5.0.20.tar.gz /tmp
进入/tmp目录:cd /tmp
解压并展开:tar zxvf mysql-5.0.20.tar.gz
2.3.4 编译安装MySQL
进入到解压后的mysql目录:
cd mysql-5.0.20
假设我常用用户是xcg1688,则在终端输入下面的命令:
./configure --prefix=/opt/mysql --with-mysqld-user=xcg1688 --with-extra-charsets=all --with-unix-socket-path=/tmp/mysql.sock
--prefix=/opt/mysql 把mysql-5.0.20指定安装到/opt/mysql目录中;
--with-extra-charsets=all 对多语言的支持;
--with-unix-socket-path=/tmp/mysql.sock 这个是指定mysql服务器启动后,联机套接字文件 所处的位置和文件名,也就是说,如果mysql服务器成功启动后,就能在/tmp 目录中看到 mysql.sock文件。如果看不到,肯定是mysql启动不了。
--with-mysqld-user=xcg1688 这个是让mysql服务器也能让系统中普通用户xcg1688也能启动 mysql服务器。用普通用户来启动mysql的好处是:mysql的进程会自己死掉自动退出。当然root 用户也可以,不过有时mysql有些进程死了,但不会自动退出,root自己也杀不掉。所以用普 通用户就有这样的好处,大多不会出现mysql进程已死,但不会退出的情况;
当您看到“Thank you for choosing MySQL!”时,说明成功。
2.3.5 安装
sudo make
sudo make install
在我的C2.66计算机上make时花了1小时15分钟。第二次花了40分钟左右。
2.3.6 配置
sudo cp /opt/mysql/share/mysql/my-medium.cnf /etc/my.cnf
这是将配置文件拷贝到/etc目录下成为my.cnf,大家可以根据自己的需要选择配置文件(配置文 件在 /opt/mysql/share/mysql/目录下,有my-huge.cnf my-medium.cnf my-large.cnf my-small.cnf这些).
运行
sudo /opt/mysql/bin/mysql_install_db
这个命令是创建MySQL的授权表.
sudo chmod 755 /opt/mysql/var //设置/opt/mysql/var的目录权限为755
sudo chown -R xcg1688:xcg1688 /opt/mysql/var //如果希望使用xcg1688这个用户来启动 mysql的话
sudo /opt/mysql/share/mysql/mysql.server start //启动mysql服务
sudo chown -R xcg1688:xcg1688 /opt/mysql/ //把/opt/mysql目录归属到xcg1688这个用户 下
sudo /opt/mysql/bin/mysqladmin -u root password 123456 //设置root用户的密码为123456
/opt/mysql/bin/mysql -u root -p //试试看mysql能不能登录。\q退出。
2.3.7 设置MySQL的环境变量
cd //回到你的用户目录。
cp .bashrc .bashrc_bak //备份.bashrc
gedit ~/.bashrc
在最后加入:export PATH=/opt/mysql/bin:$PATH:.
然后在终端输入:source ~/.bashrc #使刚修改的起作用
env //查看环境变量
mysql
上面的修改只针对某一用户,你还可以用另外一种办法:在/etc/profile添加PATH路径后,注 销一次再echo应该就可以了。
2.3.8 设置MYSQL自动启动
sudo cp /opt/mysql/share/mysql/mysql.server /etc/rc2.d/S20mysql
另外办法:sudo gedit /etc/init.d/mysql //建立服务的shell脚本,在服务中你可看到它。
加入
#!/bin/sh
/opt/mysql/share/mysql/mysql.server start
然后
$sudo chmod 755 /etc/init.d/mysql
$sudo chmod +x /etc/init.d/mysql
最后,到服务中选中它。
3 Apache2 + PHP5安装
3.1 安装
打开终端执行:
sudo apt-get install apache2 //安装apache2
sudo apt-get install php5 //安装php5
sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install php5-mysql
sudo apt-get install php5-gd
3.2 配置PHP.ini文件
1) 因对GD的支持所以要改一下,如果使用源码安装MYSQL则需要把mysql.so也挂上:
sudo gedit /etc/php5/apache2/php.ini
在文件最后找到代码: #extension=mysql.so
#extension=gd.so
检查一下,前面如果有注释#,去掉它保存就好了。如果你要改什么上传文件大小、使用内存的大小,可以一并改了。
2) 修改内存限制
找到memory_limit
默认
memory_limit=8M
修改为
memory_limit=32M
3)关闭gpc
找到magic_quotes_gpc
默认
magic_quotes_gpc = On
修改为
magic_quotes_gpc = Off
注意大小写
3) 找到代码:mysql.default_socket =
改成: mysql.default_socket = '/tmp/mysql.sock'
3.3 配置Apache2虚拟目录
$ sudo gedit /etc/apache2/setes-available/default
找到 DocumentRoot ~
修改为 DocumentRoot /var/www
找到 Directory ~
修改为 Directory /var/www
4 Symfony
4.1 Symfony 的获取
Symfony是基于应用层之上的,所以与Linux发行版本无太大差异,但由于安装方式的不同,可选择的安装文件也不太一样。
官方提供三种安装方式:Sandbox模块组合安装 ; Pear在线安装 ; 源码手动安装。
Sandbox只提供一个基础的Symfony,但不提供任何模块和组件
源码安装需要手动移动目录和配置一些文件
以上两种方式比较复杂,安装执行效率比较低,所以我们选择Pear安装方式。
4.2 Pear 安装Symfony
首先安装Pear
这个时候需要更改APT源,使用交大的ubuntu的源
• sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup
• sudo gedit /etc/apt/sources.list
•
• 用以下内容替换文件中的所有内容
• deb http://ubuntu.cn99.com/ubuntu/ breezy main restricted universe multiverse
• deb http://ubuntu.cn99.com/ubuntu/ breezy-updates main restricted universe multiverse
• deb http://ubuntu.cn99.com/ubuntu/ breezy-security main restricted universe multiverse
• deb http://ubuntu.cn99.com/ubuntu/ breezy-backports main restricted universe multiverse
• deb http://ubuntu.cn99.com/ubuntu-cn/ breezy main restricted universe multiverse
sodu apt-get update
sodu apt-get install pear
按提示安装完pear
确认ubuntu是否已经安装Pear.
$ Pear –V
PEAR Version: 1.4.11
PHP Version: 5.1.2
Zend Engine Version: 2.1.0
Running on: Linux nonobo-LInux-one 2.6.15-26-386 #1 PREEMPT Thu Aug 3 02:52:00 UTC 2006 i686
如果显示以上信息则表示Pear已经安装
安装Symfony
$ pear upgrade PEAR
$ pear channel-discover pear.symfony-project.com
$ pear remote-list -c symfony
$ pear install symfony/symfony
$ pear install http://phing.info/pear/phing-current.tgz
安装的目录应该存在一下路径
$php_dir/symfony/ main libraries
$data_dir/symfony/ skeleton of symfony applications, default modules and configuration
$doc_dir/symfony/ documentation
$test_dir/symfony/ unit tests
修改apache2.conf
$ sudo gedit /etc/apache2/apache2.conf
在末尾处加上
AllowOverride All
Allow from All
ServerName myapp.example.com
DocumentRoot "/var/www/myproject/web"
DirectoryIndex index.php
Alias /sf /usr/share/php/data/symfony/web/sf
AllowOverride All
Allow from All
4.3 测试Symfony
1) 建立一个Symfony项目
$ sudo mkdir /var/www/myproject
$ cd /var/www/myproject
$ symfony init-project myproject
$ symfony init-app myapp
2) 重启Apache2
$ sudo /etc/init.d/apache2 restart
3)
3) 打开浏览器测试
输入http://127.0.0.1
显示以下信息则表示测试成功
Congratulations!
If you see this page, it means that the creation of your symfony project on this system was successful .
...
没有评论:
发表评论