当前位置: 首页 > wzjs >正文

网线制作实训报告心得体会评论优化

网线制作实训报告心得体会,评论优化,wordpress用户登录注册插件,社交网站建设Systemd 是 Linux 系统里用来**启动和管理服务(daemon)**的工具,是大多数现代 Linux 发行版(如 Ubuntu、CentOS、Debian、Fedora)默认的初始化系统。 简单说,它就是你系统启动后,第一个跑起来的…

    Systemd 是 Linux 系统里用来**启动和管理服务(daemon)**的工具,是大多数现代 Linux 发行版(如 Ubuntu、CentOS、Debian、Fedora)默认的初始化系统。

           简单说,它就是你系统启动后,第一个跑起来的进程(PID 1),负责启动系统中其他的服务和进程,比如网络、SSH、数据库等等。

🌱 Systemd 的核心概念

概念

解释

Unit(单元)

Systemd 的核心对象,管理不同类型的系统资源。比如服务(.service)、挂载点(.mount)、定时任务(.timer)等。

Service

最常用的 unit 类型,用于定义和管理服务(后台运行的程序)。比如 nginx.service

Target

是一组 unit 的集合,比如 multi-user.target就是启动后正常工作的状态。


🛠 常用命令大全

以下命令都使用 systemctl 工具来操作:

▶️ 启动/停止服务

############################ nginx 案例 ##################################
# 启动服务
sudo systemctl start nginx# 停止服务
sudo systemctl stop nginx# 重启服务
sudo systemctl restart nginx# 开启服务自启
sudo systemctl enable nginx# 关闭服务自启
sudo systemctl disable nginx# 查看服务
sudo systemctl status nginx# 重新加载服务(配置变了用这个)
sudo systemctl reload nginx############################ firewalld 案例 ##################################
# 启动服务
sudo systemctl start firewalld# 停止服务
sudo systemctl stop firewalld# 重启服务
sudo systemctl restart firewalld# 开启服务自启
sudo systemctl enable firewalld# 关闭服务自启
sudo systemctl disable firewalld# 查看服务
sudo systemctl status firewalld# 重新加载服务(配置变了用这个)
sudo systemctl reload firewalld

🔁 设置开机启动

# 设置服务开机自启
sudo systemctl enable nginx# 取消开机启动
sudo systemctl disable nginx

📋 查看服务状态

# 查看服务当前状态
systemctl status nginx# 查看所有服务
systemctl list-units --type=service

📄 查看服务日志(journal)

# 查看最近日志
journalctl -u nginx# 实时查看日志(像 tail -f)
journalctl -f -u nginx

📦 Systemd 服务配置文件结构(*.service)

一个 .service 文件长这样:

[Unit]
Description=My Demo Service
After=network.target[Service]
ExecStart=/usr/bin/my-demo-app
Restart=on-failure
User=demo[Install]
WantedBy=multi-user.target

各段作用:

  • [Unit]:定义服务的描述、依赖
  • [Service]:定义具体怎么启动、怎么重启、用哪个用户等
  • [Install]:定义该服务在哪个 target 下启用(开机自动运行)

☕ 目标:让一个 Spring Boot(或任意)JAR 应用用 systemd 管理起来

比如你有一个 JAR 文件:

/opt/myapp/myapp.jar

        你希望开机自动启动它,随时 startstopstatusrestart 控制它,完美结合 Linux 的服务体系。


🧱 第一步:编写 .service 文件

创建一个服务配置文件,比如:

sudo touch /etc/systemd/system/myapp.service

内容如下(注意注释):

[Unit]
Description=My Java Application Service
After=network.target[Service]
# 运行用户(建议不要用 root)
User=myuser
# 项目目录
WorkingDirectory=/opt/myapp
# 启动命令(注意 Java 路径和 JAR 路径)
ExecStart=/usr/bin/java -jar /opt/myapp/myapp.jar
# 可选:设置环境变量
Environment="JAVA_OPTS=-Xms256m -Xmx512m"
# 如果进程挂了自动重启
Restart=always
# 日志输出方式(journald)
StandardOutput=journal
StandardError=journal
# 可选:限制最大重启次数
RestartSec=10[Install]
WantedBy=multi-user.target

⚠️ 小贴士:

  • User=myuser 这一行很重要,推荐创建一个单独的用户运行该服务,避免用 root。
  • /usr/bin/java 要确认你服务器上的 Java 路径,用 which java 可查。
  • Restart=always 会在服务异常终止时自动重启,非常实用。
  • 如果你希望将日志输出到某个文件,也可以用 StandardOutput=file:/var/log/myapp.log

🔁 第二步:启用并启动服务

# 重新加载 systemd 配置
sudo systemctl daemon-reload# 设置开机自启
sudo systemctl enable myapp# 启动服务
sudo systemctl start myapp# 查看运行状态
systemctl status myapp

📜 第三步:查看日志

# 查看完整日志
journalctl -u myapp# 实时查看(类似 tail -f)
journalctl -f -u myapp

🌟 一些实用命令小贴士

# 重新加载配置(改了 .service 文件后)
sudo systemctl daemon-reload# 列出所有开机自启服务
systemctl list-unit-files | grep enabled# 查看当前系统运行的 target
systemctl get-default

