|
Server IP : 162.240.221.145 / Your IP : 216.73.216.26 Web Server : Apache System : Linux server.getmad.today 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64 User : getmadto ( 1003) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0555) : /usr/sbin/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
#! /usr/bin/python
#
# This script is meant to be run once at system startup
# It scans /sys/fs/pstore/*, reconstructs oops text(s)
# from these files, creates ABRT problem directories from them,
# then removes the files (UEFI storage is a limited resource).
#
import os
import sys
from subprocess import Popen
if __name__ == "__main__":
# need to allow setting the pstore oops storage dir
# to make this script testable
pstoredir = "/sys/fs/pstore"
dryrun = False
for arg in sys.argv:
if arg == "dryrun":
dryrun = True
continue
if arg.startswith("--pstoredir"):
pstoredir = arg.split('=')[1]
try:
os.chdir(pstoredir)
except OSError, ex:
# silently ignore if the pstore doesn't exist, because that usually
# means that we're on the system where pstore boot is not supported
sys.stderr.write("Can't chdir to {0}: {1}".format(pstoredir, ex))
sys.exit(0)
merge_status = Popen(
["-c", "abrt-merge-pstoreoops -o * | abrt-dump-oops {0}"
.format("-o" if dryrun else "-D")],
shell=True,
bufsize=-1
).wait()
if merge_status == 0:
Popen(["abrt-merge-pstoreoops -d *"], shell=True, bufsize=-1)
else:
sys.stderr.write("Failed to merge pstore oops")