2G内存的服务器用宝塔安装php的fileinfo拓展时总是卡死无法安装成功的解决办法
-
临时加大 Swap(4G)
fallocate -l 4G /swapfile2
chmod 600 /swapfile2
mkswap /swapfile2
swapon /swapfile2
free -h -
确认现在有了足够的 swap(总内存 + swap 应该达到 6G+):
free -h -
编译 fileinfo 扩展(只用1核,防止爆内存)
cd /www/server/php/82/src/ext/fileinfo
/www/server/php/82/bin/phpize
./configure --with-php-config=/www/server/php/82/bin/php-config
make -j1
make install
-
重启 PHP 服务
systemctl restart php-fpm-82 -
添加拓展到配置文件
echo “extension=fileinfo.so” >> /www/server/php/82/etc/php.ini
echo “extension=fileinfo.so” >> /www/server/php/82/etc/php-cli.ini -
确认是否完成
- /www/server/php/82/bin/php -m | grep fileinfo
能看到 fileinfo的话表示已完成 - /www/server/php/82/bin/php -r “var_dump(extension_loaded(‘fileinfo’));”
输出 bool(true) 就表示成功加载
- /www/server/php/82/bin/php -m | grep fileinfo
-
取消临时 Swap
swapoff /swapfile2
rm /swapfile2