lnmp开发环境

本文介绍如何在CentOS 5.10上使用VirtualBox进行虚拟化部署,并搭建包含MySQL、Nginx和PHP的LAMP环境,同时安装多个PHP扩展及配置Subversion版本控制系统。

虚拟机:
VirtualBox4.3.2
新建虚拟机->设置共享目录到E:/wwwroot->设置端口转发:
SSH TCP 192.168.56.1:22 10.0.2.15:22
HTTP TCP 192.168.56.1:80 10.0.2.15:80

操作系统:
最小化安装CentOS5.10(只需xxx.1of9.iso)
163http://mirrors.163.com/.help/CentOS5-Base-163.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
mv CentOS5-Base-163.repo CentOS-Base.repo
yum makecache
yum -y install wget man make gcc gcc-c++ gcc44 gcc44-c++ autoconf
#VBoxGuestAdditions.iso
mount /dev/cdrom /mnt
yum -y install kernel-devel
ln -s /usr/src/kernels/2.6.18-371.1.2.el5-x86_64/ /usr/src/linux
cd /mnt
sh VBoxLinuxAdditions.run
cd /media/sf_wwwroot
umount /dev/cdrom
/sbin/iptables -N RH-Firewall-1-INPUT
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables save
service iptables restart

安装包:
http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.34.tar.gz
http://nginx.org/download/nginx-1.4.4.tar.gz
http://cn2.php.net/distributions/php-5.4.22.tar.bz2
http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2
http://downloads.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz
http://nchc.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz
http://download.redis.io/releases/redis-2.6.16.tar.gz
http://fallabs.com/tokyocabinet/tokyocabinet-1.4.48.tar.gz
http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz
https://github.com/nicolasff/phpredis
https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz
http://pecl.php.net/get/memcached-2.1.0.tgz
http://pecl.php.net/get/tokyo_tyrant-0.7.0.tgz

before:
yum -y install cmake bison ncurses-devel
yum -y install pcre-devel openssl openssl-devel bzip2-devel
yum -y install libxml2 libxml2-devel curl curl-devel
yum -y install libpng libpng-devel libjpeg libjpeg-devel
cd libmcrypt-2.5.8 && ./configure && make && make install
cd mhash-0.9.9.9 && ./configure && make && make install
cd mcrypt-2.6.8
LD_LIBRARY_PATH=/usr/local/lib ./configure
make && make install
groupadd mysql
useradd -r -g mysql mysql
useradd -M -s /sbin/nologin www
usermod -G vboxsf www #virtualbox

mysql(5.5.34)
tar xzf mysql-5.5.34.tar.gz
cd mysql-5.5.34
cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysqld.sock \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0
make && make install
cd /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf
chown -R mysql:mysql /usr/local/mysql
su - mysql
cd /usr/local/mysql
cp scripts/mysql_install_db .
./mysql_install_db --user=mysql
exit
echo "/usr/local/mysql/bin/mysqld_safe --user=mysql > /dev/null 2>&1 &" >> /etc/rc.local
--------------

nginx(1.4.4):
./configure --prefix=/usr/local/nginx
make && make install
vi /usr/local/nginx/conf/nginx.conf
  user=www;
  error_log off;
  http: access_log off; gzip_types text/plain application/x-javascript text/css application/xml image/gif  application/octet-stream;
  http: sendfile off;
  http-server: server_name vm.boyaa.com;
  root /media/sf_wwwroot;
echo "/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf > /dev/null 2>&1 &" >> /etc/rc.local
--------------

php(5.4.22):
./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-mysql-sock=/usr/local/mysql/mysqld.sock \
--with-gd \
--with-iconv \
--with-zlib \
--with-curl \
--with-curlwrappers \
--with-fpm-user=www \
--with-fpm-group=www \
--with-xmlrpc \
--with-gettext \
--with-mcrypt \
--without-pear \
--enable-xml \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--enable-gd-native-ttf \
--enable-pcntl \
--enable-sockets \
--enable-zip \
--enable-soap \
--enable-session \
--enable-ftp \
--enable-calendar \
--enable-ctype \
--enable-exif \
--disable-ipv6 \
--disable-phar
cp php.ini-production /usr/local/php/etc/php.ini
vi /usr/local/php/etc/php.ini
 display_errors = On
 log_errors = Off
 date.timezone = PRC
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
vi /usr/local/php/etc/php-fpm.conf
 pid = run/php-fpm.pid
 log_level = error
 listen = php-fpm.sock
