OCS Inventory · 4 min read · Dec 19, 2025

Ubuntu 22.04にOCS Inventory Serverをインストールする方法

OCS Inventory Serverは、環境やIT部門内のすべてのデバイスをスキャンし、在庫を管理するためのオープンソースソフトウェアです。これは、すべてのデバイスやコンピュータの情報を追跡するのに役立つ無料の在庫および資産管理ソリューションです。

OCS Inventory Serverには、データベースサーバー、通信サーバー、管理サーバー、デプロイメントサーバーの4つの主要コンポーネントがあります。OCS Inventory Serverを使用すると、デバイスに関する最新かつ最も関連性の高いデータを取得できます。複数のオペレーティングシステムにインストールでき、Microsoft Windows、Linux、BSD、Sun Solaris、IBM AIX、HP-UX、MacOS X、Androidなどの複数のオペレーティングシステム用のエージェントパッケージを提供します。

ネットワークデバイスについては、OCS InventoryはネットワークディスカバリーとSNMPエージェントをサポートしています。ネットワークディスカバリーとSNMPエージェントを介して、プリンター、スイッチ、(OCSエージェントがインストールされていない)コンピュータなどのネットワークハードウェアに関する情報を追加および挿入できます。

このガイドでは、Ubuntu 22.04サーバーにOCS Inventory Serverをインストールします。Apache2ウェブサーバー、MariaDBデータベースサーバー、およびPHPを使用してOCS Inventory Serverをインストールします。これには、OCS Inventory Serverのウェブ管理ダッシュボードを提供するPHPベースのアプリケーションであるocsreportsのインストールも含まれ、Apache2とPHPで実行されます。

前提条件

このガイドを完了するには、以下の要件が必要です:

  • Ubuntu 22.04を実行しているLinuxサーバー - この例では、ホスト名が「 ocs-server 」でIPアドレスが「 192.168.5.20 」の新しい一般的なUbuntuサーバーを使用します。
  • sudo/root管理者権限を持つ非rootユーザー。

これらの要件が整ったら、OCS Inventory Serverのインストールを開始してください。

依存関係のインストール

この最初のセクションでは、OCS Inventory Serverのインストールと実行に使用されるいくつかの依存関係をインストールする必要があります。このインストールには、以下のパッケージが含まれます:

  • 基本的な依存関係 - これらのパッケージは、いくつかのPerlモジュールをコンパイルするために使用されます。
  • Perlといくつかの追加のPerlパッケージ - OCS Inventory ServerはPerlで書かれているため、サーバーにPerlをインストールする必要があります。ここでの追加のPerlパッケージには、PerlデータベースドライバーとREST API用のPerl SOAPパッケージが含まれます。
  • LAMPスタック - OCS Inventory ServerはApache2、MariaDBデータベースで実行されます。PHPパッケージは、OCS Inventory Serverのウェブアプリケーションダッシュボードである「 ocsreports 」によって使用されます。
  • 追加のPerlモジュール - CPAN(Comprehensive Perl Archive Network)を介していくつかのPerlモジュールをインストールします。

開始する前に、次のコマンドを入力してUbuntuパッケージインデックスを更新およびリフレッシュします。

sudo apt update

次の「 apt install 」コマンドを入力して、いくつかの基本的な開発依存関係をインストールします。これらのパッケージは、いくつかのPerlモジュールをコンパイルするために主に使用されます。

sudo apt install git curl wget make cmake gcc make

プロンプトが表示されたら、yを入力して確認し、ENTERを押して続行します。

install basic deps

次に、以下の「 apt install 」コマンドを介してPerlといくつかのPerルパッケージをインストールします。OCS Inventory Serverは主にPerlで書かれているため、OCS Inventory Serverをインストールする前にPerlパッケージをインストールする必要があります。

sudo apt install perl libxml-simple-perl libcompress-zlib-perl libdbi-perl libdbd-mysql-perl libnet-ip-perl libsoap-lite-perl libio-compress-perl

プロンプトが表示されたらyを入力し、ENTERを押して続行します。

install Perl and Perl dependencies

次に、「 libapache2-mod-perl2 」や「 composer 」などの追加のパッケージを使用してLAMPスタックをインストールします。ApacheウェブサーバーとPHPパッケージは、OCS Inventory Serverのウェブ管理ダッシュボードを実行するために使用され、MariaDBはデータベースバックエンドとして使用されます。

sudo apt install apache2 libapache2-mod-perl2 libapache2-mod-perl2-dev libapache-dbi-perl libapache-db-perl libapache2-mod-php libarchive-zip-perl mariadb-server composer php-mbstring php-xml php-mysql php-zip php-pclzip php-gd php-soap php-curl php-json

