曾静的博客

但行好事,莫问前程.

嗨,我是曾静 (@devzeng),目前暂居深圳。


这是我用来记录平日学习笔记的地方,欢迎您的访问.

macOS SSH 登录账号过期问题解决

近期对构建环境的几台 Mac Mini 做了一些“标准化”处理,处理完成后发现通过ssh访问输入密码无法正常连接了(按回车会立即提示连接结束)。通过查看控制台日志发现有如下的记录:

error_log

错误信息:

error: PAM: user account has expired for xxxx from 127.0.0.1

各种查找资料没有找到能讲清楚这个问题原因的,经过一番测试发现一种解决办法:

(1) 查看是否打开共享的远程登录

旧版的系统(<= macOS 12)

share_settings_01

新版的系统(>= macOS 13)

share_settings_03

(2) 如果开启了远程登录且设置”允许访问”为”所有用户”还是不行,可以考虑设置为仅部分用户访问并将需要访问的用户添加进来

share_settings_02

完美解决问题。

附:

Jenkins的macOS节点如果无法通过SSH访问的情况可以通过 Launch agent by connecting it to the controller 的方式进行连接。在节点上面直接启动一段命令即可。在设置页面会提供启动的代码,代码示例如下:

curl -sO http://xxxx/jnlpJars/agent.jar
java -jar agent.jar -jnlpUrl http://xxxx/computer/yyyy/jenkins-agent.jnlp -secret zzzz -workDir "~/jenkins"
最近的文章

Jenkins Pipeline 插件自定义环境变量丢失问题

最近将一些构建任务由 Freestyle 迁移为 Pipeline 的实现 (主要是考虑后续可以通过任务模板的方式动态创建和维护),整体的实现过程较为简单,基本上就是把原来的执行步骤拆分成一个个的 Stage,将里面用到的一些配置抽取成环境变量的方式,统一设置到一起。最终的配置脚本如下(伪代码):node("mac01") { stage('Environment Setting') { env.ENV_BUILD_SCRIPT_URL = "http://127.0....…

Note继续阅读
更早的文章

Docker配置JDK的Security Provider

最近将之前写的一个消息通知的服务支持通过Docker进行部署,以前一直都是通过命令行启动的。一般的流程就是编写Dockerfile文件编译镜像运行容器就大功告成了。Dockerfile配置如下:FROM openjdk:8VOLUME /tmp/dataADD app.jar app.jarENV JAVA_OPTS=""ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -ja...…

Note继续阅读