echo "/usr/local/php/sbin/php-fpm -D -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf" >> /etc/rc.local
vi /usr/local/nginx/conf/nginx.conf
 index index.php index.html index.htm;
 root /media/sf_wwwroot;
 fastcgi_pass unix:/usr/local/php/php-fpm.sock;
 include fastcgi.conf;
-----------------

redis(2.6.16)
cd redis-2.6.16
vi src/Makefile
 PREFIX?=/usr/local/redis
make && make install
cp redis.conf /usr/local/redis/
vi /usr/local/redis/redis.conf
 daemonize yes
 注释掉存盘#save 900 1
 #save 300 10
 #save 60 10000
 appendfsync no
 no-appendfsync-on-rewrite yes
 maxmemory 64000000
echo "/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf" >> /etc/rc.local
-----------------

tokyocabinet(1.4.48)
cd tokyocabinet-1.4.48
./configure --prefix=/usr/local/tokyocabinet
make && make install

tokyotyrant(1.1.41)
cd tokyotyrant-1.1.41
./configure --prefix=/usr/local/tokyotyrant --with-tc=/usr/local/tokyocabinet
make && make install

PHP扩展: 
a)redis:
cd phpredis
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
vi /usr/local/php/etc/php.ini
 extension=redis.so

b)memcached:
cd libmemcached-1.0.16
export CC="gcc44"
export CXX="g++44"
./configure
make && make install
cd memcached-2.1.0
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
vi /usr/local/php/etc/php.ini
 extension=memcached.so

c)tokyo_tyrant
cd tokyo_tyrant-0.7.0
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config \
--with-tokyo-tyrant=/usr/local/tokyotyrant \
--with-tokyo-cabinet-dir=/usr/local/tokyocabinet
make && make install
vi /usr/local/php/etc/php.ini
 extension=tokyo_tyrant.so

--------

subversion:

http://mirror.esocc.com/apache/subversion/subversion-1.8.5.tar.bz2

http://mirrors.cnnic.cn/apache/apr/apr-1.5.0.tar.gz

http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.3.tar.gz

http://www.sqlite.org/snapshot/sqlite-amalgamation-201311271348.zip

 

cd apr-1.5.0

./configure --prefix=/usr/local/apr

make && make install

 

cd apr-util-1.5.3

./configure --prefix=/usr/local/apr --with-apr=/usr/local/apr

make && make install

 

cd subversion-1.8.5

mkdir sqlite-amalgamation

cp ../sqlite-amalgamation-201311271348/*{.c,.h} ./sqlite-amalgamation/

./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr

make && make install

 

cd /media/sf_wwwroot

mkdir svnrepo

cd svnrepo

/usr/local/svn/bin/svnadmin create pubprj

echo "tsc = 123456" >> pubprj/conf/passwd

vi pubprj/conf/authz

[groups]

dev = tsc

[/]

@dev = rw

 

echo "/usr/local/svn/bin/svnserve -d -r /media/sf_wwwroot/svnrepo" >> /etc/rc.local

 

设置VirtualBox端口转发到3690

CheckOutsvn://vm.boyaa.com:3690/pubprj

CMDnetstat -an | findstr "3690" 若无,则重新VirtualBox 

 

基于STM32 F4的永磁同步电机无位置传感器控制策略研究内容概要:本文围绕基于STM32 F4的永磁同步电机(PMSM)无位置传感器控制策略展开研究,重点探讨在不依赖物理位置传感器的情况下,如何通过算法实现对电机转子位置和速度的精确估计与控制。文中结合嵌入式开发平台STM32 F4,采用如滑模观测器、扩展卡尔曼滤波或高频注入法等先进观测技术,实现对电机反电动势或磁链的估算,进而完成无传感器矢量控制(FOC)。同时,研究涵盖系统建模、控制算法设计、仿真验证(可能使用Simulink)以及在STM32硬件平台上的代码实现与调试,旨在提高电机控制系统的可靠性、降低成本并增强环境适应性。; 适合人群:具备一定电力电子、自动控制理论基础和嵌入式开发经验的电气工程、自动化及相关专业的研究生、科研人员及从电机驱动开发的工程师。; 使用场景及目标:①掌握永磁同步电机无位置传感器控制的核心原理与实现方法;②学习如何在STM32平台上进行电机控制算法的移植与优化;③为开发高性能、低成本的电机驱动系统提供技术参考与实践指导。; 阅读建议:建议读者结合文中提到的控制理论、仿真模型与实际代码实现进行系统学习,有条件者应在实验平台上进行验证,重点关注观测器设计、参数整定及系统稳定性分析等关键环节。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值