時々、私たちが取り組んでいるテストサーバーの1つ(主にDebian)で動作するソフトウェアをアップデートする必要があります。ほぼ毎回私を混乱させるのは、ソフトウェアをインストールする方法が1つしかないということです。今日はCoffeescriptをアップグレードする必要があります。最初にどのようにインストールしたのかわからないので、どのように更新するのが最善かわかりません。
aptを使用して手動でgithubプロジェクトを複製して直接ビルドするか、Nodejsパッケージマネージャnpmを介してインストールできます。問題を解決し、すべてのコーヒースクリプト関連のファイルとディレクトリを手動で削除してから、新規インストールに成功しました。しかし、nodejs 0.6と0.4をインストールする必要があるCoffeescriptコマンドを使用したいと思います。
だから、ゲームを再起動してみてください!
Nodejsは手動でインストールされますか?それともパッケージとして?それとも神はそこに置かれましたか?わかりません。
それで、私は最初にソフトウェアがどのようにインストールされたのかわからない状況で、インストールされたソフトウェアを更新するためのいくつかの簡単な戦略があるかどうか私に尋ねました。ここで最良のアプローチは何ですか?
答え1
ほとんどの場合に対処できる簡単な規則に従う必要があります。
パッケージマネージャを介さない限り
/bin
、、、または下にファイルを入れないでください/lib
。/sbin
/usr
/usr/local
これにより、ファイルがパッケージマネージャによって管理されている領域にある場合、そのファイルがパッケージから来たことがわかります。それ以外の場合は手動でインストールしたものです。
可能であれば、ディストリビューションが提供するパッケージに固執する必要があります。ディストリビューションで提供されていない機能の必要性が文書化されている場合にのみ、サードパーティのパッケージをインストールしてください。 「最新バージョンが欲しい」は有効な理由ではありません。サードパーティのパッケージをインストールする場合は、パッケージを受け取った場所を記録し、パッケージ(.rpm
または.deb
ファイル)をどこかに保管してください。任意のネットワークダウンロードにaptまたはyumソースを優先的に使用してください。
stow または xstow の使用手動でインストールしたプログラムの場合。
使用マネージャーをお待ちください到着/etc
バージョン管理の維持。変化があるたびに約束をして意味のあるメッセージを送ってください。
汚れたやり方で仕事をしましたが、ソフトウェアがどこから来たのか忘れてしまったことがある場合:
- 正しい場所にソフトウェアのクリーンバージョンをインストールするには、上記の提案に従ってください。
- 新しいインストールが意図した目的に適しているかどうかをテストします。
- 新しいインストールを使用するようにサービスを切り替えます。
- 可能であれば、以前のインストールをクリーンアップします。
答え2
puppet
Linuxにインストールされているソフトウェアを追跡するために使用することをお勧めします。
Puppetは、集中型の仕様に従って管理タスク(ユーザーの追加、パッケージのインストール、サーバー構成の更新など)を実行する* nixシステム用の自動管理エンジンです。
あなたは参照することができます協会
答え3
apt-get を使用してパッケージをインストールする場合、apt-get はすべての依存関係を解決するため、すべての依存パッケージが自動的にインストールされます。
私の場合、パッケージがUbuntuリポジトリにある限り、apt-getを使用してコマンドラインからすべてのパッケージをインストールしてみました。リポジトリにない場合は、ユーティリティのインストールマニュアルを読み、ユーティリティがMakefileを使用するのか、それとも別のものを使用しているのかに応じてインストールする必要があります。