🧠 总结一句话

        Systemd 就像 Linux 的“调度总管”,负责把系统和服务安排得明明白白!

🌱系统服务管理(Systemd)从 一切内容都是文件 的角度怎么理解 ?

📁 一切皆文件的哲学

        在 Unix/Linux 世界,有一句经典语录:

Everything is a file:一切内容皆是文件

        就是说在 Linux 眼里,无论是硬件设备、进程、输入输出、配置,统统都表现为文件,你都可以 catlsreadwrite

         这不仅是技术设计,也是 Linux 极简优雅的哲学基础。

🔧 那 Systemd 怎么体现这个哲学?

        Systemd 是 Linux 的初始化系统和服务管理器,它完美延续了“一切皆文件”的思想。下面逐一来看:

1️⃣ 服务的配置是文件:.service

        Systemd 管理的每一个服务,都是通过一个 .service 文件定义的,比如:

/lib/systemd/system/nginx.service
/etc/systemd/system/myapp.service

        这些文件是纯文本文件,可以用任何编辑器打开修改,它描述了服务的行为,比如启动命令、依赖关系、用户权限等等。

你想定义个自己的服务?写个 .service 文件扔进 /etc/systemd/system/ 就行了,完美贴合“一切皆文件”的思路。


2️⃣ 服务的状态是文件(符号链接)

        启用服务本质是啥?其实就是创建符号链接:

/etc/systemd/system/multi-user.target.wants/nginx.service -> /lib/systemd/system/nginx.service

        这就意味着:Systemd 把是否启用某个服务通过“文件是否存在或链接”来判断

        所以 enable 就是“创建链接”,disable 就是“删除链接”。是否开机自启?看文件在不在。


3️⃣ 日志是文件(Journal)

        Systemd 使用自己的日志系统 journald,它记录服务日志的方式也接近“一切皆文件”。

        虽然日志不是传统意义上的文本文件,但它们存储在:

/var/log/journal/

        你用 journalctl 来访问它,其实就是去“读取一个文件结构的数据”。


4️⃣ Unit 是文件(不仅是 .service)

        Systemd 不止管理服务(.service),它还可以管理:

  • .socket:监听 socket 的单元
  • .timer:定时任务(替代 crontab)
  • .mount:挂载点
  • .path:路径监视

        这些全是文本文件定义的,存储在 /lib/systemd/system//etc/systemd/system/ 中,配置统一、逻辑清晰、符合“一切皆文件”。


5️⃣ Systemd 的状态接口也是“文件”(D-Bus + /proc

        虽然不是直接的文本文件,Systemd 通过 D-Bus 提供接口,也可以通过 /proc/sys/fs/cgroup/systemd/ 看到运行状态,进程的状态、资源限制等都能通过读文件接口获取


✅ 总结:Systemd 如何体现“一切皆文件”?

类型

表现形式

文件路径或操作

服务定义

.service文件

/etc/systemd/system//lib/systemd/system/

启动控制

符号链接

*.wants/ 目录下的链接

日志记录

二进制文件(journal)

/var/log/journal/

服务状态

文件系统接口

/proc//sys/fs/cgroup/

定时任务、socket

也是文件

.timer.socket

        Systemd 的设计延续了 Unix 的哲学,把系统的行为用“文件”来定义和管理,这一点让它既统一、可编程、又可读可控。

http://www.dtcms.com/wzjs/392896.html

相关文章:

  • 本地网站建设公司网络营销师证书含金量
  • it设备网站如何做seo百度快照关键词推广
  • 试看30秒做受小视频网站网站域名在哪买
  • 北京做网站建设公司哪家好上海百度推广代理商
  • 网站开发主要步骤百度的人工客服
  • 台州网站制作策划网站推广软件排名
  • 网站如何做电脑销售企业网站推广注意事项
  • 给网站做推广石家庄seo按天扣费
  • 成都网站建设外包制作网站需要多少费用
  • 信誉比较好的网上做任务的网站百度热搜榜今日头条排名
  • 网站推广建议广州网页seo排名
  • 网站服务器 64位广州推广工具
  • 景区门户网站建设网站优化
  • php网站多语言翻译怎么做关键词你们都搜什么
  • 设计网站的基本步骤临沂百度公司地址
  • 公司注册地址是营业执照上的地址吗旺道seo推广
  • 网站建设公司如何开拓客户seo诊断分析工具
  • 中国施工总承包100强广州seo顾问
  • java做的视频网站seo关键词排名优化教程
  • 阳朔到桂林大巴关键词优化排名软件
  • 重庆网站开发seo软件工具
  • 做盗版电影网站赚钱吗注册网站流程和费用
  • 西安有哪些网站建设公司百度热议排名软件
  • 网站怎么收费西安网站制作推广
  • 艺美网站建设厦门谷歌seo公司
  • 网站设计公司山东烟台新东方留学机构官网
  • 石家庄学做网站建设培训班网络营销案例ppt课件
  • 做图片网站侵权吗优化排名工具
  • 像淘宝购物网站建设需要哪些专业人员?网站百度收录批量查询
  • 杭州学校网站建设《新闻联播》今天