如何在 Ubuntu 20.04 Focal Fossa 服务器/桌面上启动时运行脚本如何在 Ubuntu 20.04 Focal Fossa 服务器/桌面上启动时运行脚本如何在 Ubuntu 20.04 Focal Fossa 服务器/桌面上启动时运行脚本如何在 Ubuntu 20.04 Focal Fossa 服务器/桌面上启动时运行脚本
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 20.04 Focal Fossa 服务器/桌面上启动时运行脚本

在本文中,您将学习如何在 Ubuntu 20.04 服务器/桌面上启动时运行脚本(python、bash 等)。

在本教程中您将学习:

  • 如何创建Systemd服务单元

  • 如何创建简单的磁盘空间检查脚本

  • 如何设置Systemd服务单元文件的权限

  • 如何设置脚本权限

  • 如何让Systemd服务单元在系统启动时运行

如何在 Ubuntu 20.04 Focal Fossa KDE 服务器/桌面上启动时运行脚本

如何在 Ubuntu 20.04 上启动时运行脚本分步说明

Ubuntu 20.04 基于 Systemd,因此在启动时运行脚本的最简单且推荐的方法是创建 Systemd 服务文件并在系统启动期间通过此服务执行任何脚本,例如 bash、python 等。

以下步骤将向您展示运行示例 bash 脚本,该脚本会在每次 Ubuntu 系统时报告 /home 目录的磁盘空间使用情况并将报告保存在 /root 目录中靴子。

  1. 首先,创建一个 Systemd 服务文件,如下例所示:

    [Unit]
    After=network.target
    
    [Service]
    ExecStart=/usr/local/bin/disk-space-check.sh
    
    [Install]
    WantedBy=default.target
    

    之后: 指示 systemd 何时运行脚本。在我们的例子中,脚本将在网络连接后运行。其他示例可能是 mysql.target 等。 ExecStart:此字段提供启动时要执行的实际脚本的完整路径 WantedBy: systemd 单元应安装到哪个引导目标中

    注意
    有关如何创建 Systemd 服务单元的更多信息,请执行 man systemd.unit 命令。

  2. 创建一个在 Ubuntu 系统启动时执行的脚本。如上述步骤 1 所示,新脚本的路径和名称为 /usr/local/bin/disk-space-check.sh。

    下面是此类脚本的示例:

    #!/bin/bash
    
    date > /root/disk_space_report.txt
    du -sh /home/ >> /root/disk_space_report.txt
  3. 为 Systemd 服务单元和脚本设置适当的权限:

    
    $ sudo chmod 744 /usr/local/bin/disk-space-check.sh
    $ sudo chmod 664 /etc/systemd/system/disk-space-check.service
    
  4. 接下来启用服务单元:

    
    $ sudo systemctl daemon-reload
    $ sudo systemctl enable disk-space-check.service
    
  5. 
    $ sudo ls /root/
    disk_space_report.txt
    
©2015-2025 艾丽卡 support@alaica.com