CentOS 6.9 で glibc ダイナミック ライブラリをアップグレードする詳細なプロセス

CentOS 6.9 で glibc ダイナミック ライブラリをアップグレードする詳細なプロセス

glibc は、gnu によってリリースされた libc ライブラリ、つまり c ランタイム ライブラリです。glibc は Linux システムで最も低レベルの API であり、他のほとんどのランタイム ライブラリは glibc に依存します。 Linux オペレーティング システムによって提供されるシステム サービスをカプセル化するだけでなく、glibc 自体も他の多くの必要な機能サービスの実装を提供します。 ls、mv、cp、rm、ll、ln などの多くの基本的な Linux コマンドはこれに依存しています。操作を間違えたり、アップグレードに失敗したりすると、システム コマンドが使用できなくなり、深刻な場合は、システムを終了した後に再入力できなくなります。そのため、操作時には注意し、アップグレード前に重要なデータを保存する必要があります。

このメモを書く目的は、実は CentOS に Chrome ブラウザをインストールしようとしたときに、Chrome のインストールには glibc (2.14-2.16) が依存関係にあるというエラー メッセージが報告されたため、テスト マシンで glibc ダイナミック ライブラリをアップグレードすることを計画したことです。

テキストは以下から始まります:

1. まず、システムバージョンとGlibcバージョンを確認します

glibcのバージョンを確認するにはコマンドを実行します

文字列 /lib64/libc.so.6 | grep GLIBC_

結果は次のとおりです。

上記の情報から、システムは CentOS 6.9 であることがわかります。安定性のために、centos および redhat システムの glibc バージョンはまだ 2.12 ですが、現在はすでにバージョン 2.30 になっています。安全のために、バージョン 2.17 にアップグレードすることにしました。

2. ソフトウェアをダウンロードしてアップグレードする

http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz から取得 
tar -xvf glibc-2.17.tar.gz 
glibc-2.17/build をmkdirします
glibc-2.17/ビルドをCDに追加します 
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
メイク –j4
インストールする

例:

1. make の後の -j4 は、マルチコア CPU のコンパイル速度を上げるためのものです。4 という数字は CPU コア数の 2 倍です (設定できる最大値は CPU コア数の 2 倍です)

2. --prefix の後のパスは /usr である必要があります。別のパスに変更すると失敗する可能性があります。

インストールが完了すると、最終出力は

赤いボックス内の文は、基本的にアップグレードが成功したことを確認します。 ! ! O(∩_∩)O ハハハ〜

3. テスト

埋め込む

ldd --version

または実行する

strings /lib64/libc.so.6 | grep GLIBC_

この時点で、glibc のバージョンアップは完了です。いくつかの実験とテストを経て検証されたこのメモ (システム コマンドのほとんどが使用できず、システムを再起動しても入力できなかったときも含め、5 回ほど再コンパイルしてインストールしましたが、テストには仮想マシンを使用する必要がありました) が、皆様のお役に立てば幸いです。後ほど、glibc のアップグレード中に libc.so.6 ファイルを誤って削除または紛失したために、ほとんどのコマンドが無効になる問題の解決策を共有します。お楽しみに!

要約する

上記は、編集者が紹介した CentOS 6.9 の glibc ダイナミック ライブラリのアップグレードの詳細なプロセスです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • CentOS6.5 に glibc-2.14 をインストールした後、ロケールで「そのようなファイルまたはディレクトリはありません」というメッセージが表示される場合の解決策
  • Centos6.5 glibc アップグレードプロセスの紹介
  • CentOS6 アップグレード glibc 操作手順
  • Centos7でglibcをアップグレードするとシステム異常(起動できない)になる場合の解決方法

<<:  React 純粋関数コンポーネント setState がページ更新を更新しない問題の解決方法

>>:  Alibaba Cloud ECS クラウド サーバー (Linux システム) は、MySQL をインストールした後にリモートで接続できません (落とし穴)

推薦する

HTMLのmarquee属性でテキストを踊らせる

構文: <marquee> …</marquee>モバイル属性マーキーを使用...

jQueryは画像追従効果を実現します

この記事では、画像フォロー効果を実現するためのjQueryの具体的なコードを参考までに紹介します。具...

MySQLにおける分散ロックの考え方をDBの助けを借りて詳しく説明します

序文スタンドアロン ロックであっても分散ロックであっても、共有データに基づいて現在の操作の動作を判断...

...

Dockerコンテナを作成、起動、停止する方法

1. コンテナとは、独立して実行されるアプリケーション、またはアプリケーションのグループとその動作環...

MySQLデータベース最適化技術の簡単な紹介

成熟したデータベース アーキテクチャは、最初から高可用性、高スケーラビリティなどの機能を備えて設計さ...

Linux システムで Tomcat を自動的に起動するための設定方法の紹介

1. /etc/init.d ディレクトリに入ります: cd /etc/init.d 2. tomc...

CSS を使用してマウスをホバーすることで他のタグのスタイルを変更するサンプルコード

序文:私の知る限り、現在 CSS で制御できるのは、タグをホバーしたときにそのタグの下の兄弟タグとサ...

docker での psql データベースのバックアップとリカバリの詳細な説明

1. DockerでのPostgresデータベースのバックアップ注文: docker exec it...

Dockerにおけるオーバーレイネットワークの詳細な説明

Docker 公式ドキュメントからの翻訳、原文: https://docs.docker.com/n...

MySQLの結合の基本原理についての簡単な説明

目次結合アルゴリズム駆動テーブルと非駆動テーブルの違い1. 単純なネストループ結合、単純なネスト、イ...

Vue2 キューブUI 時間セレクターの詳細な説明

目次序文1. 需要と効果必要効果2. コードの実装index.vue(html)日付方法テスト結果3...

Alipay の新しいホームページのフロントエンドの実践的な概要

もちろん、ページ パフォーマンスの最適化に関する個人的な経験も含まれています。ここでいくつかの点につ...

innodb_autoinc_lock_mode の表現と値の選択方法についての簡単な説明

前提条件: Percona 5.6 バージョン、トランザクション分離レベルは RR mysql>...

Dockerはbusyboxを使用してベースイメージを作成します

Docker イメージの最初の行は FROM alpine などのイメージで始まりますが、最初のベー...