??спользование пакетов в убунту
Скрипт сортирует установленные пакеты по дате последнего использования.
Для мдер и модулей информация неверная – когда загрузчик ядро читает – он не изменяет дату доступа, потому что фс ещё не примонтирована для записи.
За сегодня я использовал файлы из 390 пакетов, вчера – ещё 136, позавчера – ещё 84.
С последней перезагрузки – 916 пакетов.
За две первых недели этого месяца – 1044 пакета.
С начала года – 1364 пакета.
Всего установлено 2335 пакетов.
Как получиться размер пакетов?
Под катом исходный код.
clearstatcache();
set_time_limit(0);
$pkglist=shell_exec('dpkg -l | awk \'{print $2}\'');
$pkglist=explode("\n",$pkglist);
$a=array();
foreach ($pkglist as $pkg)
{
echo("\n");
$p=trim($pkg);
if(!empty($p))
{
$t=0;
$flist=shell_exec('dpkg -L '.escapeshellarg($p));
$flist=explode("\n",$flist);
foreach ($flist as $f)
{
echo('.');
if(file_exists(trim($f)) and filetype(trim($f))=='file')
{
$t1=fileatime(trim($f));
if($t1>$t) { $t=$t1; }
}
}
$a[$p]=$t;
} // if(!empty($p))
} // foreach pkglist
arsort($a);
reset($a);
while (list($key, $val) = each($a))
{
echo(date('Y/m/d H:i:s',$val)."\t $key \n");
}
?>