summaryrefslogtreecommitdiff
path: root/local/bin/usbumount
diff options
context:
space:
mode:
authorcoasteen <coasteen@proton.me>2026-07-09 10:42:28 +0330
committercoasteen <coasteen@proton.me>2026-07-09 10:42:28 +0330
commit8cbadb61604667b407b53ee1258433994fa4765a (patch)
tree97765fb29418fd6278fcb4cbb9760893afaf7a58 /local/bin/usbumount
Diffstat (limited to 'local/bin/usbumount')
-rwxr-xr-xlocal/bin/usbumount31
1 files changed, 31 insertions, 0 deletions
diff --git a/local/bin/usbumount b/local/bin/usbumount
new file mode 100755
index 0000000..ffe68bc
--- /dev/null
+++ b/local/bin/usbumount
@@ -0,0 +1,31 @@
+#!/usr/bin/env python3
+
+import os
+import subprocess
+import sys
+
+RED = "\033[0;31m"
+RESET = "\033[0m"
+
+def run(cmd, fail_msg):
+ try:
+ subprocess.run(cmd, check=True)
+ except subprocess.CalledProcessError:
+ print(f"{RED}[!] {fail_msg}{RESET}")
+ sys.exit(1)
+
+def main():
+ if os.geteuid() != 0:
+ print(f"{RED}[!] Superuser access is required{RESET}")
+ sys.exit(1)
+
+ print(f"{RED}[*] Unmounting /mnt/usb...{RESET}")
+ run(["umount", "/mnt/usb"], "Failed to unmount /mnt/usb")
+
+ print(f"{RED}[*] Closing encrypted device...{RESET}")
+ run(["cryptsetup", "close", "sda1_crypt"], "Failed to close mapper device")
+
+ print(f"{RED}[*] Unmounted and closed successfully!{RESET}")
+
+if __name__ == "__main__":
+ main()