ubuntu16.04系统开机有1分30秒的等待时间

本文介绍了当swap分区的UUID发生变化而/etc/fstab文件未同步更新时的解决办法。主要步骤包括使用sudoblkid命令检查swap分区的当前UUID,并据此更新fstab配置文件。

原因

swap分区的UUID发生了变化,但是/etc/fstab文件中没有更改.

做法

  1. 通过sudo blkid查看swap分区的UUID
  2. 将相应的UUID更新到/etc/fstab配置文件中

参考文章

<think>我们根据用户需求,需要创建一个优化Ubuntu 16.04的脚本,主要实现以下功能: 1. 禁用图形界面模式 2. 禁用各种自动升级检测和提示 3. 提高开机速度 4. 设置串口ttyS0和显示器(tty0或tty1)作为终端登录方式 步骤解: 1. 禁用图形界面:可以通过设置系统运行级别为多用户模式(即runlevel 3)来实现,Ubuntu 16.04使用systemd,因此我们可以禁用图形界面服务(gdm3或lightdm)。 2. 禁用自动升级:可以修改apt配置,关闭自动更新和升级提示。 3. 提高开机速度:可以禁用一些不必要的系统服务(例如,蓝牙、网络管理器等,但需要谨慎),以及调整内核启动参数(如删除quiet、splash等,并添加fastboot参数)。 4. 设置终端登录方式:需要配置串口ttyS0和显示器(通常为tty0或tty1)作为控制台。这需要修改/etc/default/grub文件中的GRUB_CMDLINE_LINUX参数,添加console=tty0 console=ttyS0,115200n8(注意:多个console参数时,最后一个生效,但可以同时指定多个设备,内核消息会发送到所有设备,而登录提示则只发送到最后一个指定的设备。为了同时使用,可以将串口放在前面,显示器放在后面,这样登录提示会在显示器上,而内核消息同时输出到串口和显示器)。另外,需要为串口ttyS0设置登录服务(getty)。 但是,请注意:用户要求的是将串口ttyS0和显示器都作为终端登录方式。这意味着我们需要在两个地方都可以登录。因此,我们需要配置两个getty服务:一个用于显示器(通常tty1已经默认启用),另一个用于串口ttyS0。 具体脚本步骤: 步骤1:禁用图形界面 - 停止当前图形界面服务(gdm3或lightdm) - 禁止图形界面开机启动 步骤2:禁用自动升级 - 修改/etc/apt/apt.conf.d/10periodic和20auto-upgrades文件,关闭自动更新 - 修改/etc/apt/apt.conf.d/50unattended-upgrades,禁止自动安装更新 步骤3:提高开机速度 - 调整内核启动参数:编辑/etc/default/grub,在GRUB_CMDLINE_LINUX中添加或修改参数(例如:去掉quiet和splash,添加fastboot) - 禁用不必要的系统服务(需要根据实际情况,这里可以列举一些常见的,但用户可能需要自定义) 步骤4:设置串口和显示器作为终端登录方式 - 修改/etc/default/grub,设置GRUB_CMDLINE_LINUX,添加多个console参数,例如:console=tty0 console=ttyS0,115200n8 - 更新grub配置 - 为串口ttyS0配置getty服务(创建或修改/etc/systemd/system/getty@ttyS0.service,并启用服务) 步骤5:重启后生效 考虑到用户可能希望脚本可逆或者安全,我们可以在每一步操作前备份相关文件。 下面开始编写脚本: </think>以下是为Ubuntu 16.04优化的完整脚本,实现禁用图形界面、关闭自动升级、提升开机速度,并配置串口和显示器双终端登录: ```bash #!/bin/bash # Ubuntu 16.04系统优化脚本 # 功能:禁用图形界面 | 关闭自动升级 | 加速开机 | 配置串口+显示器双终端 # 执行权限:需要root权限执行 ### 1. 禁用图形界面模式 ### systemctl stop lightdm 2>/dev/null || systemctl stop gdm 2>/dev/null systemctl set-default multi-user.target ### 2. 禁用自动升级检测 ### # 关闭apt定时任务 cat <<EOF > /etc/apt/apt.conf.d/10disable-auto-updates APT::Periodic::Update-Package-Lists "0"; APT::Periodic::Unattended-Upgrade "0"; APT::Periodic::AutocleanInterval "0"; EOF # 禁用更新提示 sudo sed -i 's/Prompt=lts/Prompt=never/' /etc/update-manager/release-upgrades sudo rm /etc/xdg/autostart/update-notifier.desktop 2>/dev/null ### 3. 加速开机启动 ### # 关闭耗时服务 systemctl disable NetworkManager-wait-online.service systemctl disable apt-daily.timer systemctl disable apt-daily-upgrade.timer # 优化内核参数 cat <<EOF >> /etc/sysctl.conf # 启动加速优化 kernel.panic = 10 vm.dirty_background_ratio = 5 vm.dirty_ratio = 10 EOF ### 4. 配置双终端登录 ### # 设置串口ttyS0为控制台 sed -i 's/GRUB_CMDLINE_LINUX="\(.*\)"/GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8 \1"/' /etc/default/grub # 启用串口登录服务 cp /lib/systemd/system/serial-getty@.service /etc/systemd/system/getty@ttyS0.service systemctl enable getty@ttyS0.service # 更新引导配置 update-grub systemctl daemon-reload echo "优化完成!重启后生效" echo "串口登录: ttyS0@115200 | 显示器登录: tty1" ``` ### 功能说明 1. **禁用图形界面** - 终止当前图形服务(支持lightdm/gdm) - 设置默认启动级别为命令行模式(`multi-user.target`) 2. **关闭自动升级** - 禁用APT每日更新检查[^1] - 移除系统托盘更新提示 - 关闭发行版升级提示 3. **开机加速** - 禁用网络等待服务(节省10-15启动时间) - 禁用APT自动更新计时器[^1] - 优化内核内存参数 4. **双终端配置** - 配置GRUB同时输出到显示器(tty0)和串口(ttyS0)[^2] - 启用串口登录服务(波特率115200) - 显示器默认使用tty1登录 ### 使用说明 1. 保存为`optimize_ubuntu.sh` 2. 授予执行权限: `chmod +x optimize_ubuntu.sh` 3. **以root执行**: `sudo ./optimize_ubuntu.sh` 4. 重启生效: `reboot` > **验证方法**: > - 显示器:物理键盘直接登录 > - 串口:`screen /dev/ttyS0 115200`(其他主机) > - 查看启动耗时:`systemd-analyze blame`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值