Arch Linux WebサーバーにPerl 5.28をインストールする方法
前提条件最新のArch Linuxを実行するVultrサーバー(この記事を参照)。実行中のWebサーバー(ApacheまたはNginx Sudoアクセス):コマンドが必要
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-buildafter への引数--は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>複数のコピーを維持したり、複数のパッケージを同時にコンパイルしたりするのに役立ちます。
makechrootpkgafter への引数--はmakepkg、パッケージをビルドするために内部で使用されるときにに渡されます。makepkgによって初めて実行されmakechrootpkg、必要に応じてソースファイルをダウンロードし、整合性チェックを実行するために、独自の変更不可能なオプションを使用して実行されます。したがって、この実行では何も転送できません。これはmakepkg、パッケージをビルドするために2回実行され、ビルドのchroot内で、パッケージのビルドと使用に必要な欠落している依存関係を自動的にインストールするように指示するmakepkg引数を常に自動的に渡します。に加えてファイル、バージョン管理システムの場合はソースコードを更新せず、ソースファイルの検証チェックを実行しません。--syncdeps --noconfirm --log --holdver --skipintegmakepkgpacmanstdout
次のフォームを使用して、これらを一緒にチェーンできます。
$ 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.confpacman.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'
前提条件最新のArch Linuxを実行するVultrサーバー(この記事を参照)。実行中のWebサーバー(ApacheまたはNginx Sudoアクセス):コマンドが必要
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス。rootとして実行する必要のあるコマンドには、先頭に#が付いています。
このチュートリアルでは、Arch LinuxでMumbleサーバー(Murmur)をセットアップする方法について説明します。このチュートリアルで行われることはすべて、rootユーザーとして行われます。インストールと
このチュートリアルでは、Arch LinuxでTeam Fortress 2サーバーをセットアップする方法について説明します。sudoアクセスを持つ非rootユーザーアカウントでログインしていると思います
makepkgを直接使用すると、システムを多少汚染します。base-develパッケージグループをインストールする必要があります。このように、デフォルトでは、依存関係はonlが必要です
前提条件最新のArch Linuxを実行するVultrサーバー(この記事を参照)。実行中のWebサーバー(ApacheまたはNginx Sudoアクセス):コマンドが必要
このチュートリアルでは、Arch LinuxでSpigotを使用してMinecraftサーバーをセットアップする方法について説明します。このチュートリアルでは、あなたが通常のユーザー(root以外)であり、
このチュートリアルでは、Arch LinuxでCounter-Strike:Global Offensiveサーバーをセットアップする方法について説明します。このチュートリアルは、標準的な使用法でログインしたことを前提としています
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス:rootとして実行する必要のあるコマンドには、先頭に#が付いています。
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照)Sudoアクセス:rootとして実行する必要のあるコマンドには、先頭に#が付いています。
Vultrは、実行できるようにする優れたテンプレートに加えて、独自のカスタムイメージを使用できるようにする素晴らしい機能を提供します
序文Arch Linuxは、最先端のテクノロジーと柔軟な構成で有名な汎用ディストリビューションです。Btrfsスナップショットを使用すると、
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照)。ApacheまたはNginx Sudoアクセスのいずれかを実行しているWebサーバー。コマンドが必要
前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス。rootとして実行する必要のあるコマンドには、先頭に#が付いています。Th
Arch Linuxでは、公式リポジトリはコア、エクストラ、コミュニティです。これらのパッケージはすでにコンパイルされており、pacmanによってインストールされます。前方へ
前提条件最新のArch Linuxを実行しているVultrサーバー。詳細については、このガイドを参照してください。Sudoアクセス。root arとして実行する必要があるコマンド
前提条件最新のArch Linuxを実行するVultrサーバー(この記事を参照)。実行中のWebサーバー(ApacheまたはNginx Sudoアクセス)必要なコマンドt
はじめにArch Linuxは、人気のあるディストリビューションよりも小さいながらも強力です。その哲学はかなり異なり、利点と
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の未来は、日々成長を続けています。