運維:記錄因grpc需求而引發的glibc故障

背景需求:

準備使用grpc作爲服務組間的服務通信協議

問題發生:

本地開發採用mac開發,依賴如下:

<dependency> <groupId>org.lognet</groupId> <artifactId>grpc-spring-boot-starter</artifactId> <version>2.4.3</version> </dependency>

在採用grpc 相關組件對 protobuf 文件進行編譯

<build> <extensions> <!-- os-maven-plugin --> <extension> <groupId>kr.motd.maven</groupId> <artifactId>os-maven-plugin</artifactId> <version>${os-maven-plugin.version}</version> </extension> </extensions> <plugins> <!-- spring-boot-maven-plugin --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- protobuf-maven-plugin --> <plugin> <groupId>org.xolstice.maven.plugins</groupId> <artifactId>protobuf-maven-plugin</artifactId> <version>${protobuf-maven-plugin.version}</version> <configuration> <!--默認值--> <protoSourceRoot>${project.basedir}/src/main/proto</protoSourceRoot> <!--默認值--> <!--<outputDirectory>${project.build.directory}/generated-sources/protobuf/java</outputDirectory>--> <outputDirectory>${project.build.sourceDirectory}</outputDirectory> <!--設置是否在生成java文件之前清空outputDirectory的文件,默認值爲true,設置爲false時也會覆蓋同名文件--> <clearOutputDirectory>false</clearOutputDirectory> <!--默認值--> <temporaryProtoFileDirectory>${project.build.directory}/protoc-dependencies</temporaryProtoFileDirectory> <!--更多配置信息可以查看https://www.xolstice.org/protobuf-maven-plugin/compile-mojo.html--> <protocArtifact>com.google.protobuf:protoc:3.5.1-1:exe:${os.detected.classifier}</protocArtifact> <pluginId>grpc-java</pluginId> <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.11.0:exe:${os.detected.classifier}</pluginArtifact> </configuration> <executions> <execution> <goals> <goal>compile</goal> <goal>compile-custom</goal> </goals> </execution> </executions> </plugin> </plugins> </build>

本地mac 可以編譯。但是當使用jenkins 進行構建時

報錯。

提示glibc版本有問題,然後打算升級,glibc.結果把/lib64/libc.so.6 給替換了,造成Linux ssh無法遠程登錄,bash命令無法執行。

錯誤出現如下狀態:

最後解決:

  1. 將該快磁盤,掛載在其他系統(ISO盤)啓動,使其啓動。然後將原來軟連接刪除。
  2. 手動創建,ln -s /lib64/libc-2.12.so /lib64/libc.so.6

參考:

https://unix.stackexchange.com/questions/179233/error-while-loading-shared-libraries-libc-so-6-cannot-open-shared-object-file

http://blog.51cto.com/asd9577/1931442

http://blog.51cto.com/314258/1704852

https://blog.csdn.net/zxyuying/article/details/44085753

https://help.aliyun.com/knowledge_detail/41478.html#%E9%80%9A%E8%BF%87%E5%9B%9E%E6%BB%9A%E7%A3%81%E7%9B%98%E6%81%A2%E5%A4%8D

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章