跳转到主要内容

Linux

关于Selinux导致PHP加速失败

故障描述

  某项目中PHP 5.3.3安装eAccelerator 和 Zend Guard Loader加速后无法使用。

故障分析

  无

处理过程

  1、排查所有PHP配置文件,一切正常。
  2、经过仔细分析怀疑Selinux。将Selinux参数设置为disable重启后正常。
vi /etc/selinux/config
SELINUX=disabled

建议/总结

  无

Linux文件系统安全比较

故障描述

  无

故障分析

  无

处理过程

文件系统安全性对比

  从自动修复损坏的文件系统来看,ext2、ext3 都能自动修复损坏的文件系统,也都是在开机时进行。ext2 和 ext3 文件系统在默认的情况下是“每间隔 21 次挂载文件系统或每 180 天,就要自动检测一次。通过实践来看 ext2 和 ext3 在自动检测上是存在风险,有时文件系统开机后就进入单用户模式,并且把整个系统“扔”进 lost+found 目录,如果要恢复系统,就得用 fsck 来进行修复;当然 fsck 也同样存在风险;所以对 ext2 和 ext3 文件系统的使用,对新手来说的确需要心里准备;毕竟修复已经损坏的 ext2 和 ext3 文件系统是有困难的;另外 ext2 和 ext3 文件系统对于意外关机和断电,也可能导致文件系统损坏,所以我们在使用过程中,必须是合法关机;比如执行 poweroff 指令来关掉机器。

  从文件系统的反删除来看,ext2 支持反删除,对于一般使用者来说应该是安全的,但对于保密单位来说可能意味着不安全。从反删除角度来说明文件系统的安全性,也是有两方面。如果用户的工作是从事比较机密的,用 ext3 比较好,因为 ext3 一旦删除文件,是不可恢复的,因为反删除能恢复相应的绝秘资料的泄秘,所以 ext3 可能更适合从事机密工作的用户。

新型的 Ext4 文件系统

  Ext4 是 Linux 内核版本 2.6.28 的重要部分。它是 Linux 文件系统的一次革命。在很多方面,Ext4 相对于 Ext3 的进步要远超过 Ext3 相对于 Ext2 的进步。Ext3 相对于 Ext2 的改进主要在于日志方面,但是 Ext4 相对于 Ext3 的的改进是更深层次的,是文件系统数据结构方面的优化。一个高效的、优秀的、可靠的和极具特点的文件系统就此诞生。目前,该文件系统并未在所有的 Linux 发行套件中完全普及使用,还处于初期的测试阶段。

建议/总结

  无

XAMPP PDO Mysql server连接配置

故障描述

  xampp安装drupal 7.1时,提示出下错误:
* Warning: PDO::__construct(): [2002] Invalid argument (trying to connect via unix://) in DatabaseConnection->__construct() (line 286 of /opt/lampp/htdocs/drupal/drupal7/includes/database/database.inc).
*

In order for Drupal to work, and to continue with the installation process, you must resolve all issues reported below. For more help with configuring your database server, see the installation handbook. If you are unsure what any of this means you should probably contact your hosting provider.

Failed to connect to your MySQL database server. MySQL reports the following message: SQLSTATE[HY000] [2002] Invalid argument.
o Are you sure you have the correct username and password?
o Are you sure that you have typed the correct database hostname?
o Are you sure that the database server is running?
For more help, see the installation handbook. If you are unsure what these terms mean you should probably contact your hosting provider.

故障分析

  无

处理过程

  修改php.ini
找到pdo_mysql.default_socket=
修改成如下即可。
pdo_mysql.default_socket=/opt/lampp/var/mysql/mysql.sock

建议/总结

  无

xampp无法安装扩展

故障描述

  Centos安装了xampp运行环境,因CMS需求。需安装uploadprogress扩展。在安装过程中运行phpize时提示:
  grep: /opt/lampp/include/php/main/php.h: No such file or directory
  grep: /opt/lampp/include/php/Zend/zend_modules.h: No such file or directory
  grep: /opt/lampp/include/php/Zend/zend_extensions.h: No such file or directory
  并且无法Make

故障分析

  从phpize的信息来看提示缺少文件。原因是Xampp默认只提供运行环境,不提供开发环境。需要安装xampp的开发套件。

处理过程

  1、从www.apachefriends.org下载xampp-linux-devel*.gz的开发套件。并用tar zcvf xampp-linux-devel*.gz -C /opt/解压到/opt目录下,
  2、进入uploadprogress目录,运行/opt/lamp/bin/phpize提示正常。
  3、运行./configure --with-php-config=/opt/lampp/bin/php-config
  4、运行make和make install安装成功。
   5、编辑php.ini加入extension="uploadprogress.so",重启lampp进程即可。

建议/总结

  在xampp环境下。需安装套件才可编译安装。