首先到 IBM 官網下載相關 PAX 檔 (SDK8_31bit_SR8_FP45.PAX.Z) 和 SDK8_31bit_readme.txt

https://www.ibm.com/support/pages/java-sdk-products-zos

在 hercules 裡加一些新卷用來存放這個 JDK (UAPP02),UTMP02 也可以順便加上讓 OMVS IBMUSER 下多一些存放空間,至於 ULOG02 純粹自己用而且

格式最好選 3390-9,之前建的 3390 很快就滿,另外,壓縮也要選上,這樣壓縮了,本地空間也可以減少很多,其他選項也可以參考以下

之後,先關機並在 hercules.cnf 補上新的卷再開機

重新 IPL 後,查看一下設備是不是都在綫

D U,,,0AA0

先把新的卷下綫

v 0aa0,offline
v 0aa1,offline
v 0aa2,offline

提交以下JCL來把新卷初始化

//JC$INITD JOB ,'INIT DASD',NOTIFY=&SYSUID                                      
//*                                                                             
//STEP0001 EXEC PGM=ICKDSF,PARM='NOREPLYU'                                      
//SYSPRINT DD SYSOUT=*                                                          
//SYSIN    DD *                                                                 INIT UNIT(0AA0) VFY(UAPP02) VOLID(UAPP02) PRG NVAL VTOC(1,0,75)               INIT UNIT(0AA1) VFY(UTMP02) VOLID(UTMP02) PRG NVAL VTOC(1,0,75)               INIT UNIT(0AA2) VFY(ULOG02) VOLID(ULOG02) PRG NVAL VTOC(1,0,75)               
/*                                                                              
//*                                                                             

然後,把新卷上綫

v 0AA0,online
v 0AA1,online
v 0AA2,onlined u,,,0AA0

提交以下JCL來為新卷建 CATALOG 並掛在主 CATALOG 裡

//JC$CRTCC JOB ,'CREATE USERCAT',NOTIFY=&SYSUID                                 
//*                                                                             
//STEP0001 EXEC PGM=IDCAMS                                                      
//SYSPRINT DD SYSOUT=*                                                          
//SYSIN    DD *                                                                 DELETE UCAT.UAPP02 USERCATALOG                                                SET MAXCC=0                                                                   DEFINE USERCATALOG(NAME(UCAT.UAPP02) -                                        VOLUMES(UAPP02) -                                         CYLINDERS(2 1)) -                                         CATALOG(CATALOG.Z110.MASTER)                                           
/*                                                                              
//*                                                                             
//*                                                                             
//STEP0002 EXEC PGM=IDCAMS                                                      
//SYSPRINT DD SYSOUT=*                                                          
//SYSIN    DD *                                                                 DELETE UCAT.UTMP02 USERCATALOG                                                SET MAXCC=0                                                                   DEFINE USERCATALOG(NAME(UCAT.UTMP02) -                                        VOLUMES(UTMP02) -                                         CYLINDERS(2 1)) -                                         CATALOG(CATALOG.Z110.MASTER)                                           
/*                                                                              
//*                                                                             
//*                                                                             
//STEP0003 EXEC PGM=IDCAMS                                                      
//SYSPRINT DD SYSOUT=*                                                          
//SYSIN    DD *                                                                 DELETE UCAT.ULOG02 USERCATALOG                                                SET MAXCC=0                                                                   DEFINE USERCATALOG(NAME(UCAT.ULOG02) -                                        VOLUMES(ULOG02) -                                         CYLINDERS(2 1)) -                                         CATALOG(CATALOG.Z110.MASTER)                                           
/*                                                                              
//*                                                                             

然後,為 OMVS JDK 建立 HFS 空間來存放 JDK

//JC$CRTHF JOB ,'CRT HFS',NOTIFY=&SYSUID                                        
//*                                                                             
//STEP0010 EXEC PGM=IEFBR14                                                     
//MKFS1    DD DSNAME=UTMP02.HFS,DISP=(NEW,CATLG),                               
//            DSNTYPE=HFS,SPACE=(CYL,(1000,1,1)),                               
//            VOL=SER=UTMP02,UNIT=SYSDA                                         
//*                                                                             
//STEP0010 EXEC PGM=IEFBR14                                                     
//MKFS1    DD DSNAME=JDK845.HFS,DISP=(NEW,CATLG),                               
//            DSNTYPE=HFS,SPACE=(CYL,(1000,1,1)),                               
//            VOL=SER=UAPP02,UNIT=SYSDA                                         
//*                                                                             

 

然後,在 BPXPRMDB (PRMDB, DB 要視乎 IPL 用的另個) 把 JDK 和 TMP 空間都掛上

EDIT       USER.PARMLIB(BPXPRMDB) - 01.10                          Columns 00001 00080
Command ===>                                                          Scroll ===> CSR 
000142  MOUNT    FILESYSTEM('JDK845.HFS')                                             
000143           TYPE(HFS)                                                            
000144           MODE(RDWR)                                                           
000145           MOUNTPOINT('/usr/lpp/java')                                          
000146                                                                                
000147  MOUNT    FILESYSTEM('UTMP02.HFS')                                             
000148           TYPE(HFS)                                                            
000149           MODE(RDWR)                                                           
000150           MOUNTPOINT('/u/ibmuser/utmp')                                        
000151                                                                                
000152                                                                                
000153  FILESYSTYPE TYPE(AUTOMNT) ENTRYPOINT(BPXTAMD)                                 
000154  FILESYSTYPE TYPE(ZFS) ENTRYPOINT(IOEFSCM) ASNAME(ZFS)                         
000155  FILESYSTYPE TYPE(NFS)                                                         
000156            ENTRYPOINT(GFSCINIT)                                                
000157            ASNAME(NFSC)                                                        
000158                                                                                
000159 FILESYSTYPE TYPE(INET) ENTRYPOINT(EZBPFINI)                                    
000160                                                                                
000161 SUBFILESYSTYPE NAME(TCPIP)                                                     
000162        TYPE(INET)                                                              

重起後,ssh 進去然後用 df 查看一下 mount 是否已經掛載 JDK845.HFS 和 UTMP02.HFS

IBMUSER:/u/ibmuser: >df
\Mounted on     Filesystem                Avail/Total    Files      Status    
/Z110/usr/lpp/cicsts/cicsts32 (DFH320.ZFS)              18292/57600    4294967059 Available
/Z110/usr/lpp/jcct4v3 (ACD211.SACDZFS1)         6942/14400     4294967269 Available
/u/db9g        (DSN910.SJVAZFS)          14042/14400    4294967284 Available
/Z110/usr/lpp/db2910_worf (DSN910.SDSNWORF)         68768/72000    4294967273 Available
/Z110/usr/lpp/db2910_mql (DSN910.SDSNMQLS)         68026/72000    4294967290 Available
/Z110/usr/lpp/db2910_jdbc (DSN910.SDSNJCC)          61294/72000    4294967262 Available
/Z110/usr/lpp/db2910_base (DSN910.SDSNAZFS)         54580/72000    4294967272 Available
/ADCD/var/wbem (ZFS.ADCD.VARWBEM)        110382/144000  4294965457 Available
/ADCD/var      (ZFS.ADCD.VAR)            2066/2880      4294967263 Available
/ADCD/dev      (ZFS.ADCD.DEV)            8316/8640      4294967279 Available
/Z110          (ZFS.Z110.VERSION.ZFS)    28384/4320000  4294952944 Available
/u/ibmuser/utmp (UTMP02.HFS)              1439824/1440000 4294967294 Available
/Z110/usr/lpp/java (JDK845.HFS)              1439824/1440000 4294967294 Available
/Z110/usr/lpp/mqm/V7R0M0 (CSQ700.MQM.HFS)          120/114528     4294967099 Available
/Z110/usr/lpp/pli (IEL370.HFS)              0/2304         4294967291 Available
/Z110/usr/lpp/cobol (IGY410.HFS)              216/960        4294967279 Available
/Z110/usr/lpp/netview (NET530.HFS)              7392/17472     4294967205 Available
/Z110/usr/lpp/cicsts/cicsts32/lib/security (DFH320.SECURITY.HFS)     1160/1440      4294967286 Available
/Z110/usr/lpp/cicsts/cicsts32/samples (DFH320.SAMPLES.HFS)      2888/14400     4294967060 Available
/Z110/usr/lpp/cicsts/cicsts32/JVMProfiles (DFH320.JVMPROFS.HFS)     1224/1440      4294967289 Available
/Z110/usr/lpp/cicsts/cicsts32/props (DFH320.PROPS.HFS)        1192/1440      4294967289 Available
/web           (HFS.WEB)                 13832/18720    4294966494 Available
/u             (HFS.USERS)               10624/11712    4294967254 Available
/Z110/usr/mail (HFS.USR.MAIL)            1256/1440      4294967293 Available
/ADCD/tmp      (HFS.ADCD.TMP)            2712/3168      4294967277 Available
/ADCD/etc      (HFS.ADCD.ETC)            1712/4800      4294967009 Available
/ADCD          (HFS.ADCD.HFS)            1200/1440      4294967285 Available
/              (HFS.ADCDPL.ROOT)         1016/1440      4294967276 Available

之後用 ftp 進去並切換到 /usr/lpp/java 目錄

PS D:\temp> ftp 192.168.200.2
Connected to 192.168.200.2.
220-FTPD1 IBM FTP CS V1R10 at ADCD.DFW.IBM.COM, 18:04:26 on 2025-07-13.
220 Connection will close if idle for more than 5 minutes.
501 command OPTS aborted -- no options supported for UTF8
User (192.168.200.2:(none)): ibmuser
331 Send password please.
Password:230 IBMUSER is logged on.  Working directory is "IBMUSER.".
ftp> cd /usr/lpp/java
250 HFS directory /usr/lpp/java is the current working directory
ftp> pwd
257 "/usr/lpp/java" is the HFS working directory.
ftp> lcd
Local directory now D:\temp.
ftp>

把 JDK 安裝檔用 binary 模式上傳

ftp> binary
200 Representation type is Image
ftp> put SDK8_31bit_SR8_FP45.PAX.Z
200 Port request OK.
125 Storing data set /usr/lpp/java/SDK8_31bit_SR8_FP45.PAX.Z
250 Transfer completed successfully.
ftp: 242565201 bytes sent in 22.52Seconds 10768.71Kbytes/sec.
ftp>

確保上傳成功

IBMUSER:/Z110/usr/lpp/java: >ls -al
total 473792
drwx------    2 OMVSKERN SYS1        8192 Jul 13 13:05 .
drwxr-xr-x  112 OMVSKERN SYS1        3840 Oct 15  2008 ..
-rw-r-----    1 OMVSKERN SYS1     242565201 Jul 13 13:06 SDK8_31bit_SR8_FP45.PAX.Z

然後解壓縮

IBMUSER:/Z110/usr/lpp/java: >uncompress SDK8_31bit_SR8_FP45.PAX.Z
IBMUSER:/Z110/usr/lpp/java: >pax -rvf SDK8_31bit_SR8_FP45.PAX
IBMUSER:/Z110/usr/lpp/java: >ls -al
total 587328
drwx------    3 OMVSKERN SYS1        8192 Jul 13 13:11 .
drwxr-xr-x  112 OMVSKERN SYS1        3840 Oct 15  2008 ..
drwxr-xr-x   10 OMVSKERN SYS1        8192 Apr 22 01:27 J8.0
-rw-r-----    1 OMVSKERN SYS1     300690432 Jul 13 13:06 SDK8_31bit_SR8_FP45.PAX
IBMUSER:/Z110/usr/lpp/java: >rm -rf SDK8_31bit_SR8_FP45.PAX
IBMUSER:/Z110/usr/lpp/java: >chmod -R 755 J8.0

 

在 profile 把 JDK 加到 PATH

vi /u/ibmuser/.profile
export PATH=/usr/lpp/java/J8.0/bin:$PATH

如果跑 javac 時報錯 JVMJ9VM082E,把 libj9ifa29.so 屬性補上 +a

IBMUSER:/Z110/usr/lpp/java: >javac -version
JVMJ9VM082E Unable to switch to IFA processor - issue "extattr +a libj9ifa29.so"
javac 1.8.0
IBMUSER:/Z110/usr/lpp/java: >find /usr/lpp/java -name libj9ifa29.so
/usr/lpp/java/J8.0/lib/s390/default/libj9ifa29.so
IBMUSER:/Z110/usr/lpp/java: >extattr +a /usr/lpp/java/J8.0/lib/s390/default/libj9ifa29.so

JDK 成功安裝

IBMUSER:/Z110/usr/lpp/java: >javac -version
javac 1.8.0
IBMUSER:/Z110/usr/lpp/java: >

新卷啟用了壓縮,本地空間能節省很多

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/88656.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88656.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/88656.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

张量索引操作

一.前言本期我们来说一下张量的索引操作,需要掌握张量不同索引操作,我们在操作张量时,经常需要去进⾏获取或者修改操作,掌握张量的花式索引操作是必须的⼀项能⼒。二.简单行、列索引import torchdata torch.randint(0, 10, [4, 5…

docker 启动中间件

docker 启动 MySQL # 创建目录 mkdir -p /Users/dongdong/software/mysql/{conf,data}docker run -d \ -p 3306:3306 \ -v /Users/dongdong/software/mysql/conf:/etc/mysql/conf.d \ -v /Users/dongdong/software/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORDroot \ -…

如何批量旋转视频90度?

用相机拍摄视频的时候,原本是竖直拍的,但是放到电脑里面看的时候,却变成了横版的。如果我们需要放到剪映或者其他软件做剪辑的时候,一个一个去旋转视频会比较麻烦,这里,我们可以事先用.bat文件批处理的方式…

(2025)IDEA 下载与安装保姆级指南

目录 一、下载 IntelliJ IDEA (一)访问官方网站 (二)选择版本 (三)下载安装包 二、安装 IntelliJ IDEA (一)运行安装程序 (二)选择安装语言 &#xf…

【CV综合实战】基于深度学习的工业压力表智能检测与读数系统【1】压力表位置检测

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…

性能狂飙 Gooxi 8卡5090服务器重新定义高密度算力

国鑫Intel Eagle Stream平台8卡RTX5090AI服务器性能到底有多强?小编一文带你看懂个中奥妙。国鑫Intel Eagle Stream平台8卡RTX5090AI服务器如图,国鑫Intel Eagle Stream平台8卡RTX5090AI服务器(SY6108G-G4)只有6U高度,…

零基础掌握Go语言需要多久?报班的话哪家好?

大家有没有发现,近年来,Go语言越来越受欢迎了,TIOBE榜单中,Go现在已经稳居前10了。 尤其在云计算、区块链、微服务等领域,Go语言更是“钦点语言”,很多大厂也都在积极使用Go语言,薪资待遇更是连…

【网络】Linux 内核优化实战 - net.ipv4.tcp_no_metrics_save

目录一、TCP连接指标缓存的作用二、tcp_no_metrics_save的取值及含义三、适用场景与影响推荐启用缓存(值为0)的场景:推荐禁用缓存(值为1)的场景:实际影响:四、如何查看和修改参数1. 查看当前值2…

13. G1垃圾回收器

1. JVM介绍和运行流程-CSDN博客 2. 什么是程序计数器-CSDN博客 3. java 堆和 JVM 内存结构-CSDN博客 4. 虚拟机栈-CSDN博客 5. JVM 的方法区-CSDN博客 6. JVM直接内存-CSDN博客 7. JVM类加载器与双亲委派模型-CSDN博客 8. JVM类装载的执行过程-CSDN博客 9. JVM垃圾回收…

算法学习笔记:13.归并排序——从原理到实战,涵盖 LeetCode 与考研 408 例题

归并排序是一种基于分治策略的经典排序算法,由约翰・冯・诺依曼在 1945 年提出。它以稳定的 O (nlogn) 时间复杂度和良好的可并行性,在大规模数据排序场景中占据重要地位。与快速排序的 “先分区后排序” 不同,归并排序采用 “先排序后合并”…

Kotlin基础学习记录

变量和函数 变量 // val为常量,一旦赋值就不可变 val a 10 val a: Int 10 a 3 // 报错// var为变量 var a 10 a 3 var b: Int 20 b 2函数fun add(a: Int, b: Int): Unit {a b // 报错,参数默认val }fun add(a: Int, b: Int) {var x: Int ax b …

【C#】GraphicsPath的用法

在 C# 中,GraphicsPath 是 GDI 提供的一个非常强大的类,用于创建和操作复杂图形路径。它可以用来绘制直线、曲线、多边形等形状,并支持判断点是否在路径内或路径的轮廓上。一、基本概念GraphicsPath 类功能:添加各种几何图形&…

C语言32个关键字

文章目录数据类型1、数据类型(12个)控制语句2、控制语句关键字(12个)存储类型3、存储类型关键字(4个)其他关键字4、其他关键字(4个)​一共32个关键字分为 数据类型 1、数据类型&am…

粒子滤波|粒子滤波的相关算法理论介绍

在自动控制、导航、目标跟踪等众多领域,系统状态估计是获取真实状态的关键环节。由于观测信号常受噪声干扰,滤波技术成为提取可靠信息的核心手段。本文将围绕目标跟踪技术中的滤波算法理论展开,重点解析粒子滤波框架的原理与应用。一、动态系…

Jenkins+Gitee+Docker容器化部署

写在前文 本文主要是通过Jenkins的maven项目版本GiteeDocker-maven插件来进行部署的,本文没有使用dockerfile/docker-compose。 本文默认已经安装了Docker 1、安装Jenkins Step1、创建文件夹当作映射jenkins的home文件夹 mkdir /app/jenkins Step2、赋权&#xff…

[Meetily后端框架] 多模型-Pydantic AI 代理-统一抽象 | SQLite管理

第5章:人工智能模型交互(Pydantic-AI 代理) 欢迎回来! 在上一章第四章:文字记录处理逻辑中,我们学习了TranscriptProcessor如何将冗长的会议记录分解为称为"块"的较小片段,因为人工…

利用DeepSeek实现rust调用duckdb动态链接库的duckdb CLI

提示词:请用rust调用duckdb-rs实现一个duckdb CLI,支持语法突出显示和计时,还支持命令行管道输入输出 Cargo.toml [package] name "duckdb-cli" version "0.1.0" edition "2024"[dependencies] duckdb "1.3.1&qu…

C++,从汇编角度看《虚拟继承的邪恶》

刷到一篇文章&#xff1a; 作者&#xff1a; 原文&#xff1a;虛擬繼承的邪惡 讨论到这样的一个程序&#xff0c;最终输出什么&#xff1f;&#xff1f;&#xff1f; 代码有简化命名 using namespace std;class A { public:A(int a 0) : v(a) {};int v; };template <type…

多 Agent 强化学习实践指南(一):CTDE PPO 在合作捕食者-猎物游戏中的应用详解

我们来详细讲解如何在合作捕食者-猎物游戏中结合 PPO (Proximal Policy Optimization) 算法。我们将聚焦于 CTDE&#xff08;Centralized Training, Decentralized Execution&#xff0c;集中训练、分散执行&#xff09; 模式&#xff0c;因为这是处理合作多 Agent 任务的常用且…

Web应用文件上传安全设计指南

引言 在当今的Web应用中&#xff0c;文件上传功能已成为基础且必要的服务能力&#xff0c;但不当的设计可能带来目录遍历、代码注入、服务端资源耗尽等安全风险。本文从威胁模型、安全设计原则、技术实现三个维度&#xff0c;系统阐述安全文件上传架构的设计要点。 一、威胁模型…