プロンプトが表示されたらyを入力し、ENTERを押します。

install LAMP Stack and Composer

LAMPスタックとComposerがインストールされたら、次のコマンドを入力してApache2とMariaDBサービスのステータスを確認し、PHPとComposerのバージョンを確認します。

以下の「 systemctl 」コマンドを使用してApache2サービスを確認します。出力「 enabled 」は、Apache2ウェブサーバーがシステム起動時に自動的に起動することを確認し、出力「 active (running) 」は、Apache2ウェブサーバーが実行中であることを確認します。

sudo systemctl is-enabled apache2  
sudo systemctl status apache2

verify apache2

以下の「 systemctl 」コマンドを使用してMariaDBサービスを確認します。出力「 enabled 」は、MariaDBサーバーがシステム起動時に自動的に起動することを確認し、出力「 active (running) 」は、MariaDBサービスが実行中であることを確認します。

sudo systemctl is-enabled mariadb  
sudo systemctl status mariadb

verify mariadb

以下のコマンドを使用してPHPバージョンを確認します。この執筆時点で、PHP 8.1がサーバーにインストールされており、Ubuntuリポジトリによって提供されています。

php -v

verify php

以下のコマンドを入力してComposerのバージョンを確認します。

sudo -u www-data composer -v

verify composer

基本的な依存関係がインストールされたら、次のコマンドを入力してOCS Inventory Serverに必要なPerlモジュールをインストールします。

sudo perl -MCPAN -e 'install Apache2::SOAP'  
sudo perl -MCPAN -e 'install XML::Entities'  
sudo perl -MCPAN -e 'install Net::IP'  
sudo perl -MCPAN -e 'install Apache::DBI'  
sudo perl -MCPAN -e 'install Mojolicious'  
sudo perl -MCPAN -e 'install Switch'  
sudo perl -MCPAN -e 'install Plack::Handler'

最初にCPANを設定するように求められます。「 yes 」と入力して確認し、CPANを自動的に設定します。Perlモジュールのインストールが開始されるはずです。

install perl modules

Perlモジュールのインストールが完了すると、OCS Inventory Serverのパッケージ依存関係がインストールされたことが確認されます。次のステップでは、MariaDBサーバーとPHPを設定します。

MariaDBサーバーの設定

このセクションでは、「 mariadb-secure-installation 」コマンドを使用してMariaDBサーバーのデプロイを設定および保護します。次に、OCS Inventory Serverで使用される新しいデータベースとユーザーを作成します。

次のコマンドを入力して、MariaDBサーバーのデプロイを設定および保護します。

sudo mariadb-secure-installation

次のMariaDB設定について尋ねられます:

  • ローカル認証をunix_socketに切り替えますか? nと入力します。
  • 新しいMariaDB rootパスワードを設定しますか? yと入力して確認し、新しいパスワードをMariaDBサーバーデプロイに入力します。
  • 匿名ユーザーを削除しますか? yと入力して確認します。
  • デプロイからデフォルトデータベーステストを削除しますか? yと入力して確認します。
  • リモート接続からMariaDB rootログインを禁止しますか? yと入力して確認します。
  • テーブル権限を再読み込みして変更を適用しますか? yと入力してENTERを押します。

これで、MariaDBサーバーデプロイが保護され、MariaDB rootユーザーのパスワードが設定されました。

次に、以下のコマンドを使用してMariaDBシェルにログインします。OCS Inventory Serverアプリケーション用の新しいMariaDBデータベースとユーザーを作成します。

sudo mariadb -u root -p

次のクエリを入力して、新しいデータベース「 ocsdb 」とユーザー「 ocs@localhost 」を作成します。また、以下のMariaDBユーザーパスワードを変更することを確認してください。

CREATE DATABASE ocsdb;  
GRANT ALL PRIVILEGES ON ocsdb.* TO ocs@localhost IDENTIFIED BY "ocsP4ssw0rd";  
FLUSH PRIVILEGES;

create database and user

最後に、次のクエリを入力して新しいユーザー「 ocs@localhost 」の権限リストを確認します。MariaDBユーザー「 ocs@localhost 」がOCS Inventory Serverで使用されるデータベース「 ocsdb 」にアクセスできることを確認する必要があります。

SHOW GRANTS FOR ocs@localhost;  
QUIT;

show db user

