私の Red Hat 5.3 Linux マシンには NTP がインストールされていません (何らかの理由でインストールできません)。
ただし、別の Linux マシンからバイナリ /usr/sbin/ntpdate を自分のマシンにコピーすることはできます。
ntpdateファイルを取得してLinuxマシンの/tmpに置くだけで、実行できますか?
/tmp/ntpdate -u 109.23.4.5
日付を更新するにはどうすればよいですか?
109.23.4.5 は私の Linux マシンになります。
答え1
必要に応じて、コマンドを使用してサーバー上で時間を手動で設定できますdate
。また、Web または yum 経由で ntp RPM パッケージをダウンロードすることもできます。この場合、バイナリをコピーするのは少々不器用なハックです。良い方法ではありません。
しかし、サーバーにntpパッケージをインストールできない理由を説明していません。これがここでの他の質問と一致しています、変更する権限が与えられていません。その場合、これは実際にはシステム管理者の問題ではありません。
答え2
通常、バイナリ ファイルをコピーすることは、それがポータブルでスタンドアロンのバイナリでない限り、良い考えではありません。バイナリは通常、Linux の共有オブジェクトや Windows の dll など、他のいくつかのバイナリ/ライブラリが利用可能であることに依存しています。
また、プラットフォームの違いにより、同じバイナリを実行できない場合もあります。
とにかく、バイナリをコピーして、動作するかどうか確認してみてください。おそらく、'/tmp' にコピーするよりも、ホーム ディレクトリにコピーする方がよいでしょう。セキュリティ保護されたシステムによっては、/tmp パーティションからのファイルの実行が禁止されている場合があります。
答え3
ntpdate (および関連ツール、rc スクリプトなど) をインストールできない理由は何ですか? 何らかの回避策があるかもしれません。
バイナリを/tmp
ファイルシステムにコピーできる場合、システムを起動するたびに削除される可能性があります。簡単なコードを書くことができます。rc スクリプト、ntpdate
バイナリをコピーして/tmp
それを実行します。しかし、それは本当に厄介なようです。
答え4
lddを使用してバイナリの依存関係を確認できます。
ldd /usr/sbin/ntpdate
linux-vdso.so.1 => (0x00007fff1aed8000)
libcap.so.1 => /lib64/libcap.so.1 (0x00002acf97303000)
libc.so.6 => /lib64/libc.so.6 (0x00002acf97507000)
/lib64/ld-linux-x86-64.so.2 (0x00002acf970e5000)
したがって、必要なライブラリがあれば動作するはずです。もちろん、ライブラリがマシン上に存在しない場合は、別のマシンからコピーすることもできます (ただし、おそらく存在するでしょう)。
次のようにdateコマンドを使用する方がはるかに簡単です。
sudo date 111814282011.00
日付は指定された時間 2011年11月18日 14:22.00 に設定されます。