php交流

2008-12-11

Linux AS4 Apache2.2.6 + PHP5.2.5 + Mysql5.0.45 配置

归类于: linux — admin @ 10:22 pm

软件准备:


1. Apache2.2.6
http://apache.mirror.phpchina.com/httpd/httpd-2.2.6.tar.gz
2. PHP5.2.5 http://cn.php.net/get/php-5.2.5.tar.gz/from/cn2.php.net/mirror
3. Mysql5.0.45 http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.45-linux-i686-glibc23.tar.gz/from/http://mirror.mysql-partners-jp.biz/
4. gd-2.0.35 http://www.libgd.org/releases/gd-2.0.35.tar.gz
5. zlib1.2.3 http://downloads.sourceforge.net/libpng/zlib-1.2.3.tar.gz?modtime=1121680730&big_mirror=0
6. libpng1.2.24 http://downloads.sourceforge.net/libpng/libpng-1.2.24.tar.gz?modtime=1197632021&big_mirror=0
7. jpeg-6b ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz
8. freetype2.3.5 http://downloads.sourceforge.net/freetype/freetype-2.3.5.tar.gz?modtime=1183336047&big_mirror=0
9. fontconfig2.5.0 http://www.fontconfig.org/release/fontconfig-2.5.0.tar.gz
10. openssl0.9.8g http://www.openssl.org/source/openssl-0.9.8g.tar.gz
11. libxml2.2.6.30 http://ftp.acc.umu.se/pub/GNOME/sources/libxml2/2.6/libxml2-2.6.30.tar.gz
12. libxslt1.1.22 http://ftp.acc.umu.se/pub/GNOME/sources/libxslt/1.1/libxslt-1.1.22.tar.gz
13. libmcrypt-2.5.8 http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0
14. curl-7.17.1 http://curl.haxx.se/download/curl-7.17.1.tar.gz

安装软件:

Openssl
tar zxvf openssl-0.9.8g.tar.gz
cd openssl-0.9.8g
./config –prefix=/usr/local/openssl
make
make install

Zlib
tar zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure –prefix=/usr/local/zlib
make
make install

Libpng
tar zxvf libpng-1.2.24.tar.gz
cd libpng-1.2.24
./configure –prefix=/usr/local/libpng
make
make install

Freetype
tar zxvf freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure –prefix=/usr/local/freetype
make
make install

Jpeg
mkdir /usr/local/jpeg
mkdir /usr/local/jpeg/include
mkdir /usr/local/jpeg/lib
mkdir /usr/local/jpeg/bin
mkdir /usr/local/jpeg/man/
mkdir /usr/local/jpeg/man/man1/
tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure –prefix=/usr/local/jpeg –enable-shared –enable-static
make
make test
make install

Fontconfig
tar zxvf jpegsrc.fontconfig-2.5.0.tar.gz
cd fontconfig-2.5.0
./configure –prefix=/usr/local/fontconfig –disable-docs –sysconfdir=/etc –mandir=/usr/share/man
make
make install

Gd
tar zxvf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure –prefix=/usr/local/gd/ –with-zlib=/usr/local/zlib/ –with-png=/usr/local/libpng/ –with-jpeg=/usr/local/jpeg/ –with-freetype=/usr/local/freetype/ –with-fontconfig=/usr/local/fontconfig
make
make install

Libxml
tar zxvf libxml2-2.6.30.tar.gz
cd libxml2-2.6.30
./configure –prefix=/usr/local/libxml
make
make install

Libxslt
tar zxvf libxslt-1.1.22.tar.gz
cd libxslt-1.1.22
./configure –prefix=/usr/local/libxslt –with-libxml-prefix=/usr/local/libxml
make
make install

libmcrypt
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure –prefix=/usr/local/libmcrypt
make
make install

Curl
tar zxvf curl-7.17.1.tar.gz
cd curl-7.17.1
./configure –prefix=/usr/local/curl –enable-shared –enable-http –enable-file –enable-libgcc –enable-ftp –enable-thread –enable-cookies –enable-ldaps –with-ssl=/usr/local/openssl/ –with-zlib=/usr/local/zlib
make
make install

Mysql
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> cd /usr/local
shell> gunzip < /home/mysql-5.0.45-i686-glibc23.tar.gz | tar xvf -
shell> ln -s ./mysql-5.0.45-i686-glibc23 mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db –user=mysql
shell> chown -R root .
shell> chown -R mysql data
shell> bin/mysqld_safe –user=mysql &
设置root密码:
shell> /usr/local/mysql/bin/mysqladmin -u root password ‘root’

