【问题标题】:Raspberry Pi using a python script to launch minecraft server jar file树莓派使用 python 脚本启动我的世界服务器 jar 文件
【发布时间】:2015-05-03 09:01:30
【问题描述】:

我一直在研究如何从树莓派运行我的世界服务器,所以我终于把它设置好了!

所以我心想,我可以更进一步……所以我一直致力于制作一个 Python 脚本,只要按下 IRL 按钮,它就会运行服务器。它工作得很好,直到它说:

An exception occurred processing Appender File org.apache.logging.log4j.core.appender.AppenderLoggingException
Error writing to RandomAccessFile logs/latest.log

我的代码如下:

import RPi.GPIO as GPIO
import os
import time

GPIO.setmode(GPIO.BOARD)

GPIO.setup(11, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(11, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)

try:
while True:
    #Test to see if the button has been pressed
    if (GPIO.input(11) == 1):
        print ("Downloading Server to clear corruption...")
        #download specified version
        os.system("wget https://s3.amazonaws.com/Minecraft.Download/versions/1.8.1/minecraft_server.1.8.1.jar")
        print ("Moving file...")
        os.system("mv /home/pi/minecraft_server.1.8.1.jar /home/pi/Server/server.jar")
        print ("Finished")
        print ("Starting Server")
        #start server
        os.system("java -Xms1024M -Xms1024M -jar /home/pi/Server/server.jar nogui")
        print ("Server Stopped!")
        time.sleep(2)

except KeyboardInterrupt:
    GPIO.cleanup()

当我运行服务器时

cd Server
java -Xms1024M -Xms1024M -jar server.jar nogui

效果很好!

我认为问题是当我运行python脚本时,它没有足够的权限,因此无法编辑文件。

我启动脚本为

sudo python controller.py

我的问题是;无论如何让python脚本运行具有超级用户功能的终端命令?

【问题讨论】:

  • 使用sudo 访问修饰符。
  • 我应该在哪里使用它?

标签: python raspberry-pi server minecraft


【解决方案1】:

要回答问题底部所述的问题,您可以通过在命令本身前面加上 sudo 来使 Python 脚本运行终端命令。

 os.system("sudo java -Xms1024M -Xms1024M -jar /home/pi/Server/server.jar nogui")

【讨论】:

  • @James Burnell,如果它解决了您的问题,请接受答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-10
  • 1970-01-01
  • 2015-05-11
  • 2023-01-08
  • 2022-12-05
相关资源
最近更新 更多