凌峰创科服务平台

Ubuntu 14.04服务器版如何升级或维护?

Ubuntu 14.04 LTS 服务器版终极指南:从入门到精通(附常见问题与安全加固)

** 本文是一份专为运维工程师、系统管理员和开发者准备的Ubuntu 14.04 LTS服务器版终极指南,内容涵盖系统安装、基础配置、服务部署(LAMP/LEMP)、性能优化、安全加固以及常见问题排查,旨在帮助您最大化地利用这个经典的长期支持系统,并解决在实际生产环境中可能遇到的各种挑战。

Ubuntu 14.04服务器版如何升级或维护?-图1
(图片来源网络,侵删)

引言:为何至今仍有选择Ubuntu 14.04 LTS?

虽然Ubuntu 16.04、18.04乃至20.04/22.04 LTS版本已经发布,但Ubuntu 14.04 LTS(代号:Trusty Tahr)作为一款里程碑式的操作系统,在特定场景下依然拥有其不可替代的价值。

  • 长期支持(LTS)的稳定性: Ubuntu 14.04提供了长达5年的标准安全维护(已于2025年结束),并可通过ESM(Extended Security Maintenance)付费服务获得额外支持,对于追求极致稳定、不希望频繁进行大规模系统升级的关键业务系统而言,它依然是可靠的选择。
  • 遗留系统兼容性: 许多老旧的专有软件、硬件驱动或特定版本的开发工具链(如某些版本的CUDA、Docker等)在Ubuntu 14.04上拥有最佳的兼容性,贸然升级可能导致系统崩溃或服务中断。
  • 学习与怀旧价值: 对于许多老程序员来说,14.04是他们接触Linux服务器版的“启蒙老师”,重温经典,理解其架构,对于夯实Linux基础大有裨益。

重要提示: 请务必注意,Ubuntu 14.04的社区标准支持已于2025年4月结束,如果您仍在使用它,强烈建议您评估迁移到更新的LTS版本的必要性,并考虑订阅ESM服务以获取安全补丁,本文内容仅适用于技术研究和特定场景下的维护。


Ubuntu 14.04 服务器版安装与初始配置

下载与准备

  • 官方镜像下载: 访问 Ubuntu 14.04 LTS 服务器版官方下载页面,下载适用于您服务器的ISO镜像文件(通常是 ubuntu-14.04.6-server-amd64.iso)。
  • 制作启动盘: 使用 dd 命令或 Rufus、Ventoy 等工具将ISO文件写入U盘或光盘。
    # 示例:使用dd命令制作启动盘 (请务必确认设备名,以免数据丢失!)
    sudo dd if=/path/to/ubuntu-14.04.6-server-amd64.iso of=/dev/sdx bs=4M status=progress && sync

安装过程详解

安装过程采用经典的文本向导界面,步骤清晰明了:

  1. 语言选择: 选择 English
  2. 键盘布局: 默认 No keymap 或选择 US
  3. 网络配置: 配置静态IP地址,这是服务器部署的关键一步。
    • 选择 Configure network manually
    • 输入IP地址(如 168.1.100)、子网掩码(如 255.255.0)、网关(如 168.1.1)和DNS服务器(如 8.8.8)。
  4. 配置代理: 如果服务器需要通过代理上网,在此处填写。
  5. 镜像站点选择: 选择一个速度快的镜像源,推荐选择国内镜像源,如 mirrors.aliyun.commirrors.ustc.edu.cn
  6. 磁盘分区:
    • 新手推荐: Guided - use entire disk,系统会自动创建 (根分区) 和 swap (交换分区)。
    • 专家推荐: Manual,手动创建分区,规划好 /boot, , /var, /home, swap 等,以提高性能和数据安全性,建议 /boot 分区约 500MB,swap 大小通常为物理内存的1-2倍(对于内存大于8GB的服务器,可适当减小),/var 分区用于存放日志和文件,建议单独划分。
  7. 用户配置:
    • 创建一个新用户,不要直接使用 root 用户
    • 为该用户设置强密码。
    • 勾选 Encrypt the new Ubuntu installation with LUKS 可对磁盘进行全盘加密,提高安全性。
  8. 时区选择: 选择 Asia/Shanghai
  9. 安装SSH服务器: 强烈勾选 OpenSSH server,这样您就可以在安装完成后立即通过远程SSH连接服务器,无需手动配置。
  10. 安装GRUB引导程序到硬盘。

安装完成后,系统会自动重启,拔掉启动盘,从硬盘启动。

Ubuntu 14.04服务器版如何升级或维护?-图2
(图片来源网络,侵删)

安装后的必要配置

通过SSH登录到您的服务器:

ssh your_username@your_server_ip

更新系统(至关重要)

即使社区支持结束,我们仍需更新已有的软件包。

sudo apt-get update
sudo apt-get upgrade -y

配置防火墙(UFW)

Ubuntu 14.04服务器版如何升级或维护?-图3
(图片来源网络,侵删)

Ubuntu 14.04默认使用 ufw (Uncomplicated Firewall)。

# 检查防火墙状态
sudo ufw status
# 允许SSH连接(必须!)
sudo ufw allow ssh
# 如果需要开放Web服务 (80, 443端口)
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# 启用防火墙
sudo ufw enable
# 输入 'y' 确认

设置主机名

# 临时设置
sudo hostname your-new-hostname
# 永久设置,编辑文件
sudo nano /etc/hostname替换为你的主机名
# 编辑 /etc/hosts 文件,确保主机名解析正确
sudo nano /etc/hosts
# 添加或修改 127.0.0.1 your-new-hostname