自启动:
cd /etc/rc.d/init.d
cp /usr/local/mysql/support-files/mysql.server mysql
chmod +x mysql
/sbin/chkconfig –del mysql
/sbin/chkconfig –add mysql

cd /usr/local/bin
ln -fs /usr/local/mysql/bin/mysql mysql
Apache
tar zxvf http-2.2.6.tar.gz
cd http-2.2.6
./configure –prefix=/usr/local/apache –enable-auth-anon –enable-auth-dbm –enable-cache –enable-disk-cache –enable-expires –enable-file-cache –enable-headers –enable-info –enable-logio –enable-mem-cache –enable-proxy –enable-rewrite –enable-ssl –with-ssl=/usr/local/openssl -enable-unique-id –enable-usertrack –enable-vhost-alias –enable-mods-shared=most
make
make install

Php
tar zxvf php-5.2.5.tar.gz
cd php-5.2.5
./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php –with-mysqli=/usr/local/mysql/bin/mysql_config –with-mysql=/usr/local/mysql –with-apxs2=/usr/local/apache/bin/apxs –with-openssl-dir=/usr/local/openssl –with-expat-dir=/usr/lib –with-mcrypt=/usr/local/libmcrypt –enable-xslt –enable-pdo –with-pdo-mysql=/usr/local/mysql –enable-mbstring –with-gd=/usr/local/gd/ –with-jpeg-dir=/usr/local/jpeg/ –with-zlib-dir=/usr/local/zlib/ –with-png-dir=/usr/local/libpng/ –with-freetype-dir=/usr/local/freetype/ –with-mime-magic –with-png –with-xml –with-iconv –enable-gd-native-ttf –enable-ftp –enable-embed –enable-fastcgi –enable-calendar –enable-magic-quotes –enable-track-vars –enable-sockets –enable-soap –enable-pcntl –enable-mbstring=all –enable-mbregex –with-libxml-dir=/usr/local/libxml –with-xsl=/usr/local/libxslt/ –with-curl-dir=/usr/local/curl
make
make test
make install

配置php
cp php.ini-dist /usr/local/php/php.ini

配置Apache
vi /usr/local/apache/conf/httpd.conf
在LoadModule处添加:
LoadModule php5_module /usr/local/php/lib/libphp5.so
找到 AddType application/x-gzip .gz .tgz 在其下添加如下内容
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps

重启apache
# /usr/local/apache/bin/apachectl restart

让apache自动启动
1. 将apachectl文件拷贝到/etc/rc.d/init.d 中,然后在/etc/rc.d/rc5.d/下加入链接即可。
命令如下:
cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd
ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd
2. 运行chkconfig –list,发现没有linux服务列表中httpd,通过chkconfig –add httpd来添加,但是提示:httpd服务不支持 chkconfig。需要编辑/etc/rc.d/init.d/httpd,添加以下注释信息:
# chkconfig: 345 85 15
# descrīption: Apache
第一行3个数字参数意义分别为:哪些Linux级别需要启动httpd(3,4,5);启动序号(85);关闭序号(15)。
保存后执行:chkconfig –add httpd,成功添加。
在rc3.d、rc4.d、rc5.d路径中会出现S85httpd的链接文件,其他运行级别路径中会出现K61httpd的链接文件。
3. 运行chkconfig –list,httpd在其中。

2008-09-05

linux 下面安装显卡驱动程序

归类于: linux — admin @ 9:28 pm

Intel 集成显卡的Linux驱动安装

目前使用Intel 集成显卡的计算机主要集中在中低端商务台式机和中低端笔记本电脑。这里介绍一下Linux下显卡驱动安装方法。I 
ntel针对集成显示芯片提供了两种驱动程序:i915Graphics和i810Graphics。

一、 使用82830M, 82845G, 82852GM, 82855GM, 82865G, 82915G芯片组显卡安装
基于以上芯片组的Intel芯片整合图形处理器:Extreme Graphics、Extreme Graphics2、GMA900在Linux使用相同的驱动程序。 包括以下类型:
Intel(R) 830M Chipset;Intel(R) 830MG Chipset ; Intel(R) 845G Chipset 
Intel(R) 845GE Chipset ;Intel(R) 845GL Chipset ; Intel(R) 845GV Chipset 
Intel(R) 852GM Chipset ;Intel(R) 852GME Chipset ;Intel(R) 855GM Chipset 
Intel(R) 855GME Chipset ;Intel(R) 865G Chipset ;Intel(R) 865GV Chipset 
Intel(R) 915G Express Chipset ;Intel(R) 915GV Express Chipset 
Intel(R) 910GL Express Chipset ;Mobile Intel(R) 915GM Express Chipset 
Mobile Intel(R) 915GMS Express Chipset ;Mobile Intel(R) 910GML Express Chipset
1.驱动下载:
官方驱动网址: http://downloadfinder.intel.com/  (阅读全文…)

