O que tenho aqui é um dispositivo powerpc com um Debian bastante antigo instalado nele.
É identificável como derivado de Lenny: /etc/issue
menções Debian GNU/Linux 5.0
. Existem alguns pacotes específicos do fornecedor.
Quais cantos do sistema eu poderia usar para extrair oconstruirdata da distribuição? Não estou interessado na data de instalação.
Responder1
Cada pacote que é compilado com a política Debian contém um arquivo changelog em formato . O arquivo pode ser chamado se o pacote for compilado a partir de uma fonte Debian nativa. A última entrada no changelog deve ser a hora em que o pacote foi finalizado, ou seja, após a última alteração na fonte do pacote e antes da hora em que o pacote foi compilado./usr/share/doc/PACKAGE-NAME/changelog.Debian
changelog.gz
Ocarimbo de data/hora nas saídas de compilação(executáveis nativos, bibliotecas, bytecode, etc.) será o momento em que foram construídos. Na medida em que existe a data de construção de um sistema, é isso. É claro que é diferente para cada pacote — um sistema Debian não é construído de uma só vez. (Bem, seria teoricamente possível, mas levaria muito tempo.)
Se alguns .deb
arquivos estiverem presentes no /var/cache/apt/archives
, o tempo de modificação dará um limite superior ao tempo de construção.
O tempo de modificação dos diretórios e os tempos de mudança de inode ( ls -lc
) fornecem um limite inferior para a idade dos arquivos envolvidos. Os logs podem estar disponíveis em /var/log/dpkg.log*
e /var/log/apt
. (Talvez não, se a distribuição for muito antiga, não me lembro se já existiam no lenny.) Mas tudo isto é durante a instalação ou pós-instalação.
Em um comentário, você menciona uma investigação legal. Todos esses carimbos de data e hora podem ser facilmente falsificados, portanto, só serão úteis se o administrador do sistema não for suspeito de adulterá-los.
Responder2
Verifique a data de compilação do software instalado, por exemplo, aptitude. Isso não funcionará se o software tiver uma atualização de segurança, mas caso contrário, o tempo de compilação da lista inicial de vários pacotes que relatam seus tempos de compilação lhe daria uma idéia. Meu sistema é Debian 7.6 (chiado). Aqui estão alguns exemplos da minha máquina.
aptidão
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
apt-get
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
slrn
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
vim
faheem@orwell:~$ vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Feb 10 2013 02:28:47)
abressl
faheem@orwell:~$ openssl version
OpenSSL 1.0.1e 11 Feb 2013
nano
faheem@orwell:~$ nano --version
GNU nano version 2.2.6 (compiled 21:40:01, Jun 22 2012)
Responder3
dehttps://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 root root 2833376 15 de maio 23:58 /boot/vmlinuz-3.2.0-4-amd64 ~#
Não há mais data na saída do uname, que eu poderia comparar com o carimbo de data/hora do arquivo de imagem do kernel.
Agora você deve comparar a versão do pacote Debian relatada por uname (3.2.41-2 no exemplo acima) com aquela atualmente instalada (por exemplo, usando dpkg -l). /proc/version ainda informa o tempo de construção para mim.
não parece convincente para mim. Como administrador, eu não poderia me importar menos com qual fonte foi usada para construir o pacote do kernel instalado.
Como o pacote fonte usado para construir o kernel identifica exclusivamente o kernel, você deve se preocupar apenas com a versão do pacote fonte.
===
seria uma droga se centos/rhel acabasse com a data de construção em uname...