CentOS 7にApacheをインストールする方法
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
Devtoolsパッケージは、もともとは信頼されたユーザーが公式リポジトリ用のパッケージを適切に作成するために作成されました。ただし、AURパッケージをビルドするために、あるいは修正された公式パッケージを作成するために、一般ユーザーも使用できます。
AURの入手など、AURの一般的な理解と使用については、このガイドを参照してくださいPKGBUILD
。このドキュメントは、パッケージをコンパイルするために選択した方法である場合、Devtoolsに固有の手順のみを示しています。
Devtoolsは、にある個別のクリーンなArchインストールを維持します。これには/var/lib/archbuild/<TARGET>/root
、パッケージグループbase
とのみが含まれますbase-devel
。このクリーンインストールが存在しない場合は、自動的に作成されます。存在する場合は、その中のパッケージを自動的に更新します。Devtoolsを使用してパッケージをビルドする場合、このクリーンインストールのコピーから開始し、必要なパッケージをコピーのみにインストールし、ソースコードをパッケージにコピーし、コンパイルとパッケージ化を実行し、結果のパッケージのみをコピーします。公式リポジトリにあるものと同じ形式。
makepkg
直接実行するよりもDevtoolsに利点があります。利点の1つは、base-devel
作成するパッケージをコンパイル���るのに必要な他のパッケージであり、メインシステムで実行することはありません。これは定期的にアップグレードする必要のあるパッケージが少なく、心配することです。このプロセスは、主にArchパッケージのメンテナーにとってのメリットですPKGBUILD
が、メンテナーがメインシステムに既にインストールしているという依存関係がリストに含まれていない場合など、が正しくない場合に簡単に明らかになります。また、パッケージのビルドが高速なマシンを使用し、ビルドしたマシンのインストールを汚染することなく、パッケージを実行する低速のマシンに結果のパッケージをコピーすることもできます。
主な欠点は、クリーンルートが常にそこにあり、約800MBを必要とし、通常、1つのコピーがより多くのスペースを占めることです。/var/lib/archbuild/
Btrfsを使用する場合、クリーンルートのコピーはBtrfsスナップショットから始まるため、これらのファイルがスペースを2倍にしないことに注意してください。クリーンルートは、パッケージが作成されるたびに再インストールされないように、常にそこに保持されます。
Devtoolsをインストールします。
# pacman -S devtools
パッケージをビルドするために、Devtoolsにarchbuild
はが含まれていますが、これを直接実行することはありません。また、のシンボリックリンクも含まれてい{extra, gnome-unstable, kde-unstable, staging, testing}-x86_64-build
ます。実行に使用されているシンボリックリンクはarchbuild
、によって検査され、使用するターゲットを決定します。これらの不安定/ステージング/テストリポジトリを使用して実行できます。これらのリポジトリには、公式リポジトリにリリースされたものよりも新しいバージョンがある場合があります。AUR以外のパッケージの公式リポジトリを使用するには、のあるディレクトリPKGBUILD
、たとえばによって作成されたディレクトリでgit clone
、次のコマンドを実行します。
$ extra-x86_64-build
注: このガイドの残りの部分では単にを参照しextra-x86_64-build
ます。
実行が完了すると、結果は次のようになります。
/var/lib/archbuild/extra-x86_64/root
- クリーンなchroot。パッケージグループbase
とのみを使用した最新のインストールbase-devel
です。/var/lib/archbuild/extra-x86_64/<USERNAME>
-これにはビルドchrootが含まれます。これは、クリーンなchrootのコピーであり、ビルドされるパッケージのビルドまたは実行に必要な依存関係、およびそのソースコード、コンパイル結果、パッケージが含まれています。最後に、「Checking PKGBUILD
」と「Checking <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
」に気付くでしょう。これらの後の行はから出力されnamcap
、不正なPKGBUILD
ファイル、パッケージが使用していないように見える依存関係、パッケージが使用しているように見える依存関係などの問題を自動的に探します。誤検知はによって生成されることがよくありますがnamcap
、調査するものを提供するための優れたツールです。パッケージが正しく機能している場合、パッケージnamcap
を調べて変更が行われる必要があることを確認しない限り、出力についてメンテナに警告することはお勧めできません。
を使用pacman
してパッケージをインストールできます。これにより、パッケージが公式リポジトリまたはローカルリポジトリにある限り、パッケージの実行に必要な依存関係がインストールされます。
ここで説明されているようにローカルリポジトリを使用するか、ファイルを直接インストールします。
# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
extra-x86_64-build
このパッケージまたは別のパッケージで今すぐ実行するか、後でいつでも実行する場合、必要に応じてクリーンなchrootを更新し、ビルドchrootを削除して、クリーンなchrootの新しいコピーにし、同じプロセスを実行します。ディレクトリに前回からソースコードがダウンロードされている場合は、それが使用されます。パッケージが開発用AURパッケージの場合、再クローンではなく、新しい変更を取得します。
内部的にはextra-x86_64-build
が実行されmakechrootpkg
、内部的にはが呼び出されますmakepkg
。のオプションextra-x86_64-build
は次のとおりです。
-c
:クリーン/var/lib/archbuild/extra-x86_64/
なchrootとすべてのビルドchrootディレクトリーを含むディレクトリー全体を削除して再作成することにより、chrootをクリーンアップします。これが必要になることはめったにありません。クリーンなchrootが破損した場合、またはDevtoolsが下位互換性を損なう方法でアップグレードされた場合のみです。-r <dir>
:/var/lib/archbuild/extra-x86_64/
chrootを含めるのとは別のディレクトリを使用してください。extra-x86_64-build
after への引数--
はmakechrootpkg
、内部で使用されるときにに渡されます。いくつかの引数は常に自動的にからextra-x86_64-build
に渡されmakechrootpkg
ます。これらの自動引数は-r <value given to extra-x86_64-build -r option if given, /var/lib/archbuild/extra-x86_64 otherwise> -c -n
です。彼らmakechrootpkg
はビルドchrootを削除してクリーンなchrootの新しいコピーにし、namcap
ビルドが成功した場合はパッケージで実行するように指示します。に渡すことができる一般的に使用されるオプションmakechrootpkg
は-l <copy name>
です。これは、の代わりにビルドchrootに付けるディレクトリ名です。これは、<USERNAME>
複数のコピーを維持したり、複数のパッケージを同時にコンパイルしたりするのに役立ちます。
makechrootpkg
after への引数--
はmakepkg
、パッケージをビルドするために内部で使用されるときにに渡されます。makepkg
によって初めて実行されmakechrootpkg
、必要に応じてソースファイルをダウンロードし、整合性チェックを実行するために、独自の変更不可能なオプションを使用して実行されます。したがって、この実行では何も転送できません。これはmakepkg
、パッケージをビルドするために2回実行され、ビルドのchroot内で、パッケージのビルドと使用に必要な欠落している依存関係を自動的にインストールするように指示するmakepkg
引数を常に自動的に渡します。に加えてファイル、バージョン管理システムの場合はソースコードを更新せず、ソースファイルの検証チェックを実行しません。--syncdeps --noconfirm --log --holdver --skipinteg
makepkg
pacman
stdout
次のフォームを使用して、これらを一緒にチェーンできます。
$ extra-x86_64-build <DEVTOOLS-OPTIONS> -- <MAKECHROOTPKG-OPTIONS> -- <MAKEPKG-OPTIONS>
/var/lib/archbuild
一時ディレクトリのように扱うことができることに注意してください。複数のVultrハードドライブがある場合は、ここにRAID0(ストライプ)ファイルシステムをマウントする価値があります。RAMが大量にある場合は、RAMでバックアップされたファイルシステムをマウントすることもできますtmpfs
。ビルドされたパッケージは、実行したディレクトリにコピーされます。必要にextra-x86_64-build
応じて、この時点でを削除できます/var/lib/archbuild
。新しいクリーンルートを作成する必要があるため、次の実行は遅くなります。または、/var/lib/archbuild/<USERNAME>
次のDevtoolsの実行で自動的に削除される前に、ビルドchrootから余分なスペースを取り戻すために削除することもできます。したがって、ここにマウントされたRAID0ファイルシステムで障害が発生した場合でも、失われる可能性が最も高いのはコンパイル中です。
Devtools構成ファイルに関して注意すべき点がいくつかあります。彼らはに位置している/usr/share/devtools/
ような、makepkg-x86_64.conf
とpacman-extra.conf
。
/etc
ようなファイルについては、ファイルをその場で安全に編集できます。パッケージがアップグレードされても、変更は上書きされません。むしろ、末尾がで終わる新しい構成ファイル(前のバージョンから変更されている場合)を保存します。ただし、Devtools構成ファイルはユーザーが編集することを意図していないため、Devtoolsがアップグレードされると、警告なしにこれらのファイルへの変更が完全に上書きされます。この動作への変更が提案され、拒否されました。これにより、パッケージがすべて同じコンパイル設定で公式リポジトリに送信されるようになるためです。makepkg.conf
pacman.conf
.pacnew
/usr/share/
MAKEFLAGS
、PACKAGER
ではなく{SRC,SRCPKG,PKG,LOG}DEST
から取得されます。/etc/makepkg.conf
/usr/share/devtools/makepkg-x86_64.conf
ビルドした他のパッケージに依存するパッケージをpacman
ビルドする場合は、ローカルリポジトリを使用する必要があります。これにより、ビルドchroot内で実行すると、依存関係が検出されます。
ローカルリポジトリをセットアップするには、このガイドの「ローカルリポジトリ」セクションを参照してください。
カスタムターゲットを作成します。
# ln -s archbuild /usr/bin/custom-x86_64-build
# cp /usr/share/devtools/pacman-{extra,custom}.conf
編集/usr/share/devtools/pacman-custom.conf
し、最後に以下を追加します。
[archLocalRepo]
SigLevel = Optional TrustAll
Server = file:///archLocalRepo
編集して/etc/pacman.conf
、以下を追加します。これにより、ディレクトリがchrootにバインドマウントされます。
CacheDir = /var/cache/pacman/pkg/ /archLocalRepo/
今、使用extra-x86_64-build
する代わりにこれを使用してください:
$ custom-x86_64-build
常にカスタムターゲットを使用/var/lib/archbuild/extra-x86_64-build/
する場合は、chrootがにあるため、ディレクトリが存在する場合は削除できます/var/lib/archbuild/custom-x86_64-build/
。
スレッド化されたパッケージを有効にするに/usr/share/devtools
は、公式にはサポートされていない構成ファイルを編集する必要があるため、Devtoolsがアップグレードされるたびにこの変更を実行する必要があります。
Devtoolsは、パッケージ全体をアーカイブ形式に結合します。デフォルトで.tar.xz
は、xz
圧縮に単一のスレッドを使用します。
マルチCPUシステムでは、をxz
編集し/usr/share/devtools/makepkg-x86_64.conf
て次の行を変更することにより、複数のスレッドの使用を許可できます。
COMPRESSXZ=(xz -c -z -)
仮想コアと同じ数のスレッドを許可するには:
COMPRESSXZ=(xz -c -z - --threads=0)
システム全体のパフォーマンスへの影響を減らすために、すべてではなく複数の仮想コアを使用できるようにするには、特定の数を追加します。
COMPRESSXZ=(xz -c -z - --threads=21)
使用している仮想コアの数より多くのスレッドを指定すると、パフォーマンスが低下します。
パッケージファイルのサイズが(大きくなる可能性がある)気にならない場合は/usr/share/devtools/makepkg-x86_64.conf
、を編集して圧縮を無効にし、次の行を変更します。
PKGEXT='.pkg.tar.xz'
次のように変更します。
PKGEXT='.pkg.tar'
CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。
FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。
サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。
CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。
Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。
CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。
WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。
FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。
Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。