2008-08-19

linux系统中OpenSSH的安装和配置

归类于: linux — admin @ 9:05 am

许多网络程序,如telnet、rsh、rlogin或rexec,用明文(plain text)传送口令和秘密的信息,所以就可利用任何连接到网络上的计算机监听这些程序和服务器之间的通信并获取口令和秘密信息。现在,telnet程序对于日常的管理工作是必不可少的,但是它又是不安全的,那么用什么来替代它呢?OpenSSH就是那些过时的、不安全的远程登录程序,如:telnet、rlogin、rsh、rdist或rcp的替代品。 在OpenSSH的README文件中提到:ssh(Secure Shell)程序可以通过网络登录到远程主机并执行命令。它提供了很强的安全验证可以在不安全的网络中进行安全的通信。 

我们把OpenSSH配置成支持TCP-Wrappers(inetd超级服务器),这样能够进一步地提高安全性而且也没有必要把OpenSSH作为守护进程(daemon)在后台运行。当客户端的程序提出连接请求的时候,TCP-Wrappers守护进程就会在把连接重定向到OpenSSH之前,对连接请求进行验证和授权。OpenSSH是自由软件而且使用不受专利保护的加密算法。因此,我建议你使用OpenSSH(免费而且修正了一些bug),而不使用SSH1(免费但是有bug)和SSH2(现在使用商用的许可协议)。 

注意事项 
下面所有的命令都是Unix兼容的命令。 

源路径都为“/var/tmp”(当然在实际情况中也可以用其它路径)。 (阅读全文…)

LINUX目录详解

归类于: linux — admin @ 9:00 am

根文件系统一般应该比较小,因为包括严格的文件和一个小的不经常改变的文件系统不容易损坏。损坏的根文件系统一般意味着除非用特定的方法(例如从软盘)系统无法引导,所以不应该冒这个险。

根目录一般不含任何文件,除了可能的标准的系统引导映象,通常叫/vmlinuz 。所有其他文件在根文件系统的子目录中。

/bin
引导启动所需的命令或普通用户可能用的命令(可能在引导启动后)。
/sbin
类似/bin ,但不给普通用户使用,虽然如果必要且允许时可以使用。
/etc
特定机器的配置文件。
/root
root用户的家目录。
/lib
根文件系统上的程序所需的共享库。
/lib/modules
核心可加载模块,特别是那些恢复损坏系统时引导所需的(例如网络和文件系统驱动)。
/dev
设备文件。
/tmp
临时文件。引导启动后运行的程序应该使用/var/tmp ,而不是/tmp ,因为前者可能在一个拥有更多空间的磁盘上。
/boot
引导加载器(bootstrap loader)使用的文件,如LILO。核心映象也经常在这里,而不是在根目录。如果有许多核心映象,这个目录可能变得很大,这时可能使用单独的文件系统更好。另一个理由是要确保核心映象必须在IDE硬盘的前1024柱面内。
/mnt
系统管理员临时mount的安装点。程序并不自动支持安装到/mnt 。 /mnt 可以分为子目录(例如/mnt/dosa 可能是使用MSDOS文件系统的软驱,而/mnt/exta 可能是使用ext2文件系统的软驱)。
/proc , /usr , /var , /home
其他文件系统的安装点。

/etc 目录包含很多文件。下面说明其中的一些。其他的你应该知道它们属于哪个程序,并阅读该程序的man页。许多网络配置文件也在/etc 中,它们在《网络管理指南》中说明。

/etc/rc or /etc/rc.d or /etc/rc?.d
启动、或改变运行级时运行的scripts或scripts的目录,更详细的信息见关于init 的章。

/etc/passwd
用户数据库,其中的域给出了用户名、真实姓名、家目录、加密的口令和用户的其他信息。格式见passwd 的man页。

/etc/fdprm
软盘参数表。说明不同的软盘格式。用setfdprm 设置。更多的信息见setfdprm 的man页。

/etc/fstab
启动时mount -a命令(在/etc/rc 或等效的启动文件中)自动mount的文件系统列表。 Linux下,也包括用swapon -a启用的swap区的信息。见4.8.5节和mount 的man页。

