- ubuntu22安装和部署Kettle8.2
在Ubuntu22上安装和部署Kettle8.2,你可以按照以下步骤进行:安装Java环境:Kettle需要Java环境来运行。在终端中输入以下命令安装Java:sudoaptupdatesudoaptinstallopenjdk-8-jdk安装完成后,你可以通过命令java-version来验证Java是否安装成功。下载并解压Kettle:从Pentaho官网或者其他可信赖的源下载Kettle8
- 【Java万花筒】数据魔术师:探索Java商业智能与数据可视化
friklogff
Java万花筒信息可视化java开发语言
开发者的数据魔杖:掌握Java商业智能工具的秘诀前言在当今信息爆炸的时代,数据已经成为企业决策和业务发展的重要驱动力。为了更好地理解和利用数据,商业智能(BI)和数据可视化工具变得至关重要。本文将介绍几种基于Java的商业智能和数据可视化库,从Jaspersoft到Pentaho,探索它们的功能、特点和应用场景。欢迎订阅专栏:Java万花筒文章目录开发者的数据魔杖:掌握Java商业智能工具的秘诀前
- 【kettle】pentaho/data-integration 报错:org.apache.http.NoHttpResponseException: failed to respond
lisacumt
apache大数据
一、版本说明kettle版本:8.2.0.0-342【kettle】pentaho/data-integrationdebug查看日志方法二、报错说明:核心报错内容:org.apache.http.NoHttpResponseException:xxx.com:80failedtorespond执行到某一个请求时候报错,内容:2024/01/1815:24:06-获取json.0-Connecti
- 【kettle】pentaho/data-integration debug 查看日志方法
lisacumt
大数据
kettle版本:8.2.0.0-R修改console打印日志级别:修改root打印日志级别:使用SpoonDebug.bat,根据提示,依次输入nyn。cmd窗口即可打印详细日志。UI显示详细日志方法:
- kettle在不同类型数据库之间进行数据传输并对字段进行映射
好大的月亮
Mysql
官方文档https://help.pentaho.com/Documentation/7.1/0J0/0C0/020下载地址https://community.hitachivantara.com/s/article/data-integration-kettle下载完之后双击运行启动成功这边先介绍转换模式下的数据导入导出双击转换,在输入->表输入中把表输入拖拽到右边,这里的表输入其实就是我们要读
- Kettle入门
叶逸灵
Kettle版本:7.1,下载地址:http://mirror.bit.edu.cn/pentaho/Data%20Integration/(这个镜像是北京理工大学提供,目前只有Kettle6.1、7.0、7.1)Kettle官方地址下载:https://community.hitachivantara.com/s/article/data-integration-kettle。image.png
- Kettle 8.2 如何创建资源库
sliver-毛毛
数据同步ETL工具Kettle资源库
1.为什么使用资源库如果我们是团队开发项目,除了使用SVN等版本控制软件,还可以使用Kettle的资源库,他会将转换、作业直接保存在数据库中,而且,连接资源库的话,我们就不需要每一次都新建数据库连接了,用起来还是蛮方便的。2.链接资源库Kettle8.2里面,是在右上角这个Connect来连接的2.1资源库的类型资源库有3中类型PentahoRepository(默认是如下图)要想链接下面两种类型
- kettle 同步gbase8t数据到mysql时clob类型乱码
终回首
数据仓库大数据数据库etlkettle乱码
一、问题使用kettle同步gbase8t数据到mysql时clob类型乱码。varchar类型不乱码。环境:win10kettle:9.x二、解决1(有效)修改kettle编码格式打开kettle的安装目录,进入data-integration目录记事本编辑spoon.bat搜索PENTAHO_DI_JAVA_OPTIONS=在初始化设置jvm参数所在行末尾添加"-Dfile.encoding=
- mondrian+jpivot源码导入eclipse并配置数据源
郎岳樟
eclipsejdbcaccessstringservlet数据库
导入mondrian源码步骤如下:1)下载mondrian-3.0.0.10550和jpivot1.8.0,mondrian-3.0.0以后的版本和jpivot的源码整合不到一起.jpivot好久没更新了!!!!下载地址:http://mondrian.pentaho.com/2)在eclipse里新建个web工程,命名mondrian.3)解压mondrian-3.0.0.10550/mondr
- Aspose Maven 中下载不下来的问题
暗夜行者
把maven的依赖添加到了POM文件中,com.asposeaspose-slides19.6jdk16然而就是会报无法读到artifact的问题,对比了下才发现,是要同时配置repository的,如下:pentaho-releaseshttp://nexus.pentaho.org/content/groups/omniaspose-maven-repositoryhttp://artifac
- Windows下载并配置Kettle
呆萌的代Ma
运维windowskettle
注意:需要windows配置Java下载Kettle进入官网:https://www.hitachivantara.com/en-us/products/pentaho-plus-platform/data-integration-analytics/pentaho-community-edition.html下载带有PentahoDataIntegration(BaseInstall)的文件:这
- 如何解决Cannot access central in offline mode?
迷失、淡忘、沉默
开发语言javamavenintellij-idea
如何解决Cannotaccesscentralinofflinemode?问题第一种解决方式:第二种解决方式第三种解决方式问题关于这个问题是我这两天遇到的一个比较头疼的问题,我花费了一个下午才解决的在使用maven打包执行package的过程中,在下载依赖包的这一步报错:Failuretofindorg.pentaho:pentaho-aggdesigner-algorithm:pom:5.1.5
- kettle(Pentaho Data Integration) 使用"最佳"实践
稻草鸟人
kettle是一款基于JAVA的开源ETL工具,现在它的名字应该叫做PentahoDataIntegration(PDI)了,非常优秀的一款工具,功能非常多,今天我们主要演示其JavaAPI案例案例通过PDI工具,完成一个Job,主要目标是将表中的数据导出到dat文件中,导出的文件名字以user-开头,内容使用|作为分割符,后面的格式是YYYYMMDD后缀为dat.例:user-20200502.
- org.pentaho.di.core.exception.KettleDatabaseException:Error occurred while trying to connect to the
weixin_38919176
kettle
1、kettle连接oracle数据库异常缺少驱动下载ojdbc.jar包将下载的jar包(ojdbc14.jar)放到kettle目录下(data-integration\lib文件夹下)2、kettle连接mysql数据库异常驱动包下载地址:https://download.csdn.net/download/weixin_38919176/13099358数据库名错误:3、mysql查询数据
- kettle8调度监控平台(kettle-scheduler)开源
东_4c72
背景Kettle作为用户规模最多的开源ETL工具,强大简洁的功能深受广大ETL从业者的欢迎。但kettle本身的调度监控功能却非常弱。Pentaho官方都建议采用crontab(Unix平台)和计划任务(Windows平台)来完成调度功能。所以大家在实施kettle作业调度功能的时候,通常采用以下几种方式:使用spoon程序来启动Job,使用crontab或计划任务,自主开发java程序来调用ke
- 【kettle】pdi/data-integration 打开ktr文件报错“Unable to load step info from XML“
lisacumt
hadoop
一、报错内容:UnabletoloadstepinfofromXMLstepnodeorg.pentaho.di.core.exception.KettleXMLException:UnabletoloadstepinfofromXMLatorg.pentaho.commons.launcher.Launcher.main(Launcher.java:92)atjava.lang.reflect.
- Pentaho Kettle 6.1连接CDH5.4.0集群
香山上的麻雀
最近把之前写的HadoopMapReduce程序又总结了下,发现很多逻辑基本都是大致相同的,于是想到能不能利用ETL工具来进行配置相关逻辑来实现MapReduce代码自动生成并执行,这样可以简化现有以及之后的一部分工作.于是选取了上手容易并对Hadoop支持的比较成熟的PentahoKettle来测试,把一些配置过程和遇到的坑记录下来.Kettle可以在官网下载到,但是官网会让你注册才能下载而且速
- ETL data-integration 9.3 Spoon 启动找不到javaw.exe
曹牛牛
etl数据仓库
下载链接:https://pan.baidu.com/s/140c3LdIXP3frPIWjDidbXA提取码:6gww启动时直接报错,提示找不到javaw.exe。本机的java配置正常。仔细看错误提示,路径中有两个bin,所以导致找不到。打开set-pentaho-env.bat文件,将60行,修改一下set_PENTAHO_JAVA=%_PENTAHO_JAVA_HOME%\bin\%__L
- 【数据湖架构】数据湖101:概述
架构师研究会
数据管理数据架构数据应用架构架构数据湖
数据湖是非结构化和结构化数据池,按原样存储,没有特定的目的,可以建立在多种技术上,如Hadoop,NoSQL,AmazonSimpleStorageService,关系数据库或各种组合根据一份名为“什么是数据湖”的白皮书,为什么它变得流行?DataLake允许多点采集和多个数据访问点。Pentaho公司的创始人詹姆斯·迪克森(JamesDixon)在2010年创造了“数据湖”(DataLake)这
- oracle和mysql怎么传输数据
emma20080101
oraclemysql
传输Oracle和MySQL之间的数据可以使用多种方法,以下是其中两种常用的方法:使用ETL工具:ETL工具是一种用于数据抽取、转换和加载的工具,可以将数据从一个数据库传输到另一个数据库。常用的ETL工具有ApacheNiFi、Talend、Pentaho等。这些工具通常支持多种数据库连接,包括Oracle和MySQL,可以通过简单的拖放操作或编写SQL语句来实现数据传输。使用数据库自带的工具:O
- Kettle介绍
小玉起起
Kettle
Kettle,也称为PentahoDataIntegration,是一种强大的开源ETL(Extract,Transform,Load)工具,用于数据集成、数据转换和数据加载。它是Pentaho软件套件的一部分,提供了可视化和交互式的方式来处理各种数据操作。主要特点和功能包括:ETL功能:Kettle被设计用来执行ETL操作,即数据抽取(Extract)、数据转换(Transform)、数据加载(
- kettle闪退问题(也许不适用于所有情况,只是自己遇到之后的解决方案)
析道者
kettle疑难
1、查看jdk版本是否为1.6以上2、查看jdk环境变量的配置是否有问题,即jdk是否可用(网上有jdk相关教程)3、查看spoon.bat中的“if"%PENTAHO_DI_JAVA_OPTIONS%"==”一这行开头的,将-xms和xmx改成512即可
- ETL入门系列 之 数据整合面临的挑战
小纠结在简书
这些挑战可能包括:政治的、组织性的、功能性的或者技术性的。方法论:敏捷BI软件开发者们发现这些结构化的瀑布模型方法并不能适用于所有场景,尤其是在需求经常变化的情况下。为了解决这种需求经常变化的问题,出现了各种不同的“敏捷”开发方法。在这些方法中,也许Scrum方法是最著名的一个。Pentaho公司把开发PentahoBI套件过程中使用的敏捷开发经验提升为敏捷BI方法。这样做不公可以给BI开发者提供
- 【pentaho】kettle读取Hive表不支持bigint和timstamp类型解决。
lisacumt
hivehadoop
一、bigint类型报错:Unabletogetvalue'BigNumber(16)'fromdatabaseresultset显示kettle认为此应该是decimal类型(kettle中是TYPE_BIGNUMBER或称BigNumber),但实际hive数据库中是big类型。修改kettle源码解决:kettle中java.sql.Types到kettle类型转换的方法是org.penta
- kettle加载到mysql插入更新优化方案之mysql批量加载
Dragon online
注:MySQLBulkLoader组件必须在Linux下运行,因为MySQL批量加载时会创建一个命名管道,在Windows下是不支持的。加载工具用的是fifo1.MySQLBulkLoader组件介绍wiki文档介绍https://wiki.pentaho.com/display/EAI/MySQL+Bulk+Loader这两个勾可限定是否根据主键替换2.MySQLBulkLoader组件实战介绍
- kettle+report designer导出带样式的excel包含多个sheet页
Dragon online
etlkettle开源报表设计器excel开源reportdesignerkettle生成样式excelkettle合并sheet页开源报表设计器使用ETL
场景介绍:运用pentahoreportdesigner报表设计器,查询数据库字典表生成带有样式的excel,通过kettlepentaho报表输出组件导出形成数据字典,最终形成的数据字典样式如下图:案例适用范围:pentahoreportdesigner报表设计器使用可参考,kettle生成带有样式的excel,PDF等可参考,kettle生成多个sheet页可以参考,多个sheet页合并成一个
- Linux部署Kettle(pentaho-server-ce-9.4.0.0-343)记录/配置MySQL存储
韧小钊
ETL&ELT数据集成kettlePDI9.4LinuxETL工具
下载地址Kettle是一个开源的数据集成工具,它是PentahoDataIntegration(PDI)项目的一部分。要访问Kettle的官方网站,可以通过访问其母公司HitachiVantara的网站来找到相关信息官方网站:https://www.hitachivantara.com/en-us/products/data-management-analytics.html下载地址:https:
- kettle-7.1手册系列(一) 启动spoon
利伊奥克儿
启动SpoonLinux启动spoon打开pentaho的安装目录-->单击【Spoon.bat】windows启动linux启动spoon打开pentaho的安装目录à运行【spoon.sh】linux启动版权声明:本文为博主原创文章,转载请附上博文链接!
- kettle spoon连接MySQL8.0数据库报错解决方法
江南正晓时
数据库
kettle连接mysql8.0报错,显示无法连接到数据库服务错误连接数据库[11]:org.pentaho.di.core.exception.KettleDatabaseException:ErroroccurredwhiletryingtoconnecttothedatabaseErrorconnectingtodatabase:(usingclassorg.gjt.mm.mysql.Dri
- 一、DeepOps的ETL小笔记-kettle/pentaho(pdi)简介
deepops
原文地址:http://www.mimiq.com.cn/?=265说到ETL是英文Extract-Transform-Load的缩写,它是用来描述从数据源端抽取,对其进行转换,然后将数据加载到目标端的一些列过程。很多系统之间都存在一定的批量数据的交互。然而一个好的ETL工具,在开发和使用维护上可以让我们事半功倍。目前工作的原因用到的比较多的ETL工具就是Kettle(后期这个改名为pentaho
- 多线程编程之理财
周凡杨
java多线程生产者消费者理财
现实生活中,我们一边工作,一边消费,正常情况下会把多余的钱存起来,比如存到余额宝,还可以多挣点钱,现在就有这个情况:我每月可以发工资20000万元 (暂定每月的1号),每月消费5000(租房+生活费)元(暂定每月的1号),其中租金是大头占90%,交房租的方式可以选择(一月一交,两月一交、三月一交),理财:1万元存余额宝一天可以赚1元钱,
- [Zookeeper学习笔记之三]Zookeeper会话超时机制
bit1129
zookeeper
首先,会话超时是由Zookeeper服务端通知客户端会话已经超时,客户端不能自行决定会话已经超时,不过客户端可以通过调用Zookeeper.close()主动的发起会话结束请求,如下的代码输出内容
Created /zoo-739160015
CONNECTEDCONNECTED
.............CONNECTEDCONNECTED
CONNECTEDCLOSEDCLOSED
- SecureCRT快捷键
daizj
secureCRT快捷键
ctrl + a : 移动光标到行首ctrl + e :移动光标到行尾crtl + b: 光标前移1个字符crtl + f: 光标后移1个字符crtl + h : 删除光标之前的一个字符ctrl + d :删除光标之后的一个字符crtl + k :删除光标到行尾所有字符crtl + u : 删除光标至行首所有字符crtl + w: 删除光标至行首
- Java 子类与父类这间的转换
周凡杨
java 父类与子类的转换
最近同事调的一个服务报错,查看后是日期之间转换出的问题。代码里是把 java.sql.Date 类型的对象 强制转换为 java.sql.Timestamp 类型的对象。报java.lang.ClassCastException。
代码:
- 可视化swing界面编辑
朱辉辉33
eclipseswing
今天发现了一个WindowBuilder插件,功能好强大,啊哈哈,从此告别手动编辑swing界面代码,直接像VB那样编辑界面,代码会自动生成。
首先在Eclipse中点击help,选择Install New Software,然后在Work with中输入WindowBui
- web报表工具FineReport常用函数的用法总结(文本函数)
老A不折腾
finereportweb报表工具报表软件java报表
文本函数
CHAR
CHAR(number):根据指定数字返回对应的字符。CHAR函数可将计算机其他类型的数字代码转换为字符。
Number:用于指定字符的数字,介于1Number:用于指定字符的数字,介于165535之间(包括1和65535)。
示例:
CHAR(88)等于“X”。
CHAR(45)等于“-”。
CODE
CODE(text):计算文本串中第一个字
- mysql安装出错
林鹤霄
mysql安装
[root@localhost ~]# rpm -ivh MySQL-server-5.5.24-1.linux2.6.x86_64.rpm Preparing... #####################
- linux下编译libuv
aigo
libuv
下载最新版本的libuv源码,解压后执行:
./autogen.sh
这时会提醒找不到automake命令,通过一下命令执行安装(redhat系用yum,Debian系用apt-get):
# yum -y install automake
# yum -y install libtool
如果提示错误:make: *** No targe
- 中国行政区数据及三级联动菜单
alxw4616
近期做项目需要三级联动菜单,上网查了半天竟然没有发现一个能直接用的!
呵呵,都要自己填数据....我了个去这东西麻烦就麻烦的数据上.
哎,自己没办法动手写吧.
现将这些数据共享出了,以方便大家.嗯,代码也可以直接使用
文件说明
lib\area.sql -- 县及县以上行政区划分代码(截止2013年8月31日)来源:国家统计局 发布时间:2014-01-17 15:0
- 哈夫曼加密文件
百合不是茶
哈夫曼压缩哈夫曼加密二叉树
在上一篇介绍过哈夫曼编码的基础知识,下面就直接介绍使用哈夫曼编码怎么来做文件加密或者压缩与解压的软件,对于新手来是有点难度的,主要还是要理清楚步骤;
加密步骤:
1,统计文件中字节出现的次数,作为权值
2,创建节点和哈夫曼树
3,得到每个子节点01串
4,使用哈夫曼编码表示每个字节
- JDK1.5 Cyclicbarrier实例
bijian1013
javathreadjava多线程Cyclicbarrier
CyclicBarrier类
一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很有用。因为该 barrier 在释放等待线程后可以重用,所以称它为循环的 barrier。
CyclicBarrier支持一个可选的 Runnable 命令,
- 九项重要的职业规划
bijian1013
工作学习
一. 学习的步伐不停止 古人说,活到老,学到老。终身学习应该是您的座右铭。 世界在不断变化,每个人都在寻找各自的事业途径。 您只有保证了足够的技能储
- 【Java范型四】范型方法
bit1129
java
范型参数不仅仅可以用于类型的声明上,例如
package com.tom.lang.generics;
import java.util.List;
public class Generics<T> {
private T value;
public Generics(T value) {
this.value =
- 【Hadoop十三】HDFS Java API基本操作
bit1129
hadoop
package com.examples.hadoop;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoo
- ua实现split字符串分隔
ronin47
lua split
LUA并不象其它许多"大而全"的语言那样,包括很多功能,比如网络通讯、图形界面等。但是LUA可以很容易地被扩展:由宿主语言(通常是C或 C++)提供这些功能,LUA可以使用它们,就像是本来就内置的功能一样。LUA只包括一个精简的核心和最基本的库。这使得LUA体积小、启动速度快,从 而适合嵌入在别的程序里。因此在lua中并没有其他语言那样多的系统函数。习惯了其他语言的字符串分割函
- java-从先序遍历和中序遍历重建二叉树
bylijinnan
java
public class BuildTreePreOrderInOrder {
/**
* Build Binary Tree from PreOrder and InOrder
* _______7______
/ \
__10__ ___2
/ \ /
4
- openfire开发指南《连接和登陆》
开窍的石头
openfire开发指南smack
第一步
官网下载smack.jar包
下载地址:http://www.igniterealtime.org/downloads/index.jsp#smack
第二步
把smack里边的jar导入你新建的java项目中
开始编写smack连接openfire代码
p
- [移动通讯]手机后盖应该按需要能够随时开启
comsci
移动
看到新的手机,很多由金属材质做的外壳,内存和闪存容量越来越大,CPU速度越来越快,对于这些改进,我们非常高兴,也非常欢迎
但是,对于手机的新设计,有几点我们也要注意
第一:手机的后盖应该能够被用户自行取下来,手机的电池的可更换性应该是必须保留的设计,
- 20款国外知名的php开源cms系统
cuiyadll
cms
内容管理系统,简称CMS,是一种简易的发布和管理新闻的程序。用户可以在后端管理系统中发布,编辑和删除文章,即使您不需要懂得HTML和其他脚本语言,这就是CMS的优点。
在这里我决定介绍20款目前国外市面上最流行的开源的PHP内容管理系统,以便没有PHP知识的读者也可以通过国外内容管理系统建立自己的网站。
1. Wordpress
WordPress的是一个功能强大且易于使用的内容管
- Java生成全局唯一标识符
darrenzhu
javauuiduniqueidentifierid
How to generate a globally unique identifier in Java
http://stackoverflow.com/questions/21536572/generate-unique-id-in-java-to-label-groups-of-related-entries-in-a-log
http://stackoverflow
- php安装模块检测是否已安装过, 使用的SQL语句
dcj3sjt126com
sql
SHOW [FULL] TABLES [FROM db_name] [LIKE 'pattern']
SHOW TABLES列举了给定数据库中的非TEMPORARY表。您也可以使用mysqlshow db_name命令得到此清单。
本命令也列举数据库中的其它视图。支持FULL修改符,这样SHOW FULL TABLES就可以显示第二个输出列。对于一个表,第二列的值为BASE T
- 5天学会一种 web 开发框架
dcj3sjt126com
Web框架framework
web framework层出不穷,特别是ruby/python,各有10+个,php/java也是一大堆 根据我自己的经验写了一个to do list,按照这个清单,一条一条的学习,事半功倍,很快就能掌握 一共25条,即便很磨蹭,2小时也能搞定一条,25*2=50。只需要50小时就能掌握任意一种web框架
各类web框架大同小异:现代web开发框架的6大元素,把握主线,就不会迷路
建议把本文
- Gson使用三(Map集合的处理,一对多处理)
eksliang
jsongsonGson mapGson 集合处理
转载请出自出处:http://eksliang.iteye.com/blog/2175532 一、概述
Map保存的是键值对的形式,Json的格式也是键值对的,所以正常情况下,map跟json之间的转换应当是理所当然的事情。 二、Map参考实例
package com.ickes.json;
import java.lang.refl
- cordova实现“再点击一次退出”效果
gundumw100
android
基本的写法如下:
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
//navigator.splashscreen.hide();
document.addEventListener("b
- openldap configuration leaning note
iwindyforest
configuration
hostname // to display the computer name
hostname <changed name> // to change
go to: /etc/sysconfig/network, add/modify HOSTNAME=NEWNAME to change permenately
dont forget to change /etc/hosts
- Nullability and Objective-C
啸笑天
Objective-C
https://developer.apple.com/swift/blog/?id=25
http://www.cocoachina.com/ios/20150601/11989.html
http://blog.csdn.net/zhangao0086/article/details/44409913
http://blog.sunnyxx
- jsp中实现参数隐藏的两种方法
macroli
JavaScriptjsp
在一个JSP页面有一个链接,//确定是一个链接?点击弹出一个页面,需要传给这个页面一些参数。//正常的方法是设置弹出页面的src="***.do?p1=aaa&p2=bbb&p3=ccc"//确定目标URL是Action来处理?但是这样会在页面上看到传过来的参数,可能会不安全。要求实现src="***.do",参数通过其他方法传!//////
- Bootstrap A标签关闭modal并打开新的链接解决方案
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
Bootstrap里面的js modal控件使用起来很方便,关闭也很简单。只需添加标签 data-dismiss="modal" 即可。
可是偏偏有时候需要a标签既要关闭modal,有要打开新的链接,尝试多种方法未果。只好使用原始js来控制。
<a href="#/group-buy" class="btn bt
- 二维数组在Java和C中的区别
流淚的芥末
javac二维数组数组
Java代码:
public class test03 {
public static void main(String[] args) {
int[][] a = {{1},{2,3},{4,5,6}};
System.out.println(a[0][1]);
}
}
运行结果:
Exception in thread "mai
- systemctl命令用法
wmlJava
linuxsystemctl
对比表,以 apache / httpd 为例 任务 旧指令 新指令 使某服务自动启动 chkconfig --level 3 httpd on systemctl enable httpd.service 使某服务不自动启动 chkconfig --level 3 httpd off systemctl disable httpd.service 检查服务状态 service h