~/blog/installing-deb-rpm-packages-on-a-web-hosting-server
Published on

レンタルサーバーにdeb・rpmパッケージをインストールする

2033文字4分で読めます–––
閲覧数
Authors
  • avatar
    Name
    Shou Arisaka nyapp.buzz/shou
    short bio
    Z世代の情報技術者。Next.jsで自作SNSを個人開発中。

レンタルサーバー、例えばエックスサーバーやロリポップレンタルサーバーなどでroot権限sudoコマンド・sudo apt installコマンドが使えない場合、パッケージ化されたファイル、ubuntu系であれば.debファイル、centos系であれば.rpmパッケージを使用し、パッケージをマニュアルインストールすることができます。

.debファイルや.rpmファイルなどは通常、Githubのリリースページなどに置かれている場合が多いです。Windowsでいう.exeや.msiなどのインストール系実行ファイルのようなものと捉えていいでしょう。 aptなどのパッケージ管理システムに登録されているパッケージはsudoを使わずにインストールすることは難しいので、そのようなパッケージファイルを直接使用してインストールを行います。

alienでパッケージ変換を行う。ダウンロードしたdebパッケージをrpmパッケージへ変換する

例として、以下にオープンソースのファイル転送プログラムである"croc"をCentOSのサーバーであるレンタルサーバー、エックスサーバーへインストールするステップを示します。

以下より、リリースされている実行ファイルやソースファイルを確認できます。.debや.rpmファイルを探します。

Release v8.6.7 · schollz/croc

CentOSのための.rpmファイルを探します。ここにはリストされていないようです。 "croc_8.6.7_Linux-64bit.deb"ファイルがubuntu系のためのパッケージファイルです。.debファイル、.rpmファイルなどのパッケージファイルは後述の"alien"というプログラムを使用することで相互変換が可能です。適当なパッケージファイルをダウンロードしましょう。

今回の場合alienを使用してパッケージファイルを変換する必要がありますので、この作業はローカルの環境で行います。その後、生成された.rpmファイルをレンタルサーバーへ転送します。 レンタルサーバーにalienがインストールできる場合、インストールされている場合などにはこのステップを踏む必要はありません。

.debファイルをwgetでダウンロードします。

wget https://github.com/schollz/croc/releases/download/v8.6.7/croc_8.6.7_Linux-64bit.deb # [Release v8.6.7 · schollz/croc](https://github.com/schollz/croc/releases/tag/v8.6.7)

パッケージファイルの相互変換を行うツールであるalienをインストールします。

sudo apt update ; sudo apt install alien -y

.debファイルを.rpmパッケージファイルへ変換して生成を行います。

sudo alien -r croc_8.6.7_Linux-64bit.deb # or alien --rpm

rpmファイルをサーバーへ転送します。 転送には、ftpやrsyncを使用すると良いでしょう。

rsyncを使ってSSH経由でリモートサーバーにフォルダやファイルを再帰的にアップロードする

(例)

rsync -e 'ssh -p 10022 -i ~/.ssh/user.key' -r "croc-8.6.7-2.x86_64.rpm" user@sv2031.xserver.jp:/home/user

転送されたrpmパッケージをroot権限なしのマニュアルでインストールします。 CentOSビルトインコマンドのrpm2cpioを利用、sudo権限無しでパッケージをインストールします。

rpm2cpio croc-8.6.7-2.x86_64.rpm | cpio -idv

なお、レンタルサーバーにcpioが入っていない場合はマニュアルでインストールすることも可能です。以下にて紹介しています。

レンタルサーバーにcpioをインストールする

パッケージのインストールを確認します。

$ type croc
croc is /usr/local/bin/croc
avatar

Shou Arisaka

情報技術者 / Z世代プログラマー / SaaSアプリやSNSを開発
今すぐ話そう!

15歳でWordPressサイトを立ち上げ、ウェブ領域に足を踏み入れる。翌年にはRuby on Railsを用いたマイクロサービス開発に着手し、現在はデジタル庁を支えたNext.jsによるHP作成やSaaS開発のプロジェクトに携わりながら、React.js・Node.js・TypeScriptによるモダンなウェブアプリの個人開発を趣味でも行う。
フロントエンドからバックエンドまで一貫したアジャイルなフルスタック開発を得意とし、ウェブマーケティングや広告デザインも必要に応じて担当、広告運用・SEO対策・データ分析まで行う低コストかつ高品質な顧客体験の提供が好評。
国内外から200万人を超える人々に支えられ、9周年を迎えるITブログ「yuipro」の開発者、デザイナーでありライター。現在ベータ段階の自作SNS「nyapp.buzz」を日本一の国産SNSとするべく奮闘中。

Created with Fabric.js 5.2.4 何かご質問がありますか?