способно-зеркальный чистый сценарий ничего не удаляет

Я просто распаковал ядро, и это - то, что я делаю из него:

  • Для samples каталог, это показывает, что различные примеры людей модулей ядра могли бы хотеть разработать. Вот комментарий от kprobe_example.c:

Вот демонстрационный модуль ядра, показывающий использование kprobes для дампа отслеживания стека и выбранных регистров, когда do_fork () называют.

и от uhid_example.c:

Код может использоваться любым для любой цели и может служить начальной точкой для разработки приложений с помощью uhid.

и т.д., и т.д. В основном, каждый раз, когда они чувствовали, что предмету была нужна иллюстрация, они написали иллюстративный код и поместили его где-нибудь в эту часть дерева каталогов.

  • Для tools каталог: Это похоже на корпус дерева каталогов определенные для Linux исполняемые файлы. Объем пространства пользователя платформы GNU/Linux состоит из межплатформенных инструментов или инструментов, созданных вне Основы Linux, но иногда специалисты по обслуживанию знают там потребности быть инструментом пространства пользователя для использования в своих интересах функций, характерных для ядра Linux. Комментарии больше всего, кажется, включают слово, "простое" много, который приводит меня полагать, что это дерево каталогов является в основном пространством пользователя, эквивалентным из samples каталог. Это также, потому что не похоже, что util-linux происходит из этого (даже при том, что util-Linux действительно происходит из Основы Linux и kernel.org также).
4
18.06.2014, 18:08
1 ответ

Решение:

Измените последнюю строку на:

clean http://ubuntu.c3sl.ufpr.br/ubuntu/

Объяснение:

Проблема заключается в том, что в последней строке определяется, какой репозиторий нужно очистить. clean берет имя репозитория, в котором нужно удалить:

## Parse config

open CONFIG, "<$config_file" or die("apt-mirror: can't open config file ($config_file)");
while (<CONFIG>)
{
    ## Here we detect the line starting with "clean" and process the URL
    if ( $config_line eq "clean" )
    {
        $config_line[0] =~ s[^(\w+)://][];
        $config_line[0] =~ s[/$][];
        $config_line[0] =~ s[~][%7E]g if get_variable("_tilde");
        $clean_directory{ $config_line[0] } = 1;
        next;
    }
    die("apt-mirror: invalid line in config file ($.: $config_line ...)");
}
## we store the results in the "clean_directory" variable, now we will
## loop through all of them:
foreach ( keys %clean_directory )
{
    process_directory($_) if -d $_ && !-l $_;
}
## and proceed to take the actions:
sub process_directory
{
    my $dir       = shift;
    my $is_needed = 0;
    return 1 if $skipclean{$dir};
    opendir( my $dir_h, $dir ) or die "apt-mirror: can't opendir $dir: $!";
    foreach ( grep { !/^\.$/ && !/^\.\.$/ } readdir($dir_h) )
    {
        my $item = $dir . "/" . $_;
        $is_needed |= process_directory($item) if -d $item && !-l $item;
        $is_needed |= process_file($item)      if -f $item;
        $is_needed |= process_symlink($item)   if -l $item;
    }
    closedir $dir_h;
    push @rm_dirs, $dir unless $is_needed;
    return $is_needed;
}

Каталоги, в которых хранятся файлы, имеют форму /var/spool/apt-mirror/mirror/mirror.domain, так что, чтобы решить, какие каталоги нужно очистить, он должен совпасть с любым из этих каталогов, если в этом случае он ничего не делает.

Вот почему изменение url для соответствия остальным - это решение.

7
27.01.2020, 20:50

Теги

Похожие вопросы