统信uos系统需手动安装java和spark并配置环境变量才能运行spark-shell。先用apt安装openjdk 11,再下载解压spark二进制包,最后配置java_home、spark_home及path,验证spark-shell、pyspark和spark-submit均可正常执行。

您在统信UOS系统上需要运行Spark进行数据分析或学习,但终端输入spark-shell提示命令未找到,说明Spark尚未安装,且JAVA_HOME、SPARK_HOME等关键环境变量也未配置。以下操作路径覆盖从Java基础环境准备到Spark单机模式验证的完整链路,适配统信UOS V20/23桌面版与服务器版。
确认并安装Java运行环境
Spark 3.x要求JDK 8或11以上版本,统信UOS默认不预装JDK,必须先验证并安装。
打开终端,执行java -version。若返回Command 'java' not found,说明未安装JDK。
推荐使用APT方式安装OpenJDK 11:执行sudo apt update→sudo apt install -y openjdk-11-jdk。
安装完成后再次运行java -version,应显示类似openjdk version "11.0.22"的输出。若仍报错,请检查是否因系统安全策略拦截了APT源——此时需先在“控制中心→系统安全→安全中心→应用安全”中临时关闭“仅允许签名应用”。
【关键前提】必须确保javac -version也能正常返回,否则Spark编译类任务将失败。
下载并解压Spark二进制包
Spark官方不提供.deb包,统信UOS无法通过应用商店直接安装,需手动下载预编译包。
访问Apache Spark官网下载页(https://www.php.cn/link/4b4d2998331ccb9a1abe9eae8d46e242),选择“Pre-built for Apache Hadoop 3.x”版本,如spark-3.5.3-bin-hadoop3.tgz。
将下载好的压缩包保存至~/Downloads目录,然后执行:cd ~/Downloads && tar -xvzf spark-*.tgz -C ~/。
解压后会在用户主目录生成spark-3.5.3-bin-hadoop3文件夹。为便于后续引用,建议重命名为spark:mv ~/spark-3.5.3-bin-hadoop3 ~/spark。
配置Spark环境变量
环境变量配置必须与Java路径匹配,否则Spark启动时会找不到JVM。
第一步:确认JDK安装路径。执行readlink -f $(which java) | sed 's|/jre/bin/java||',典型输出为/usr/lib/jvm/java-11-openjdk-amd64。
第二步:编辑用户级环境配置文件:nano ~/.bashrc。
第三步:在文件末尾添加以下三行(请将/usr/lib/jvm/java-11-openjdk-amd64替换为上一步实际输出路径):export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64export SPARK_HOME=~/sparkexport PATH=$SPARK_HOME/bin:$JAVA_HOME/bin:$PATH
第四步:使配置立即生效:source ~/.bashrc。
第五步:验证变量是否加载成功:echo $SPARK_HOME应输出/home/用户名/spark,echo $JAVA_HOME应输出对应JDK路径。
验证Spark单机模式运行
方法一:直接启动Spark Shell
在终端执行:spark-shell --master local[*]。
看到Scala提示符scala>且无报错即表示成功;输入:quit退出。
方法二:运行PySpark交互式环境
执行:pyspark --master local[*]。
出现Python提示符>>>并能执行sc.parallelize([1,2,3]).count()返回3,说明PySpark可用。
方法三:提交本地Python脚本
新建测试文件:echo "from pyspark import SparkContext; sc = SparkContext('local[*]'); print(sc.parallelize([1,2,3]).count())" > test.py。
执行:spark-submit test.py,终端输出3即验证通过。











