How-To由Howtoforge用户@manarak从以下两个来源编译,并补充了其他修补程序。
还要感谢你,直到帮助我的suphp.conf问题。
本手段假设您的服务器运行:
- Debian 6与Courier / Postfix
- ISPconfig
至少这就是我的跑步。
第一部分:升级Debian
检查你的/etc/apt/sources.list
看起来相当标准。 我看起来像这样:
deb http://ftp.no.debian.org/debian/ squeeze main contrib non-free deb-src http://ftp.no.debian.org/debian/ squeeze main contrib non-free deb http://security.debian.org/ squeeze/updates main contrib non-free deb-src http://security.debian.org/ squeeze/updates main contrib non-free #squeeze-updates, previously known as ‘volatile’ deb http://ftp.no.debian.org/debian/ squeeze-updates main contrib non-free deb-src http://ftp.no.debian.org/debian/ squeeze-updates main contrib non-free
接下来,运行当前升级以确保挤压是完全更新的:
apt-get update
apt-get upgrade
apt-get dist-upgrade
现在我们将检查没有任何包裹被搁置。 这些需要什么都不返回:
dpkg -–audit
dpkg -–get-selections | grep hold
最后运行的能力来检查是否有任何软件包正在等待安装或删除:
aptitude
按g查看列表,然后解决这些问题。 列表应该是干净的,没有安装,删除或升级的包。 如果显示任何包,请在菜单“操作”中选择第一个“安装/删除包”。 按Q退出
现在,编辑您的/etc/apt/sources.list
并为wheezy仓库进行更新。 我看起来像这样:
deb http://ftp.no.debian.org/debian wheezy main contrib non-free deb-src http://ftp.no.debian.org/debian wheezy main contrib non-free deb http://ftp.no.debian.org/debian wheezy-updates main contrib non-free deb http://security.debian.org/ wheezy/updates main contrib non-free
运行用于使用wheezy包升级系统的命令:
apt-get update
(系统抱怨丢失公钥...没问题)
apt-get upgrade
(系统会显示一些文字墙,按Q键退出)
(保持安装的crontab)
(安装包维护者版本的rkhunter配置)
(保持我的awstats配置版本)
(保持我的suphp配置)
(取包装版本的phpmyadmin apache.conf)
apt-get dist-upgrade
(安装包的版本的Rcs)
(安装包的my.cnf版本)
(不要更改mysql密码)
...等等...我认为这些都是重要的选择
我选择了所有其他问题的默认答案。
当一切都做完了
reboot.
Wheezy升级现已完成。
第二部分:升级ISPconfig
登录到您的服务器,确保我们是root用户:
su -
我们需要确保apache得到所有的安全包ISPConfig需要:
apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby libapache2-mod-python php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached
之后,做一个autoremove来清理:
apt-get autoremove
转到/ tmp
目录,下载ISPConfig存档,提取并运行update.php,以确保ISPConfig正确设置为wheezy。 所有问题的默认答案。 最重要的部分是让它重新配置服务:
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xvfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
php –q update.php
现在应该正确设置ISPConfig。 做一个
reboot.
第三部分:修复
mod_security
如果你运行mod_security(你真的应该),你需要这样才能使phpmyadmin工作:
在/etc/phpmyadmin/apache.conf
中
<IfModule mod_security2.c> SecRuleEngine Off </IfModule>
错误:语法错误,proxy_html.load失败,configtest失败...
在新的12.04服务器安装上安装并启用proxy_html(libapache2-mod-proxy-html)后,我们会收到以下错误信息:
apache2: Syntax error on line 210 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/proxy_html.load: Cannot load /usr/lib/libxml2.so.2 into server: /usr/lib/libxml2.so.2: cannot open shared object file: No such file or directory Action 'configtest' failed. The Apache error log may have more information.
说明:libxml2已安装,但与amd64架构一样,libxml2文件位于: /usr/lib/x86_64-linux-gnu/libxml2.so.2
该解决方案包括更改/etc/apache2/mods-available/proxy_html.load
LoadFile /usr/lib/libxml2.so.2
进入:
LoadFile /usr/lib/x86_64-linux-gnu/libxml2.so.2
OR(在我看来更简单,可能更加升级):
导航到/ usr / lib
并执行
ln -s /usr/lib/x86_64-linux-gnu/libxml2.so.2 libxml2.so.2
来源:https://bugs.launchpad.net/ubuntu/+source/mod-proxy-html/+bug/964397
错误:dpkg:使用sudo运行命令时发出警告:
dpkg: warning: ‘ldconfig’ not found in PATH or not executable dpkg: warning: ‘start-stop-daemon’ not found in PATH or not executable dpkg: error: 2 expected programs not found in PATH or not executable Note: root’s PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin E: Sub-process /usr/bin/dpkg returned an error code (2)
以root身份编辑/ etc / sudoers
,并在Defaults env_reset之后插入此行:
Defaults secure_path=“/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin”
资料来源:http://blog.coffeebeans.at/?p=380
错误:启动Apache时的PHP警告
当尝试启动apache时,这出现了:
PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20100525/suhosin.so’ - /usr/lib/php5/20100525/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
解决方案是删除suhosin包。
apt-get purge php5-suhosin
来源:http://blog.tordeu.com/?p=417
错误:不赞成的评论标记导致日志膨胀
ISPConfig Cron日志显示在每个cron运行,每分钟:
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/ming.ini on line 1 in Unknown on line 0
解决方案:运行此命令查找所有.ini文件中的注释,并将#替换为;
find /etc/php5/cli/conf.d/ -name “*.ini” -exec sed -i -re ‘s/^(\s)#(.)/\1;\2/g’ {} \;
要么
find /etc/php5/ -name “*.ini” -exec sed -i -re ‘s/^(\s)#(.)/\1;\2/g’ {} \;
资料来源:http://stackoverflow.com/questions/14074101/getting-comments-starting-with-are-deprecated-message-via-cli
错误:Saslauthd将定期失败,用户无法登录到邮箱或发送邮件。
我不知道如果以下修复实际上修复了任何东西,这个问题似乎很复杂,似乎涉及一个错误
这是我试图解决的问题,saslauthd现在仍然失败,但更不频繁。
如果你想尝试:在/ etc / default / saslauthd
修改选项看起来像这样:
OPTIONS="-n 0 -c -m /var/spool/postfix/var/run/saslauthd -r"
围绕这个问题的来源和讨论:
- https://www.youcl.com/community/threads/saslauthd-stops-working-every-few-weeks.66123/
- https://github.com/webmin/webmin/issues/58
- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758660
错误:升级后,phpmyadmin不想登录,但提供下载index.php文件
在/etc/apache2/mods-available/suphp.conf
注释掉
<FilesMatch "\.ph(p3?|tml)$">
部分添加行
AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
否则,所有PHP文件将由SuPHP运行。
(谢谢你)
错误:日志文件显示SASL身份验证错误
升级后,可以显示在日志中:
... SASL PLAIN authentication failed: no mechanism available
解决方案:编辑/etc/postfix/sasl/smtpd.conf
并替换
auxprop_plugin: mysql
与
auxprop_plugin: sql sql_engine: mysql
和
%u
必须被替换
%u@%r
来源:谢谢匿名用户