このセクションでは、MariaDBサーバーデプロイを保護し、「 mariadb-secure-installation 」コマンドを介してMariaDB rootパスワードを設定しました。また、OCS Inventory Serverインストール用の新しいMariaDBデータベースとユーザーを作成しました。次のステップでは、「 ocsreports 」またはOCS管理ダッシュボードを実行するために使用されるPHP設定を行います。

PHPの設定

MariaDBサーバーを設定した後、ocsreportsまたはOCS管理サーバーで使用されるPHPインストールを設定します。「 php.ini 」ファイルのいくつかのパラメーターを変更し、変更を適用するためにApache2サービスを再起動する必要があります。

以下のnanoエディタコマンドを使用してPHP設定ファイル「 /etc/php/8.1/apache2/php.ini 」を開きます。

sudo nano /etc/php/8.1/apache2/php.ini

デフォルトのパラメーターを以下の行に変更します。「 date.timezone 」パラメーターを自分のタイムゾーンに調整してください。

memory_limit = 512M  
post_max_size = 100M  
upload_max_filesize = 100M  
max_execution_time = 360  
date.timezone = Europe/Stockholm

完了したら、ファイルを保存して閉じます。

次に、以下のsystemctlコマンドユーティリティを入力してApache2サービスを再起動し、変更を適用します。

sudo systemctl restart apache2

これで、OCS Inventory Server用のLAMPスタックの基本設定が完了しました。次のステップでは、UFWファイアウォールを設定し、いくつかのポートまたはサービスを開きます。

UFWファイアウォールの設定

Ubuntuサーバーでは、ufwがデフォルトのファイアウォールとしてインストールされています。インストールされていますが、まだシステムで実行されていません。このセクションでは、UFWに「 OpenSSH 」および「 Apache Full 」サービスを追加します。次に、サーバーでufwを開始し、システム起動時に自動的に実行されるようにします。

以下の「 ufw allow 」コマンドを入力して「 OpenSSH 」および「 Apache Full 」アプリケーションを開きます。OpenSSHアプリケーションはデフォルトのSSHポート22/tcpを開き、「Apache Full」サービスはデフォルトのHTTPおよびHTTPSポート-80/tcpおよび443/tcpを開きます。

sudo ufw allow OpenSSH  
sudo ufw allow 'Apache Full'

次に、以下のコマンドを実行してUFWファイアウォールを開始および有効にします。プロンプトが表示されたらyを入力して確認し、ENTERを押して続行します。

sudo ufw enable

出力「 Firewall is active and enabled on system startup 」は、UFWが有効であり、システム起動時に自動的に実行されることを確認します。コマンドが実行された後、UFWが実行されているはずです。

setup ufw firewall

以下のコマンドを入力してUFWファイアウォールのステータスを確認します。出力「 Status: Active 」は、UFWが実行中であることを確認し、「 OpenSSH 」および「 Apache Full 」アプリケーションが追加され、UFWファイアウォールで利用可能であることがわかります。

sudo ufw status

verify ufw firewall

この時点で、OCS Inventory Serverインストールのためのパッケージ依存関係のインストールと基本設定が完了しました。次のセクションに移動してOCS Inventory Serverのインストールを開始します。

OCS Inventory Serverのインストール

OCS Inventory Serverは、Linux、Unix、Windowsなどの異なるオペレーティングシステムにインストールできます。さまざまなパッケージで利用可能であり、Ubuntu、Debian、CentOSなどのさまざまなLinuxディストリビューション用の公式リポジトリを提供しています。

この例では、OCS Inventory Serverをソースから手動でインストールし、MariaDBデータベースサーバーで構成します。また、OCS Inventory Serverアプリケーションのウェブ管理ダッシュボードとして使用されるocsreportsもインストールします。

作業ディレクトリを「 /var/www 」に移動し、以下の「 git clone 」コマンドを介してOCS Inventory Serverのソースコードをダウンロードします。ソースコードは「 OCSInventory-Server 」ディレクトリにあるはずです。

cd /var/www/  
git clone https://github.com/OCSInventory-NG/OCSInventory-Server.git

download ocs inventory server

「OCSInventory-Server」ディレクトリに移動し、以下の「 git clone 」コマンドを介して「 ocsreports 」アプリケーションをダウンロードします。「 ocsreports 」は、OCS Inventory Serverのウェブコンソールまたはウェブ管理ダッシュボードとして使用されるPHPウェブアプリケーションであり、「 ocsreports 」ディレクトリに保存されます。

cd OCSInventory-Server/  
git clone https://github.com/OCSInventory-NG/OCSInventory-ocsreports.git ocsreports

ocsreports 」ディレクトリに移動し、「 composer install 」コマンドを実行してocsreportsウェブアプリケーションのPHP依存関係をインストールします。

