Удалены задания из пользовательского Crontab, но он все еще работает

Обратите внимание, что ответ с использованием Archive::Tarсчитывает архив в память. Используя модуль Python tarfile, этого можно избежать. К сожалению, стримить с stdinмне пока не удалось, так как extractfileпытается искать.

#!/usr/bin/env python3
import tarfile
import sys

with tarfile.open(name=sys.argv[1], mode="r") as in_tar, \
    tarfile.open(fileobj=sys.stdout.buffer, mode="w|") as out_tar:
    for member in in_tar.getmembers():
        member.uname = member.gname = "root"
        if member.isfile():
            with in_tar.extractfile(member) as file:
                out_tar.addfile(member, file)
        else:
            out_tar.addfile(member)

Обновление:Следующая программа Go работает с потоками:

package main

import (
        "archive/tar"
        "io"
        "log"
        "os"
)

func main() {
        tr := tar.NewReader(os.Stdin)
        tw := tar.NewWriter(os.Stdout)

        for {
                hdr, err := tr.Next()
                if err == io.EOF {
                        break
                } else if err != nil {
                        log.Fatal(err)
                }

                hdr.Uname, hdr.Gname = "root", "root"
                if err := tw.WriteHeader(hdr); err != nil {
                        log.Fatal(err)
                }

                if hdr.Typeflag == tar.TypeReg {
                        if _, err := io.Copy(tw, tr); err != nil {
                                log.Fatal(err)
                        }
                }
        }

        if err := tw.Close(); err != nil {
                log.Fatal(err)
        }
}
0
22.03.2021, 12:29
2 ответа

Наконец-то ПОНЯЛ!!!!!! Наша внутренняя команда клонировала наш сервер в среду UAT, которая создала копию всех заданий / crontab и т. Д. Спасибо за всю помощь.

0
28.04.2021, 22:59

Если вы уверены, что cron его не запускает, -посмотрите нет ли зависшего процесса или, возможно, он есть у другого пользователя в cron (это нужно сделать от имени пользователя root ).

0
28.04.2021, 22:59

Теги

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