在不知道 EC2 上的 root 密码的情况下,如何以 root 用户身份运行 Doccano?

在不知道 EC2 上的 root 密码的情况下,如何以 root 用户身份运行 Doccano?

我用 多卡诺 在运行 Ubuntu 22.04 的 AWS EC2 实例上。

为了运行 Doccano,我使用doccano webserver --port 8000.

但现在我想让 Doccano 在端口 80 上提供其网页服务。所以,我必须以 root 身份运行 Doccano。

在不知道 EC2 上的 root 密码的情况下,如何以 root 用户身份运行 doccano?


我试过

(doccanopy310) ubuntu@ip-172-30-33-321:~$ sudo doccano webserver --port 80
sudo: doccano: command not found

(doccanopy310) ubuntu@ip-172-30-33-321:~$ su
Password:

我不知道此 EC2 实例中的 root 密码。我没有任何 AWS 管理员权限:我只是获得了 IP + .pem 文件以通过 SSH 连接到它。


重现此问题的另一种方法是http.server在 Python 3(或SimpleHTTPServerPython 2)中使用:

python -m http.server 80 

将产生:

(doccanopy310) ubuntu@ip-172-30-33-321:~$ sudo python -m http.server 80
sudo: python: command not found

答案1

红迪网用户a2吉普 指给我正确答案:需要指出doccano或 的完整路径http.server。可以使用该命令which来查找完整路径。

示例doccano

(doccanopy310) ubuntu@ip-172-30-33-321:~$ which doccano
/home/ubuntu/anaconda3/envs/doccanopy310/bin/doccano
(doccanopy310) ubuntu@ip-172-30-33-321:~$ sudo /home/ubuntu/anaconda3/envs/doccanopy310/bin/doccano webserver --port 80
[2023-08-12 07:07:32 +0000] [47600] [INFO] [django_drf_filepond.apps::ready::61] App init: no django-storages backend configured, using default (local) storage backend if set, otherwise you need to manage file storage independently of this app.
[2023-08-12 07:07:32 +0000] [47600] [WARNING] [django_drf_filepond.apps::ready::69] Filepond app init: Creating file store directory </root/doccano/media>...
Starting server with port 80.
[2023-08-12 07:07:32 +0000] [47600] [INFO] Starting gunicorn 20.1.0
[2023-08-12 07:07:32 +0000] [47600] [INFO] Listening at: http://0.0.0.0:80 (47600)
[2023-08-12 07:07:32 +0000] [47600] [INFO] Using worker: sync
[2023-08-12 07:07:32 +0000] [47601] [INFO] Booting worker with pid: 47601
[2023-08-12 07:07:32 +0000] [47602] [INFO] Booting worker with pid: 47602
[2023-08-12 07:07:33 +0000] [47603] [INFO] Booting worker with pid: 47603
[2023-08-12 07:07:33 +0000] [47604] [INFO] Booting worker with pid: 47604
[2023-08-12 07:07:33 +0000] [47605] [INFO] Booting worker with pid: 47605

请注意,如果运行sudo /home/ubuntu/anaconda3/envs/doccanopy310/bin/doccano webserver --port 80,则需要运行以下命令:

sudo /home/ubuntu/anaconda3/envs/doccanopy310/bin/doccano init
sudo /home/ubuntu/anaconda3/envs/doccanopy310/bin/doccano createuser --username admin --password pass
sudo /home/ubuntu/anaconda3/envs/doccanopy310/bin/doccano webserver --port 80

在另一个终端中:

sudo /home/ubuntu/anaconda3/envs/doccanopy310/bin/doccano task

否则无法与admin用户建立联系。


示例http.server

(doccanopy310) ubuntu@ip-172-30-33-321:~$ which python
/home/ubuntu/anaconda3/envs/doccanopy310/bin/python
(doccanopy310) ubuntu@ip-172-30-33-321:~$ sudo /home/ubuntu/anaconda3/envs/doccanopy310/bin/python -m http.server 80
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...
91.12.100.231 - - [12/Aug/2023 06:52:21] "GET / HTTP/1.1" 200 -

相关内容