/etc/group
类似/etc/passwd ,但说明的不是用户而是组。见group 的man页。

/etc/inittab
init 的配置文件。

/etc/issue
getty 在登录提示符前的输出信息。通常包括系统的一段短说明或欢迎信息。内容由系统管理员确定。

/etc/magic
file 的配置文件。包含不同文件格式的说明,file 基于它猜测文件类型。见magic 和file 的man页。

/etc/motd
Message Of The Day,成功登录后自动输出。内容由系统管理员确定。经常用于通告信息,如计划关机时间的警告。

/etc/mtab
当前安装的文件系统列表。由scripts初始化,并由mount 命令自动更新。需要一个当前安装的文件系统的列表时使用,例如df 命令。

/etc/shadow
在安装了影子口令软件的系统上的影子口令文件。影子口令文件将/etc/passwd 文件中的加密口令移动到/etc/shadow 中,而后者只对root可读。这使破译口令更困难。

/etc/login.defs
login 命令的配置文件。

/etc/printcap
类似/etc/termcap ,但针对打印机。语法不同。

/etc/profile , /etc/csh.login , /etc/csh.cshrc
登录或启动时Bourne或C shells执行的文件。这允许系统管理员为所有用户建立全局缺省环境。各shell见man页。

/etc/securetty
确认安全终端,即哪个终端允许root登录。一般只列出虚拟控制台,这样就不可能(至少很困难)通过modem或网络闯入系统并得到超级用户特权。

/etc/shells
列出可信任的shell。chsh 命令允许用户在本文件指定范围内改变登录shell。提供一台机器FTP服务的服务进程ftpd 检查用户shell是否列在 /etc/shells 文件中,如果不是将不允许该用户登录。

/etc/termcap
终端性能数据库。说明不同的终端用什么”转义序列”控制。写程序时不直接输出转义序列(这样只能工作于特定品牌的终端),而是从/etc/termcap 中查找要做的工作的正确序列。这样,多数的程序可以在多数终端上运行。见termcap 、 curs_termcap 和terminfo 的man页。

/dev目录
/dev 目录包括所有设备的设备文件。设备文件用特定的约定命名,这在设备列表中说明 (见[Anv])。设备文件在安装是产生,以后可以用 /dev/MAKEDEV 描述。 /dev/MAKEDEV.local 是系统管理员为本地设备文件(或连接)写的描述文稿 (即如一些非标准设备驱动不是标准MAKEDEV 的一部分)。

/usr 文件系统经常很大,因为所有程序安装在这里。 /usr 里的所有文件一般来自Linux distribution;本地安装的程序和其他东西在/usr/local 下。这样可能在升级新版系统或新distribution时无须重新安装全部程序。 /usr 的有些子目录在下面列出(一些不太重要的目录省略了,更多信息见FSSTND)。

