我已经把我的系统搞砸了一次,所以我会更具体地问:
到目前为止,我知道的是:我有一个包含“”的命令:
java -jar /home/joe/minecraft/minecraft_server/MCpal.jar /media/joe/Chest/mc_backups 12288 server.jar "overviewer.py --rendermodes=smooth-lighting {2}/Galamor /home/joe/minecraft/Overviewer/map"我转到Preferences -> Default applications for LXSession并将行:lxterminal -e COMMAND添加到autostart部分。
这将启动一个运行我的命令的终端(在本例中,启动我的Min克拉夫特服务器管理器)。此进程中的某些内容需要sudo权限。因为我自己编写了这个程序,而且我信任Mojang,所以我只想在sudo级别运行这个命令,而不需要输入我的密码。
我尝试使用sudo visudo给我的用户在不输入密码的情况下运行它的权限。我好像搞错了合成器。
我认为应该是这样的:
joe ALL=(ALL) NOPASSWD: java -jar /home/joe/minecraft/minecraft_server/MCpal.jar /media/joe/Chest/mc_backups 12288 server.jar "overviewer.py --rendermodes=smooth-lighting {2}/Galamor /home/joe/minecraft/Overviewer/map"这里的错误在哪里?
如果你能一步一步地回答,我会很高兴的。也许我用错了行来键入它或者任何可能的东西。
发布于 2016-11-29 20:45:09
通常,在引导过程中的某个时间,您会使用服务作为特定的用户运行。
我认为“如何在登录时运行一个Min克拉夫特服务器”的理想解决方案是创建一个新用户minecraft,并确保您的HTTP (apache或nginx)能够访问overviewer生成的文件。当您运行overviewer时,您希望以minecraft用户的身份执行此操作。
下面假设/home/minecraft/minecraft-1.7/是一个目录,它包含您的Min克拉夫特服务器文件,比如world目录,并且在该目录中有minecraft_server.jar。此外,nginx还用作HTTP服务器。
您可以使用sudo useradd minecraft -m创建此用户。通过不设置密码,您将只能使用sudo su - minecraft成为此用户。
minecraft用户将有以下cron条目(crontab -e作为minecraft):
0 * * * * /usr/bin/overviewer.py --rendermodes=smooth-lighting,cave /home/minecraft/minecraft-1.7/world/ /home/minecraft/minecraft-1.7/www-overviewer/理想情况下,您可以使用upstart (/etc/systemd/system/minecraft-server.service)运行Min克拉夫特服务器:
[Unit]
Description=Minecraft Server
[Service]
WorkingDirectory=/home/minecraft/minecraft-1.7/
User=minecraft
Group=minecraft
Restart=on-failure
RestartSec=20 5
ExecStart=/usr/bin/java -Xms1536M -Xmx1536M -jar minecraft_server.jar nogui
[Install]
WantedBy=multi-user.target启用它在引导时用sudo systemctl enable minecraft-server启动,然后告诉它现在用sudo systemctl start minecraft-server启动。
使用以下...while配置NGINX:
server {
listen 8888;
client_max_body_size 50M;
server_name _ minecraft.DOMAIN.tld
charset UTF-8;
expires max;
gzip on;
gzip_buffers 16 8k;
gzip_comp_level 4;
gzip_http_version 1.0;
gzip_min_length 1280;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js;
gzip_vary on;
gzip_static on;
add_header Cache-Control "public";
location / {
root /home/minecraft/minecraft-1.7/www-overviewer;
}
}没有理由将minecraft、overviewer等作为根用户运行,应该避免。
https://askubuntu.com/questions/855081
复制相似问题