cd ocsreports/  
sudo -u www-data composer install

次に、OCS Inventory Serverインストールのルートディレクトリ「 /var/www/OCSInventory-Server 」に移動し、以下のnanoエディタコマンドを使用してbashスクリプト「 setup.sh 」を開きます。「 setup.sh 」スクリプトは、OCS Inventory Serverをインストールするために使用されます。

cd /var/www/OCSInventory-Server/  
nano setup.sh

データベースの詳細には、データベース名、ユーザー名、パスワードが含まれます。

DB_SERVER_HOST="localhost"  
DB_SERVER_PORT="3306"  
DB_SERVER_USER="ocs"  
DB_SERVER_PWD="ocsP4ssw0rd"

完了したら、ファイルを保存して閉じます。

次に、「 setup.sh 」スクリプトを実行してOCS Inventory Serverのインストールを開始します。インストール中に、いくつかのOCSサーバー設定を求められます。

./setup.sh

最初に、「 setup.sh 」スクリプトはOCS Inventory Serverインストールの依存関係を確認および検証します。サーバー設定がOCSサーバーの要件を満たしている場合、インストーラースクリプトからの歓迎メッセージが表示されます。

yを入力して続行します。

installing ocs server

インストーラスクリプトは、OCS Inventory Serverで使用されるデータベースの詳細を確認します。データベースホストとポートのデフォルト値を使用するにはENTERを押します。

database details

次に、Apache2ウェブサーバーの設定について尋ねられます。これには、「 apachectl 」バイナリファイルの場所、デフォルトのApache設定「 apache.conf 」、Apache2サービスを実行するデフォルトのユーザーとグループ、およびApache2が追加の設定ファイルを保存するために使用するデフォルトのパスが含まれます。

Apache2ウェブサーバーのデフォルト設定を使用するにはENTERを押します。

check apache configurations

次に、「 perl 」のバイナリファイルについて尋ねられます。デフォルトのままにしてENTERを押して続行します。

check perls

現在のマシンに「 Communication server 」を設定するように求められた場合は、yと入力して確認します。インストーラスクリプトは、「 Communication server 」のインストールに必要な依存関係を確認します。

また、「 Communication server 」で使用されるいくつかの設定について尋ねられます。デフォルト設定を使用するにはENTERを押します。

confgire communication server

次に、インストーラスクリプト「 setup.sh 」は、必要なPerlモジュールがシステムに存在することを確認します。出力「 Found that PERL module … is available 」は、モジュールが利用可能であることを確認します。

次に、OCS Inventory ServerのREST APIを設定するように求められます。yを入力して確認し、残りの設定にはENTERを押します。

enable api

これで、「 Communication server 」またはOCS Inventory Serverのインストールが開始されます。以下はOCS Inventory Serverインストールのいくつかのスクリーンショットです。

Communication server 」Perlモジュールのインストールと設定。

configure ocs inventory server

Communication server 」の設定ディレクトリを設定します。

configure ocs inventory server

Communication server 」のインストールが完了しました。また、OCS Inventory Server用のデフォルトのApache2設定ファイルの名前を変更するように求められた場合は、yと入力して確認し、ENTERを押して続行します。

configuring ocs inventory server

次に、「ocsreports」ウェブ管理ダッシュボードを設定およびインストールするように求められます。yを入力して確認します。

次に、インストーラーは「 ocsreports 」のソースについて尋ねます。これはダウンロードされ、Composerを介してPHP依存関係がインストールされます。インストールを確認するために再度yを入力し、残りの設定にはデフォルト設定を使用するためにENTERを押します。

install ocsreports

ocsreportsのインストールが開始されます。

install ocsreports

完了すると、「 OK, Administration server installation finished 」というメッセージがターミナルに表示されます。

install sucess

これで、「 Communication server 」またはOCS Inventory Serverと「 Administration server 」またはocsreportsのインストールが完了しました。

この時点で、OCS Inventory Serverの基本的なインストールと設定が完了し、いくつかのデフォルトの設定ファイルとディレクトリが生成されました。次のステップでは、OCS Inventory Serverおよびocsreportsで使用される追加のApache2設定ファイルを有効にします。

OCS Inventory ServerのApache2設定の適用

OCS Inventory Serverとocsreportsをインストールした後、OCSインストール用に生成されたApache2設定を適用します。OCSの「setup.sh」スクリプトによって生成された追加のApache2設定は、ディレクトリ「 /etc/apache2/conf-available/ 」にあります。

