8.2.34 | Linux | www-data (uid:33)
👁 View: aa-remove-unknown
📁 //snap/core18/2999/usr/sbin/aa-remove-unknown
#!/bin/sh # ---------------------------------------------------------------------- # Copyright (c) 2017 Canonical Ltd. (All rights reserved) # # This program is free software; you can redistribute it and/or # modify it under the terms of version 2 of the GNU General Public # License published by the Free Software Foundation. # # 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. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. # ---------------------------------------------------------------------- APPARMOR_FUNCTIONS=/lib/apparmor/functions APPARMORFS=/sys/kernel/security/apparmor PROFILES_IFACE="${APPARMORFS}/profiles" REMOVE="${APPARMORFS}/.remove" DRY_RUN=0 . $APPARMOR_FUNCTIONS usage() { local progname="$1" local rc="$2" local msg="usage: ${progname} [options] Remove profiles unknown to the system Options: -h, --help Show this help message and exit -n Dry run; don't remove profiles" if [ "$rc" -ne 0 ] ; then echo "$msg" 1>&2 else echo "$msg" fi exit "$rc" } if [ "$#" -gt 1 ] ; then usage "$0" 1 elif [ "$#" -eq 1 ] ; then if [ "$1" = "-h" -o "$1" = "--help" ] ; then usage "$0" 0 elif [ "$1" = "-n" ] ; then DRY_RUN=1 else usage "$0" 1 fi fi # We can't use a -r test here because while $PROFILES_IFACE is world-readable, # apparmorfs may still return EACCES from open() # # We have to do this check because error checking awk's getline() below is # tricky and, as is, results in an infinite loop when apparmorfs returns an # error from open(). if ! IFS= read line < "$PROFILES_IFACE" ; then echo "ERROR: Unable to read apparmorfs profiles file" 1>&2 exit 1 elif [ ! -w "$REMOVE" ] ; then echo "ERROR: Unable to write to apparmorfs remove file" 1>&2 exit 1 fi # Clean out running profiles not associated with the current profile # set, excluding the libvirt dynamically generated profiles. aa_configured=$(mktemp -t aa-XXXXXX) configured_profile_names > "$aa_configured" if [ "$?" -ne 0 ] ; then echo "ERROR: Unable to enumerate the known profiles" 1>&2 rm -f "$aa_configured" "$aa_loaded" exit 1 fi aa_loaded=$(mktemp -t aa-XXXXXX) running_profile_names > "$aa_loaded" || true if [ "$?" -ne 0 ] ; then echo "ERROR: Unable to enumerate the running profiles" 1>&2 rm -f "$aa_configured" "$aa_loaded" exit 1 fi LC_COLLATE=C comm -2 -3 "$aa_loaded" "$aa_configured" | while read profile ; do if [ "$DRY_RUN" -ne 0 ]; then echo "Would remove '${profile}'" else echo "Removing '${profile}'" unload_profile "$profile" fi done ret="$?" rm -f "$aa_configured" "$aa_loaded" # will not catch all errors, but still better than nothing exit $ret
← Back
💻 Terminal
📤 Upload
📂
Click or Drag & Drop
📁 //snap/core18/2999/usr/sbin
NameSizePermModifiedActions
aa-remove-unknown2.9K07552023-06-13 14:19👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
aa-status8.4K07552023-06-13 14:19👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
add-shell860B07552017-12-30 18:15👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
addgroup36.4K07552017-12-05 16:57👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
adduser36.4K07552017-12-05 16:57👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
apparmor_status8.4K07552023-06-13 14:19👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
arpd54K07552021-01-26 13:33👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
chgpasswd57.8K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
chmem42.1K07552020-09-16 18:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
chpasswd53.9K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
chroot38.2K07552018-01-18 09:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
cpgr56K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
cppw56K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
delgroup16.1K07552017-12-05 16:57👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
deluser16.1K07552017-12-05 16:57👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
e2freefrag14.1K07552022-06-02 14:37👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
e4crypt22.1K07552022-06-02 14:37👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
e4defrag26K07552022-06-02 14:37👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
faillock14K07552024-03-19 15:24👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
fdformat30.1K07552020-09-16 18:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
filefrag14K07552022-06-02 14:37👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
genl58.1K07552021-01-26 13:33👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
groupadd61.9K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
groupdel70.4K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
groupmems57.9K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
groupmod68.2K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
grpck53.8K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
grpconv49.7K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
grpunconv49.7K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
iconvconfig30.3K07552026-01-30 08:03👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
invoke-rc.d15.7K07552017-10-25 15:38👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
ip6tables-apply6.9K07552023-05-09 18:42👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
iptables-apply6.9K07552023-05-09 18:42👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
ldattach30.1K07552020-09-16 18:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
mklost+found10K07552022-06-02 14:37👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
netplan798B07552021-09-07 15:19👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
newusers82.4K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
nfnl_osf14K07552023-05-09 18:42👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
nologin6K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
pam-auth-update19.4K07552020-07-21 23:40👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
pam_getenv2.8K07552018-08-23 23:37👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
pam_timestamp_check10K07552024-03-19 15:24👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
pwck49.8K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
pwconv45.7K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
pwunconv45.7K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
readprofile18.1K07552020-09-16 18:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
remove-shell904B07552017-12-30 18:15👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
rfkill46.1K07552020-09-16 18:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
rmt58.4K07552023-12-05 05:18👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
rmt-tar58.4K07552023-12-05 05:18👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
rtcwake42.1K07552020-09-16 18:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
service9K07552017-10-25 15:38👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
sshd772.4K07552025-02-18 13:44👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
tarcat936B07552023-12-05 05:18👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
tzconfig106B07552025-04-02 12:18👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
update-ca-certificates5.3K07552024-09-25 18:06👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
update-mime8.8K07552016-07-15 12:06👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
update-passwd30.4K07552017-09-12 21:48👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
update-rc.d16.1K07552017-10-25 15:38👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
useradd123.3K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
userdel82.5K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
usermod123.1K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
vigr60.2K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
vipw60.2K07552024-02-06 12:31👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
visudo208.8K07552025-06-25 20:14👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
zic54.1K07552026-01-30 08:03👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del