问题描述
- 创建一个拥有最高权限admin的新用户
- 使用新用户登录 Cyberpnael 并转到用户部分以删除管理员用户。我收到一条错误消息,我不记得是什么了。我无法删除它。
- 然后我点击编辑并尝试将所有者更改为新用户。
我进入 SSH 并编辑 /usr/local/CyberCP/CyberCP/settings.py 以打开调试。 我收到以下错误消息:
Environment:
Request Method: GET
Request URL: https://myip:port/
Django Version: 3.1.3
Python Version: 3.6.8
Installed Applications:
['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','baseTemplate','loginSystem','packages','websiteFunctions','tuning','serverStatus','dns','ftp','userManagment','databases','mailServer','serverLogs','firewall','backup','managePHP','manageSSL','api','filemanager','manageServices','configservercsf','pluginHolder','emailPremium','emailMarketing','cloudAPI','highAvailability','s3Backups','dockerManager','containerization','CLManager','IncBackups','WebTerminal']
Installed Middleware:
['django.middleware.security.SecurityMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.locale.LocaleMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware','CyberCP.secMiddleware.secMiddleware']
Traceback (most recent call last):
File "/usr/local/CyberCP/lib/python3.6/site-packages/django/core/handlers/exception.py",line 47,in inner
response = get_response(request)
File "/usr/local/CyberCP/lib/python3.6/site-packages/django/core/handlers/base.py",line 179,in _get_response
response = wrapped_callback(request,*callback_args,**callback_kwargs)
File "/usr/local/CyberCP/lib/python3.6/site-packages/django/utils/decorators.py",line 130,in _wrapped_view
response = view_func(request,*args,**kwargs)
File "/usr/local/CyberCP/loginSystem/views.py",line 150,in loadLoginPage
currentACL = ACLManager.loadedACL(userID)
File "/usr/local/CyberCP/plogical/acl.py",line 102,in loadedACL
admin = Administrator.objects.get(pk=val)
File "/usr/local/CyberCP/lib/python3.6/site-packages/django/db/models/manager.py",line 85,in manager_method
return getattr(self.get_queryset(),name)(*args,**kwargs)
File "/usr/local/CyberCP/lib/python3.6/site-packages/django/db/models/query.py",line 431,in get
self.model._Meta.object_name
Exception Type: DoesNotExist at /
Exception Value: Administrator matching query does not exist.
有人可以指导我如何解决这个问题吗? 如有任何反馈,我将不胜感激。
PS:我使用谷歌翻译,所以可能有点混乱。对不起
解决方法
我希望你知道你可以为你的项目创建一个超级用户。超级用户拥有管理员拥有的所有权限。如果您不知道如何创建超级用户,请看这里:
-
在你的虚拟环境中,你需要浏览到项目 目录并运行
python manage.py createsuperuser
。然后它会 询问您要分配给该用户的用户名。如果 您不提供名称并按回车键,它会将用户命名为 您机器上的默认用户名。 -
然后它会询问电子邮件地址。可以通过点击跳过 无需任何输入即可进入。
-
最后它要求为用户输入密码,即使您的 密码与预定义条件不匹配,您可以按 Y/y 并继续。
我希望这会有所帮助。如果没有,请让我详细了解您的问题。
,我可以按照步骤重现该问题,这是您在删除管理员用户时看到的错误。
要解决此问题,请在控制台中尝试以下命令并将 securepassword
替换为您自己的密码。
1.从命令行创建管理员用户
cyberpanel createUser --firstName Cyber --lastName Panel --email email@cyberpanel.net --userName admin --password securepassword --websitesLimit 0 --selectedACL admin --securityLevel HIGH
2.再次重置管理员用户密码
/usr/local/CyberPanel/bin/python /usr/local/CyberCP/plogical/adminPass.py --password securepassword
3.重启服务
systemctl restart lscpd