OCS Inventory Serverで使用されるApache2設定を有効にするために、設定ファイルのシンボリックリンクをターゲットディレクトリ「 /etc/apache2/conf-enabled/ 」に作成します。

以下のコマンドを入力してOCS Inventory Server用のApache2設定ファイルを有効にします。

ファイル「 ocsinventory-reports.conf 」はocsreportsウェブアプリケーションを実行するために使用され、「 z-ocsinventory-server.conf 」ファイルはOCS Inventory Serverによって使用され、「 zz-ocsinventory-restapi.conf 」ファイルはOCS Server REST APIによって使用されます。

sudo ln -s /etc/apache2/conf-available/ocsinventory-reports.conf /etc/apache2/conf-enabled/ocsinventory-reports.conf  
sudo ln -s /etc/apache2/conf-available/z-ocsinventory-server.conf /etc/apache2/conf-enabled/z-ocsinventory-server.conf  
sudo ln -s /etc/apache2/conf-available/zz-ocsinventory-restapi.conf /etc/apache2/conf-enabled/zz-ocsinventory-restapi.conf

次に、以下のコマンドを入力して「 www-data 」ユーザーとグループがocsreportsデータディレクトリ「 /var/lib/ocsinventory-reports 」に書き込むことができることを確認します。次に、以下の「 apachectl 」コマンドを使用してApache2設定を確認します。

sudo chown -R www-data:www-data /var/lib/ocsinventory-reports  
sudo apachectl configtest

出力「 Syntax OK 」は、正しいApache2設定ファイルがあることを確認します。

以下のsystemctlコマンドユーティリティを入力してApache2サービスを再起動し、変更を適用します。これで、OCS Inventory ServerはサーバーのIPアドレスを介してアクセスできるようになります。

sudo systemctl restart apache2

OCS Inventory ServerとOCSレポートのインストール

ウェブブラウザを開き、サーバーのIPアドレスの後に「 ocsreports 」ウェブ管理ダッシュボードのパス(例:http://192.168.5.20/ocsreports/install.php)を訪問します。

OCS Inventory Serverインストールのデータベースの詳細を入力し、「 Send 」をクリックして確認します。

install ocs inventory server

インストールが完了すると、次のようなページが表示されます - ページの下部には「 Installation finished.. 」というメッセージが表示されます。また、ocsreportsウェブ管理ダッシュボードへのリンクも表示されます。

リンクをクリックしてocsreportsログインページにアクセスします。

installation finished

OCSログインページで、デフォルトの管理ユーザーとパスワード「 admin 」を入力します。次に、「 Send 」をクリックして続行します。

ocs login

成功すると、OCS Inventory Serverのグラフィカル管理用のocsreports管理ダッシュボードが表示されます。

ocs dashboard

ocsreportsダッシュボードの上部には「 SECURITY ALERT 」メッセージが表示されます。これは、インストーラスクリプト「 /usr/share/ocsinventory-reports/ocsreports/install.php 」を削除し、デフォルトの管理ユーザーとパスワードを変更するように指示します。

OCS Inventory Serverターミナルに戻り、以下のコマンドを実行してインストーラスクリプト「 install.php 」を削除します。

rm -f /usr/share/ocsinventory-reports/ocsreports/install.php

次に、ocsreportsダッシュボードに戻り、右上の設定メニューをクリックし、「 My account 」メニューを選択します。

デフォルトの管理ユーザー、メール、およびパスワードを変更します。次に、「 OK 」をクリックして確認します。

change admin password

インストーラスクリプト「 install.php 」が削除され、デフォルトの管理ユーザーとパスワードが変更されると、ocsreportsウェブ管理ダッシュボードから「 SECURITY ALERT 」メッセージが消えます。

installation finished

結論

このガイドでは、Ubuntu 22.04サーバーにOCS Inventory Serverをインストールおよび設定しました。OCS Inventory Serverをソースコードから手動でインストールし、OCS Inventory Serverおよびocsreportsウェブアプリケーションを実行するために使用されるLAMPスタック(Apache2、MariaDB、およびPHP)を設定しました。

さらに、OCS Inventory Serverのウェブコンソールおよび管理ダッシュボードとしてocsreportsもインストールしました。LAMPスタックでOCSレポートウェブアプリケーションのインストールが完了しました。

これを考慮に入れると、Linuxディストリビューション、Windows、macOS、BSDなどの複数のオペレーティングシステムにインストールできるOCSエージェントを介してデバイスを簡単に管理できます。また、Apacheウェブサーバーで安全なHTTPSを実装することでOCS Inventory Serverを保護することもできます。詳細については、OCS Inventory Serverの公式ドキュメントを参照してください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。