/usr/X11R6
X Window系统的所有文件。为简化X的开发和安装,X的文件没有集成到系统中。 X自己在/usr/X11R6 下类似/usr 。
/usr/X386
类似/usr/X11R6 ,但是给X11 Release 5的。
/usr/bin
几乎所有用户命令。有些命令在/bin 或/usr/local/bin 中。
/usr/sbin
根文件系统不必要的系统管理命令,例如多数服务程序。
/usr/man , /usr/info , /usr/doc
手册页、GNU信息文档和各种其他文档文件。
/usr/include
C编程语言的头文件。为了一致性这实际上应该在/usr/lib 下,但传统上支持这个名字。
/usr/lib
程序或子系统的不变的数据文件,包括一些site-wide配置文件。名字lib来源于库(library); 编程的原始库存在/usr/lib 里。
/usr/local
本地安装的软件和其他文件放在这里。
/var/catman
当要求格式化时的man页的cache。man页的源文件一般存在/usr/man/man* 中;有些man页可能有预格式化的版本,存在/usr/man/cat* 中。而其他的man页在第一次看时需要格式化,格式化完的版本存在/var/man 中,这样其他人再看相同的页时就无须等待格式化了。 (/var/catman 经常被清除,就象清除临时目录一样。)
/var/lib
系统正常运行时要改变的文件。
/var/local
/usr/local 中安装的程序的可变数据(即系统管理员安装的程序)。注意,如果必要,即使本地安装的程序也会使用其他/var 目录,例如/var/lock 。
/var/lock
锁定文件。许多程序遵循在/var/lock 中产生一个锁定文件的约定,以支持他们正在使用某个特定的设备或文件。其他程序注意到这个锁定文件,将不试图使用这个设备或文件。
/var/log
各种程序的Log文件,特别是login (/var/log/wtmp log所有到系统的登录和注销) 和syslog (/var/log/messages 里存储所有核心和系统程序信息。 /var/log 里的文件经常不确定地增长,应该定期清除。
/var/run
保存到下次引导前有效的关于系统的信息文件。例如, /var/run/utmp 包含当前登录的用户的信息。
/var/spool
mail, news, 打印队列和其他队列工作的目录。每个不同的spool在/var/spool 下有自己的子目录,例如,用户的邮箱在/var/spool/mail 中。
/var/tmp
比/tmp 允许的大或需要存在较长时间的临时文件。 (虽然系统管理员可能不允许/var/tmp 有很旧的文件。)

/proc 文件系统是一个假的文件系统。它不存在在磁盘某个磁盘上。而是由核心在内存中产生。用于提供关于系统的信息(originally about processes, hence the name)。下面说明一些最重要的文件和目录。 /proc 文件系统在proc man页中有更详细的说明。

/proc/1
关于进程1的信息目录。每个进程在/proc 下有一个名为其进程号的目录。
/proc/cpuinfo
处理器信息,如类型、制造商、型号和性能。
/proc/devices
当前运行的核心配置的设备驱动的列表。
/proc/dma
显示当前使用的DMA通道。
/proc/filesystems
核心配置的文件系统。
/proc/interrupts
显示使用的中断,and how many of each there have been.
/proc/ioports
当前使用的I/O端口。
/proc/kcore
系统物理内存映象。与物理内存大小完全一样,但不实际占用这么多内存;it is generated on the fly as programs access it. (记住:除非你把它拷贝到什么地方,/proc 下没有任何东西占用任何磁盘空间。)
/proc/kmsg
核心输出的消息。也被送到syslog 。
/proc/ksyms
核心符号表。
/proc/loadavg
系统”平均负载”;3个没有意义的指示器指出系统当前的工作量。
/proc/meminfo
存储器使用信息,包括物理内存和swap。
/proc/modules
当前加载了哪些核心模块。
/proc/net
网络协议状态信息。
/proc/self
到查看/proc 的程序的进程目录的符号连接。当2个进程查看/proc 时,是不同的连接。这主要便于程序得到它自己的进程目录。
/proc/stat
系统的不同状态,such as the number of page faults since the system was booted.
/proc/uptime
系统启动的时间长度。
/proc/version
核心版本。

2008-08-18

Webmin下载,安装和使用

归类于: linux — admin @ 9:04 am

官方站点:http://www.webmin.com/
http://sourceforge.net/project/showfiles.php?group_id=17457&package_id=13391&release_id=540945
Rpm包下载页面:
http://prdownloads.sourceforge.net/webadmin/webmin-1.200-1.noarch.rpm
进行安装:https://heiying.localdomain:10000进行登录到它,用户名密码分别都是root.,
有时需要这样安装#./setup.pl
下边从windows下登录一下,IP为linux的IP
  评论(0)

软件安装之--RPM命令大全

归类于: linux — admin @ 9:04 am

从一般意义上说,软件包的安装其实是文件的拷贝,RPM安装软件包,也无外乎此。但RPM要更进一步、更聪明一些就需要多做些工作了。

聪明的安装
从一般意义上说,软件包的安装其实是文件的拷贝,即把软件所用的各个文件拷贝到特定目录。RPM安装软件包,无外乎此。但RPM要更进一步,更聪明一些。在安装前,它通常要执行以下操作:

1.检查软件包的依赖(Dependency)

RPM格式的软件包中可包含有依赖关系的描述,如软件执行时需要什么动态链接库,需要什么程序存在及版本号要求等。当RPM检查时发现所依赖的链接库或程序等不存在或不符合要求时,默认的做法是中止软件包安装。

2.检查软件包的冲突(Conflicts)

有的软件与某些软件不能共存,软件包制作者会将这种冲突记录到RPM软件包中。安装时,若RPM发现有冲突存在,将会中止安装。

3.执行安装前脚本程序(Preinstall)

此类程序由软件包制作者设定,需要在安装前执行。通常是检测操作环境,建立有关目录,清理多余文件等等,为顺利安装作准备。

4.处理配置文件(Configfiles)

RPM对配置文件(Configfiles)有着特别的处理。因为用户常常需要根据实际情况,对软件的配置文件做相应的修改。如果安装时简单地覆盖了此类文件,则用户又得重新手工设置,很麻烦。这种情况下,RPM做得比较明智:它将原配置文件换个名字保存了起来(原文件名后缀加上.rpmorig),用户可根据需要再恢复,避免重新设置的尴尬。

5.解压软件包并存放到相应位置

这是最重要的部分,也是软件包安装的关键所在。在这一步,RPM将软件包解压缩,将其中的文件一个个存放到正确的位置,同时,文件的操作权限等属性相应设置正确。

6.执行安装后脚本程序(Postinstall)

此类程序为软件的正确执行设定相关资源,如修改inetd.conf、运行ldconfig程序以利新的动态链接库生效等等。

7.更新RPM数据库

安装后,RPM将所安装的软件及相关信息记录到其数据库中,便于以后升级、查询、校验和卸载。

8.执行安装时触发脚本程序(Triggerin)

触发脚本程序是指软件包满足某种条件(如已安装软件包sendmail,或file版本大于3.0)时才触发执行的脚本程序,它用于软件包之间的交互控制。触发脚本程序有三类:一是软件包安装时才触发的,称为安装时触发脚本程序(triggerin);二是软件包卸载前触发的,叫作卸载前触发脚本程序(triggerun);三是软件包卸载后才触发执行的,称作卸载后触发脚本程序(triggerpostun)。这些触发脚本程序,大大扩展了RPM软件包管理的功能。 (阅读全文…)

2008-08-15

CentOS 4.2中安装DirectAdmin

归类于: linux — admin @ 4:35 pm

CentOS 4.2中安装DirectAdmin

1. 安装gcc, gcc-c++

yum install gcc

yum install gcc-c++

想当然第一次装的时候, 是一个header, 一个header,   一个RPM, 一个RPM慢慢装的啊, 哪里知道这两条命令就能全搞定. 幸好遇到这个新的公司的这个技术, 要不然还不一辈子当傻子了? (阅读全文…)

让虚拟机Linux与宿主机Windows资源共享

归类于: linux, php — admin @ 8:59 am

虚拟机的使用的确给Linux的学习者提供了很大的方便。不过在Linux学习过程中,当涉及到应用软件的使用时,虽然可以直接从网上下载程序包或源码,但用惯了迅雷,对Linux中的下载速度简直无法忍受,且原有的很多资源本应该可以直接使用,没有必要重新下载。因而在两个系统中共享信息成为亟待解决的问题。

  在网上搜索了大量相关信息,介绍两个系统间信息共享的不少,但是提供虚拟机host-guest机不同系统之间资源共享解决方案的不多。在朋友的帮助下,经过多次尝试和摸索,终于有了一些搜获。现提供一套包括局域网配置在内的较为详细的解决方案,供初学者参考。

  环境介绍:
  虚拟机:VMware Workstation 5.5
  Host机系统:Windows 2000 Server
  Guest机系统:Red Hat Enterprise Linux 4

  其实作为两个系统而言,要进行资源的共享,方法很多,最初我尝试了使用mount命令挂载文件系统。从命令本身来看,想要挂载一个Windows下的文件系统或驱动盘似乎没有什么问题。

  首先在Linux系统/mnt空目录下,建立挂载点:#mkdir /mnt/mystudy

  /mnt目录是专门用来当作挂载点的目录。mystudy是自定义的专用挂载点名称。

  然后我们看一下mount命令的使用方法:
  命令格式:  mount [-t vfstype] [-o options] device dir

  主要参数:
  ① -t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型,Windows NT ntfs文件系统:ntfs

  ② -o options 主要用来描述设备或档案的挂接方式。

  ③ device:要挂接(mount)的设备。Linux中,设备名通常存放在/dev中,设备名遵循一些规则,如:/dev/hda1中,hd指Hard Disk,a代表第一个硬盘设备,1代表第一个硬盘的第一主分区。

  ④ dir:设备在系统上的挂接点(mount point)。如,我们刚刚建立的挂载点:/mnt/mystudy

  遵循此规则,希望挂载硬盘的第二个主分区
  键入命令: #mount -t ntfs /dev/hda2 /mnt/mystudy
  返回信息: Mount:fs type ntfs not supported by kernel

  竟然无法找到ntfs格式的分区?那么我的Windows系统跑到哪里去了?查看一下查看一下分区情况:#fdisk –L

  得到如下结果发现根本没有找到Windows的分区。

  我的Linux装在虚拟机里,虚拟机分配给Linux系统的设备仅仅是8G大小的虚拟硬盘分区,所以根本没有办法挂载Windows系统所在的分区以及其他的硬盘分区。那么在虚拟机环境下,想要共享资源,mount命令基本上派不上用场了,只能从联机的方式来考虑了。

  提供最常用的两种方案:
  1. FTP访问
  2. Samba服务

  不管是FTP还是Samba,首先都需要分析虚拟机环境下的Host-Guest网络连接。基本上我们可以把Host机与Guest机之间当作局域网中的两台机器来实现互联。那么现在需要重新考虑关于《虚拟机的网络配置》一文中提到过的网络连接方式。

  当时我们选择以NAT模式进行网络连接,这是一种使用DHCP服务进行网络连接的方式,也就是说,Guest机并没有自己的固定IP地址,这个地址是在启动 了系统之后,从Host机上取得的、一个暂时提供给Guest机使用的IP地址。在这种网络连接方式下,设置Guest机中系统的IP获取方式为自动获 取,不管Host机联网的方式如何,只要Host能上网,Guest机也可以上网。

  虽然选择这种方式,外网连接是很方便,可是在Host-Guest之间的局域网连接真的让人伤透了脑筋,虚拟网卡VMnet8的IP与Host机的IP不 在同一网段,折腾了一个晚上也没有找到好的解决办法,最后舍弃了NAT模式。将Linux虚拟机的网连方式改为了Bridge。

  Bridge模式将虚拟主机的虚拟网卡桥接到一个Host主机的物理网卡上,可以理解为Guest机和Host主机处于对等的地位,在网络关系上是平等的,对于我这种对路由的事情比较白痴的人来说,这是最易理解的一种局域网互联方式。

  我的使用网络服务是小区LAN网,IP自然是自动获取的,不用花心思改动它,将Guest机的网络也设置成为自动获取IP:

  应用程序–>系统设置–>网络–>编辑eth0设备

  Host和Guest在同一网段,基本上就像局域网里面的两台机器。Host设置一下FTP, FTP算是实现对Host机资源的访问了,可文件的管理似乎不那么方便。

  另一种共享Windows资源的方法是很多Linux用户都非常青睐的Samba。Samba 是一套让UNIX系统能够应用Microshoft网络通讯协议的软件。它使执行UNIX系统的计算机能与执行Windows系统的计算机分享驱动器与打 印机。非常适用于Windows和Linux系统并存的网络。Red Hat AS 4.0内附Samba Server,但默认并不是在系统启动时自动运行的。可通过service命令查看和控制Samba服务:

  查看Samba服务运行状态:# service smb status
  启动Samba服务:# service smb start
  停止Samba服务:# service smb stop

  也可设置系统重启时,自动启动Samba服务:# chkconfig –level 345 smb on

  首先我们在Windows系统中设置文件夹或驱动器Web共享,并对其设置别名,如:/study

  然后在Linux中,以用户身份登录smb服务:

  常见的错误提示:
  1.防火墙问题
  使用Samba服务时,Host和Guest都应关闭防火墙。Linux系统下关闭防火墙的方法:系统设置–>服务器设置–>服务–>iptable–>停止

  2.登录用户名或密码错误
  验证用户名密码即可。
  成功登录smb
  可用LS命令查看当前目录下的共享文件

  用get命令可从服务器上下载某文件:
  Smb:\> get file1 file2(从服务器上下载file1,以file2为名保存在本地——默认为root主目录)

  Exit命令可退出smb服务器

  如果仍然觉得文件的管理不方便,可以使用smbmount 命令,挂载Windows的共享文件夹或驱动器:

  # smbmount //192.168.0.162/study /mnt/mystudy –o username=admin

  其中,192.168.0.162为Host机IP;study为共享文件夹别名;/mnt/mystudy为挂载点,可由#mkdir /mnt/mystudy创建;admin为Host机登录用户名。

  打开挂载目录。

  这样看起来习惯多了吧?跟Windows里面的文件管理界面几乎相同了。

  至此,虚拟机Linux共享宿主机Windows资源基本实现,完成时候觉得很简单,但是一路摸索过来的确遇到了不少问题。

虚拟机Linux下挂载Windows硬盘实现共享

归类于: linux — admin @ 8:51 am

在安装虚拟机Linux的时候不小心把windows覆盖了,原因是安装Linux从光盘引导的。结果Windows不能用,而且硬盘空间变得很小。给自己带来不便。决定重新安装windows,然后再安装虚拟机和Linux。
Windows是NTFS格式的。Linux是Fedora-8-i386-DVD0.iso网上下载的镜像文件。VmwareWokstation6.0。
很轻松进入了Linux系统。却发现不能与Windows共享文件夹,也不能挂载硬盘。查看原因知道了,windows系统已经利用此硬盘了,是系统默认的。查看细节可是有三种方法。
姚哥帮我用第二种方法解决了,即强制挂载。再root权限下
用命令mount –t ntfs -3g /dev/sdb7/media/windows –o force
然后就可以看见挂载的盘了。

mysql5 php5 apache2 phpmyadmin 安装过程

归类于: linux — admin @ 8:41 am

本安装过程以linux AS4 为底本.安装linux时选最小安装+xwindows没有装apache,mysql,php.等,安装cacti,nagios2.0 ,fruity,作为web页面管理测试。
一、安装基本系统:mysql5+php5+apache2
安装mysql:
www.mysql.org
  
下载了编译版本mysql-max-5.0.18-linux-i686-glibc23.tar.gz
     shell> groupadd mysql
     shell> useradd -g mysql mysql
     shell> cd /usr/local
     shell> gunzip
     shell> ln -s FULL-PATH-TO-MYSQL-VERSION-OS mysql
     shell> cd mysql
     shell> scripts/mysql_install_db –user=mysql
     shell> chown -R root  .
     shell> chown -R mysql data
     shell> chgrp -R mysql .
     shell> bin/mysqld_safe –user=mysql &
        shell>cp support-files/my-medium.cnf /etc/my.cnf
        shell> cp bin/* /usr/bin/
要开机自动运行mysql:
1、  mkdir /usr/local/etc/rc.d
       vi /usr/local/
              #! /bin/sh
              /usr/local/mysql/bin/mysqld_safe &
       chmod 755 /usr/local/etc/rc.d/mysql.sh
       启动其他服务类似。
2、vi /etc/rc.local
       /usr/local/mysql/bin/mysqld_safe &
如此操作,可以启动服务.rpm安装每次安装后启动不来,放弃。
启动:mysqld_safe &
停止:mysqladmin shudown 。
补充:    ldconfig –v
              cp support-files/mysql.server /etc/init.d/mysql
              cd /etc/rc3.d/
              ln -s ../init.d/mysql S85mysql
              ln -s ../init.d/mysql K85mysql
              cd /etc/rc5.d/
              ln -s ../init.d/mysql S85mysql
              ln -s ../init.d/mysql K85mysql
              cd /etc/init.d/
              chmod 755 mysql

安装APACHE:
www.apache.org
下载httpd-2.2.0.tar.gz
# tar zxvf httpd-2.2.0.tar.gz
# cd httpd-2.2.0
# ./configure –prefix=/usr/local/apache –enable-so
# make & make install
# cp /usr/local/apache/bin/*  /usr/bin/
# cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
安装gd2:http://www.boutell.com/gd/
   下载 gd-2.0.33.tar.gz
./configure make make install
Libraries have been installed in:
   /usr/local/lib
安装php:
www.php.net
  下载 php-5.1.2.tar.gz
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache/bin/apxs –with-mysql=/usr/local/mysql –with-mysql-sock=/tmp/mysql.sock –with-mysqli=/usr/local/mysql/bin/mysql_config –with-xmlpc –with-jpeg-dir=/usr/bin –with-zlib-dir=/usr/bin –with-gd  
cp /usr/local/php/bin/*   /usr/bin
cp /soft/php-5.1.2/ php.ini-dist  /usr/local/php/lib/php.ini
vi /usr/local/apach/conf/httpd.conf
添加如下2行:
AddType application/x-httpd-php .php .phtml .php3 .php4
AddType application/x-httpd-php-source .phps
安装phpmyadmin:
www.phpmyadmin.net
下载:phpMyAdmin-2.7.0-pl2.tar.gz
解压后mv到/usr/local/下,然后修改config.default.php 修改相应的用户名和密码即可。
$cfg[’Servers’][$i][’auth_type’] = ‘http’;  // Authentication method (config, http or cookie based)
$cfg[’Servers’][$i][’user’]     = ‘root’;  // MySQL user
$cfg[’Servers’][$i][’password’] = ‘ ‘;    // MySQL password (only needed with ‘config’ auth_type)
注:如红色部分,用config作为认证方式,则下面得user和password都必须添上,安全性较低
用http做为认证方式,则弹出用户认证对话框.
至此:所有安装通过测试可以使用。
****************************ALL SUCESSFULLY********************************

下一页 »

基于 WordPress