107 lines
3.0 KiB
Python
107 lines
3.0 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
验证 Tkinter 版本的存储管理工具是否可以正确导入
|
|
"""
|
|
|
|
import sys
|
|
import os
|
|
|
|
def check_python_version():
|
|
"""检查 Python 版本"""
|
|
print(f"Python 版本: {sys.version}")
|
|
if sys.version_info < (3, 6):
|
|
print("错误: 需要 Python 3.6 或更高版本")
|
|
return False
|
|
return True
|
|
|
|
def check_tkinter():
|
|
"""检查 tkinter 是否可用"""
|
|
try:
|
|
import tkinter as tk
|
|
print(f"Tkinter 版本: {tk.Tcl().eval('info patch')}")
|
|
return True
|
|
except ImportError:
|
|
print("错误: 未找到 tkinter 模块")
|
|
print("请安装 tkinter:")
|
|
print(" CentOS/RHEL: sudo yum install python3-tkinter")
|
|
print(" Ubuntu/Debian: sudo apt-get install python3-tk")
|
|
return False
|
|
|
|
def check_modules():
|
|
"""检查自定义模块"""
|
|
modules_to_check = [
|
|
('logger_config_tkinter', '日志配置'),
|
|
('dialogs_tkinter', '对话框'),
|
|
('disk_operations_tkinter', '磁盘操作'),
|
|
('raid_operations_tkinter', 'RAID 操作'),
|
|
('lvm_operations_tkinter', 'LVM 操作'),
|
|
('occupation_resolver_tkinter', '设备占用解除'),
|
|
('mainwindow_tkinter', '主窗口'),
|
|
]
|
|
|
|
all_ok = True
|
|
for module_name, desc in modules_to_check:
|
|
try:
|
|
__import__(module_name)
|
|
print(f"✓ {desc}模块 ({module_name}) 加载成功")
|
|
except Exception as e:
|
|
print(f"✗ {desc}模块 ({module_name}) 加载失败: {e}")
|
|
all_ok = False
|
|
|
|
return all_ok
|
|
|
|
def check_system_modules():
|
|
"""检查系统信息模块"""
|
|
try:
|
|
from system_info import SystemInfoManager
|
|
print("✓ 系统信息模块 (system_info) 加载成功")
|
|
return True
|
|
except Exception as e:
|
|
print(f"✗ 系统信息模块 (system_info) 加载失败: {e}")
|
|
return False
|
|
|
|
def main():
|
|
"""主函数"""
|
|
print("=" * 60)
|
|
print("Linux 存储管理工具 - Tkinter 版本验证")
|
|
print("=" * 60)
|
|
print()
|
|
|
|
checks = [
|
|
("Python 版本", check_python_version),
|
|
("Tkinter 模块", check_tkinter),
|
|
("系统模块", check_system_modules),
|
|
("自定义模块", check_modules),
|
|
]
|
|
|
|
results = []
|
|
for name, check_func in checks:
|
|
print(f"\n检查 {name}...")
|
|
print("-" * 40)
|
|
result = check_func()
|
|
results.append((name, result))
|
|
|
|
print()
|
|
print("=" * 60)
|
|
print("验证结果汇总")
|
|
print("=" * 60)
|
|
|
|
all_passed = True
|
|
for name, result in results:
|
|
status = "通过" if result else "失败"
|
|
symbol = "✓" if result else "✗"
|
|
print(f"{symbol} {name}: {status}")
|
|
if not result:
|
|
all_passed = False
|
|
|
|
print()
|
|
if all_passed:
|
|
print("✓ 所有检查通过!可以运行 main_tkinter.py 启动程序。")
|
|
return 0
|
|
else:
|
|
print("✗ 部分检查失败,请根据上述提示修复问题。")
|
|
return 1
|
|
|
|
if __name__ == "__main__":
|
|
sys.exit(main())
|