1. 项目背景与挑战
这台2006年的老伙计已经在储物间吃灰多年,配置放在今天看简直像出土文物:单核赛扬M440处理器、1.5GB内存、100GB机械硬盘。但正是这样的硬件条件,让这次Ubuntu 14.04环境下的Python自动化配置变成了一场充满技术趣味的极限挑战。
选择Ubuntu 14.04 i386版本是经过深思熟虑的——这是最后一个对32位架构提供完整支持的LTS版本。现代浏览器早已放弃32位支持,Chrome直接出局,Firefox 66.0.3成为唯一选择。这个版本号不是随意选的,它是Mozilla官方支持32位Linux的最后一个Firefox ESR版本。GeckoDriver的版本锁定在0.24.0同样如此,这是最后一个兼容32位Linux的驱动版本。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 系统环境准备
2.1 基础系统配置
在安装完Ubuntu 14.04后,有几个关键配置直接影响后续自动化环境的稳定性:
bash复制# 关闭不必要的服务释放内存
sudo update-rc.d -f bluetooth remove
sudo update-rc.d -f cups remove
sudo update-rc.d -f avahi-daemon remove
# 调整swappiness值,避免频繁交换
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
# 禁用图形界面特效
gsettings set org.gnome.desktop.interface enable-animations false
这些优化让1.5GB内存的老机器能更流畅地运行自动化任务。实测显示,禁用动画效果后浏览器启动时间缩短了约40%。
2.2 Firefox 66.0.3的特殊配置
Firefox 66在现代网站访问时容易因内存不足崩溃,需要针对性优化:
bash复制# 创建专用配置目录
mkdir -p ~/.mozilla/firefox/automation.profile
# 写入优化配置
cat > ~/.mozilla/firefox/profiles.ini <<EOF
[Profile0]
Name=automation
IsRelative=1
Path=automation.profile
EOF
cat > ~/.mozilla/firefox/automation.profile/user.js <<EOF
// 禁用所有非必要功能
user_pref("browser.shell.checkDefaultBrowser", false);
user_pref("browser.startup.homepage", "about:blank");
user_pref("browser.startup.page", 0);
user_pref("dom.ipc.plugins.enabled", false);
user_pref("extensions.enabledScopes", 0);
user_pref("plugin.state.flash", 0);
EOF
这套配置将Firefox的内存占用从默认的450MB降低到约220MB,对1.5GB内存的老机器至关重要。