配置SSH密钥登录(提高安全性)

在本地客户端生成SSH密钥(如果还没有):

ssh-keygen -t rsa -b 4096

将公钥复制到服务器:

ssh-copy-id your_username@your_server_ip

之后,您就可以使用密钥登录,无需密码,为了更安全,可以禁用密码登录(在服务器上操作):

sudo nano /etc/ssh/sshd_config
# 找到 PasswordAuthentication yes,改为 no
PasswordAuthentication no
# 重启SSH服务
sudo service ssh restart

核心服务部署:LAMP/LEMP环境搭建

LAMP (Linux + Apache + MySQL + PHP) 或 LEMP (Linux + Nginx + MySQL + PHP) 是最经典的服务器Web应用环境。

安装Web服务器

选择A:Apache 2.4

sudo apt-get install apache2 -y
# 测试:访问 http://your_server_ip,应看到 It works!

选择B:Nginx 1.4

sudo apt-get install nginx -y
# 测试:访问 http://your_server_ip,应看到 Welcome to nginx!

安装数据库服务器

sudo apt-get install mysql-server -y
# 安装过程中会要求设置root密码

安装后,运行安全脚本进行加固:

sudo mysql_secure_installation
# 按照提示操作,设置root密码,移除匿名用户,禁止root远程登录,移除测试数据库,刷新权限。

安装PHP

sudo apt-get install php5 php5-mysql php5-gd php5-mcrypt php5-curl -y

对于Apache: 安装PHP模块并重启Apache。

sudo apt-get install libapache2-mod-php5 -y
sudo service apache2 restart

对于Nginx: Nginx本身不处理PHP,需要通过 php5-fpm 来处理。

sudo apt-get install php5-fpm -y
# 重启Nginx和php5-fpm
sudo service nginx restart
sudo service php5-fpm restart

您还需要在Nginx的站点配置文件中添加PHP处理规则。

创建一个测试站点

以Apache为例,创建一个虚拟主机。

sudo nano /etc/apache2/sites-available/example.com.conf
```并修改:
```apache
<VirtualHost *:80>
    ServerAdmin webmaster@example.com
    ServerName example.com
    DocumentRoot /var/www/example.com
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

创建网站目录并设置权限:

sudo mkdir -p /var/www/example.com
sudo chown -R $USER:$USER /var/www/example.com
sudo chmod -R 755 /var/www/example.com

启用站点并重启Apache:

sudo a2ensite example.com.conf
sudo a2dissite 000-default.conf # 禁用默认站点
sudo service apache2 reload

/var/www/example.com 目录下创建 info.php 文件,内容为 <?php phpinfo(); ?>,访问 http://example.com/info.php 查看PHP信息。


性能优化与安全加固

优化软件源

将默认源更换为国内镜像源,可大幅提高下载速度。

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list
```以阿里云为例):
```bash
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

更新源:

sudo apt-get update

系统内核参数优化

编辑 /etc/sysctl.conf 文件:

sudo nano /etc/sysctl.conf

在文件末尾添加以下内容(根据服务器实际负载调整):

# 网络连接优化
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 0  # 注意:在NAT环境中,此选项可能导致问题
net.ipv4.tcp_fin_timeout = 30
# 文件系统优化
fs.file-max = 1000000

使配置生效:

sudo sysctl -p

限制用户登录

编辑 /etc/securetty 文件,只保留 console,禁止root用户通过SSH登录(如果之前没禁用密码登录,这一步更保险)。

定期日志清理

使用 logrotate 工具管理日志,防止日志文件过大。 编辑 /etc/logrotate.conf 或在 /etc/logrotate.d/ 目录下创建自定义配置文件,为您的应用设置日志轮转策略。


常见问题与排查

Q1: 如何解决 E: Could not get lock /var/lib/dpkg/lock 错误?

A: 这表示另一个 aptdpkg 进程正在运行,等待其完成或强制结束它。

# 查找并杀死进程
sudo lsof /var/lib/dpkg/lock
sudo kill -9 <PID>
# 修复锁文件
sudo rm /var/lib/dpkg/lock
sudo dpkg --configure -a
sudo apt-get update

Q2: 如何查看系统资源使用情况?

A:

  • CPU/内存/磁盘IO: htop (比 top 更直观) 或 top
  • 磁盘空间: df -h (查看分区使用情况), du -sh /path/to/dir (查看目录大小)。
  • 网络连接: netstat -tulpnss -tulpn (查看监听端口)。
  • 系统负载: uptimew

Q3: 如何升级到更新的Ubuntu版本?

A: Ubuntu提供了do-release-upgrade工具。

# 先更新所有包
sudo apt-get update && sudo apt-get upgrade -y
# 执行升级
sudo do-release-upgrade

这是一个不可逆的操作,请务必备份重要数据!


总结与展望

Ubuntu 14.04 LTS是一款优秀的服务器操作系统,它的稳定性和兼容性为无数应用提供了坚实的基础,随着技术演进和社区支持的结束,我们必须正视其安全风险。

本文为您提供了一套从安装到运维的完整方案。最终的、也是最强烈的建议是: 制定详细的迁移计划,将您的业务平滑地迁移到更新的Ubuntu LTS版本(如18.04或20.04),以获得更长的支持周期、更强的性能和更全面的安全保障,这不仅是对系统负责,更是对您的业务负责。

希望这份指南能帮助您更好地管理和维护您的Ubuntu 14.04服务器,如果您有任何问题或经验分享,欢迎在评论区交流!

分享:
扫描分享到社交APP
上一篇
下一篇