[INIT] Init comit
This commit is contained in:
commit
12c0563e36
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
venv
|
||||
43
main.py
Normal file
43
main.py
Normal file
@ -0,0 +1,43 @@
|
||||
import os
|
||||
import platform
|
||||
from typing import List
|
||||
|
||||
trusted_disk = {
|
||||
"model": "",
|
||||
"serial": ""
|
||||
}
|
||||
|
||||
def mount(disk: Disk):
|
||||
plist = disk.get_partition_list() # получаем все разделы на диске
|
||||
for item in plist:
|
||||
if item.get_fs_uuid() != "": # проверяем что раздел имеет uuid, если нет, то не монтируем его, так на нем нет файловой системы
|
||||
os.mkdir(f"/mnt/{item.get_fs_uuid()}", mode=777) # создаем папку /mnt/uuid, так монтирует линукс, если не задан явный путь монтирования, тут надо придумать, как получить кто будет владельцем папки, пока разрешаем доступ всем
|
||||
print(f"mount {item.get_path()} /mnt/{item.get_fs_uuid()}") # монтируем раздел в созданную папку
|
||||
|
||||
|
||||
|
||||
|
||||
def unmount(disk: Disk):
|
||||
plist = disk.get_partition_list()
|
||||
for item in plist:
|
||||
if item.get_fs_uuid() != "" and item.get_fs_mounting_point() != "": # проверяем, что есть фс и она смонтирована куда-то
|
||||
print(f"umount {item.get_path()}") # размонтируем
|
||||
|
||||
|
||||
def main():
|
||||
di = DiskInfo()
|
||||
disks: List[Disk] = di.get_disk_list(sorting=True)
|
||||
for disk in disks:
|
||||
if disk.get_model() == trusted_disk["model"] and disk.get_serial_number() == trusted_disk["serial"]: # тут проверки что диск доверенный чисто для примера
|
||||
mount(disk)
|
||||
else:
|
||||
unmount(disk)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
if platform.system() == "Linux":
|
||||
from diskinfo import DiskInfo, Disk
|
||||
main()
|
||||
else:
|
||||
print("This script can be run only on Linux system!")
|
||||
Loading…
x
Reference in New Issue
Block a user