Debian システムのビルド日付をどのように取得しますか?

Debian システムのビルド日付をどのように取得しますか?

ここにはかなり古いDebianがインストールされたpowerpcボックスがあります。

Lennyデリバティブとして識別でき/etc/issueますDebian GNU/Linux 5.0。一部のベンダー固有のパッケージがあります。

システムのどの部分を抽出に使用できますか?立てる配布日?インストール日には興味がありません。

答え1

Debianポリシーを使用してコンパイルされたすべてのパッケージには。変更ログの最新エントリは、パッケージが完了した時点、つまりパッケージソースを最後に変更した後にパッケージがビルドされる前である必要があります。/usr/share/doc/PACKAGE-NAME/changelog.Debianchangelog.gz

これコンパイル出力のタイムスタンプ(ネイティブ実行可能ファイル、ライブラリ、バイトコードなど)がビルド時間になります。これは、システムのビルド日付が存在する限りです。もちろん、すべてのパッケージは異なります。 Debian システムは一度に完成するものではありません。 (理論的には可能ですが、時間がかかります。)

にいくつかの.debファイルがある場合は、/var/cache/apt/archives変更時間に基づいてビルド時間の上限が指定されます。

ディレクトリの変更時間とinode変更時間(ls -lc)は、関連するファイルの寿命の下限を提供します。ログは/var/log/dpkg.log*およびで利用できます/var/log/apt。 (配布版が古すぎると、そうではないかもしれません。lennyにすでに存在していたかどうかは覚えていません。)しかし、これはすべてインストール中またはインストール後です。

コメントで法的調査に言及しました。これらのタイムスタンプはすべて偽造が簡単であるため、システム管理者がそれを操作したと疑われない場合にのみ便利です。

答え2

適性などインストールされているソフトウェアのビルド日を確認してください。ソフトウェアにセキュリティアップグレードがある場合は機能しませんが、コンパイル時間を報告するパッケージの初期コンパイル時間を見ると、ある程度のアイデアを得ることができます。私のシステムはDebian 7.6です。これは私のコンピュータのいくつかの例です。

資格

faheem@orwell:~$ aptitude --version
aptitude 0.6.8.2 compiled at Nov  7 2012 07:08:03
Compiler: g++ 4.7.2
Compiled against:
  apt version 4.12.0
  NCurses version 5.9
  libsigc++ version: 2.2.10
  Ept support enabled.
  Gtk+ support disabled.
  Qt support disabled.

Current library versions:
  NCurses version: ncurses 5.9.20110404
  cwidget version: 0.5.16
  Apt version: 4.12.0

適切

faheem@orwell:~$ apt-get --version
apt 0.9.7.9 for amd64 compiled on Oct  8 2014 10:25:29
Supported modules:
*Ver: Standard .deb
*Pkg:  Debian dpkg interface (Priority 30)
 Pkg:  Debian APT solver interface (Priority -1000)
 S.L: 'deb' Standard Debian binary tree
 S.L: 'deb-src' Standard Debian source tree
 Idx: Debian Source Index
 Idx: Debian Package Index
 Idx: Debian Translation Index
 Idx: Debian dpkg status file
 Idx: EDSP scenario file

セルン

faheem@orwell:~$ slrn --version
slrn 1.0.1
S-Lang Library Version: 2.2.4
Compiled on: Feb 10 2014 20:58:07
Operating System: Linux

COMPILE TIME OPTIONS:
 Backends: +nntp +slrnpull +spool
 External programs / libs: +canlock +inews +ssl +uudeview +iconv
 Features: +decoding +emphasized_text +end_of_thread +fake_refs +gen_msgid
    -grouplens -msgid_cache +piping +rnlock +spoilers -strict_from
 Using 64 bit integers for article numbers.

DEFAULTS:
 Default server object:     nntp
 Default posting mechanism: nntp

SSH

faheem@orwell:~$ ssh -v
OpenSSH_6.0p1 Debian-4+deb7u2, OpenSSL 1.0.1e 11 Feb 2013

ウィム

faheem@orwell:~$ vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Feb 10 2013 02:28:47)

OpenSSL

faheem@orwell:~$ openssl version
OpenSSL 1.0.1e 11 Feb 2013

ナノメートル

faheem@orwell:~$ nano --version
GNU nano version 2.2.6 (compiled 21:40:01, Jun 22 2012)

答え3

~からhttps://lists.debian.org/debian-user/2013/05/msg01045.html

~# uname -a Linux wheezy 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64 GNU/Linux

~# ls -l /boot/vm* ​​-rw-r--r-- 1 ルートルート 2833376

uname出力には日付がなくなり、カーネルイメージファイルのタイムスタンプと比較できます。

unameが報告したDebianパッケージのバージョン(上記の例では3.2.41-2)を現在インストールされているバージョン(例:dpkg -lを使用)と比較する必要があります。ただし、/ proc / versionはまだビルド時間を報告します。

私には説得力がないようです。管理者として、私はインストールされたカーネルパッケージを構築するためにどのソースが使用されるのか気にしません。

カーネルを構築するために使用されたソースパッケージはカーネルを一意に識別するので、ソースパッケージのバージョンにのみ興味を持たなければなりませんか?

===

私の意見では、centos / rhelがunameでビルド日を表示しないと良くないと思います。

関連情報