アフィリエイトリンクまたはスポンサーシップを通じて、ベンダーから収益を得る場合があります。これにより、サイト上の商品配置が影響を受ける可能性がありますが、レビューの内容には影響しません。詳細は利用規約をご覧ください。
以前と同じようにmcryptをインストールできなくなってしまったとしても、ご心配なく。peclを使って、このよく使われる依存関係をインストールするための手順をご紹介します。
PHP 7.1以降、php-mcryptは非推奨となりました。そしてPHP 7.2では完全に削除されました。これは問題です。多くのサーバーソフトウェアが依然としてこの暗号化ツールに依存しているからです。Nextcloud、ownCloudなど、多くのソフトウェアがまだこの依存関係を解消していないため、システムにmcryptがないとインストールできない可能性があります。どうすればいいでしょうか?apt-get install php-mcryptやyum install php-mcryptを何度実行しても、うまくいきません。
幸いなことに、解決策があります。その解決策はpeclコマンドにあります。PECLはPHP拡張機能のリポジトリとして機能するPHP Extension Community Library(PHP拡張コミュニティライブラリ)です。このリポジトリを通じてmcryptをインストールできます。
mcrypt とは何ですか?
mcrypt拡張モジュールは、UNIXのcryptコマンドの代替です。これらのコマンドは、UNIXおよびLinuxシステム上でファイルを暗号化する手段として機能します。php-mcrypt拡張モジュールは、PHPとmcrypt間のインターフェースとして機能します。
参照: Linux のセキュリティ保護ポリシー (Tech Pro Research)
mcryptのインストール
Ubuntu Server 16.04にmcryptをインストールする手順を詳しく説明します。必要な依存関係をシステムに追加してしまえば、それほど難しいことではありません。mcryptがインストールされたら、この拡張機能に依存するソフトウェアのインストールを続行できます。
では、mcrypt はどのようにインストールするのでしょうか? まず、ターミナルウィンドウを開き、次のコマンドで必要な依存関係をインストールします。
sudo apt-get -y install gcc make autoconf libc-dev pkg-config
sudo apt-get -y install php7.2-dev
sudo apt-get -y install libmcrypt-dev
依存関係がインストールされたら、次のコマンドで mcrypt をインストールできます。
sudo pecl install mcrypt-1.0.1
これで完了です。Mcrypt がインストールされました。この拡張機能に依存するサーバーソフトウェアのインストール手順に戻ってください。これで準備完了です。
消えたのではなく、移動しただけ
ご心配なく。mcryptがなくなったわけではありません。PHPからPECLに移行しただけです。しかし、長年php-mcryptを使ってインストールしてきた方にとっては、これは大きな変化です。以前は1つのコマンドでmcryptをインストールできていたのに、今では4つのコマンドを使わなければならなくなりました。それでも、少なくともmcryptは引き続き利用できます。しかし、最終的にはmcryptへの依存は別のツール(OpenSSLなど)に移行すると考えています。
また読んでください…
- Ubuntu 18.04にownCloudをインストールする方法(TechRepublic)
- Ubuntu 18.04にnextCloud 13をインストールする方法(TechRepublic)
- Ubuntu Server 18.04のインストール方法(TechRepublic)
- オープンソースのドイツにおける大きな勝利:30万人のユーザーがファイル共有のためにNextcloudに移行(ZDNet)

ジャック・ウォーレン
ジャック・ウォーレンは、TechRepublic、The New Stack、Linux New Mediaなどで受賞歴のあるライターです。20年以上にわたり様々なトピックを執筆し、オープンソースの熱心な推進者でもあります。ジャック・ウォーレンに関する詳細は、ウェブサイトjackwallen.comをご覧ください。