필요한 정보를 검색해 왔지만 지금까지 성공하지 못했습니다.
내가 매일 하고 싶은 일은 다음과 같습니다.
- Minecraft 서버는 컴퓨터가 부팅될 때마다 시작됩니다. (저는 이에 대한 쉘 명령을 작성했습니다.)
- 오전 8시에 "stop"이라는 텍스트가 서버에 제출되어 정상적으로 중지됩니다.
- 오전 8시 2분에 컴퓨터가 다시 시작되었습니다.
이상적으로는 명령을 입력하고 원격 터미널을 통해 서버에 명령을 보낼 수 있는 창을 데스크탑에 엽니다.
어떻게 해야 하나요? sudo crontab -e
Minecraft 서버를 실행하는 데 필요한 슈퍼유저 액세스를 허용하기 위해 사용하는 방법에 대한 정보를 찾았습니다 . 명명된 파이프를 사용하는 방법도 살펴봤지만 제대로 작동하지 않습니다. 를 사용하여 생성할 수 있지만 mkfifo mcserver
다른 터미널에서 파이프를 열지 않으면 차단됩니다. 나는 또한 ing 명령 screen
과 pid를 기반으로 한 디렉토리를 조사했지만 echo
작동하도록 할 수 없었습니다. PID를 어떻게 감지하고 저장할 수 있나요?
당신의 도움을 주셔서 감사합니다. 매우 감사합니다. 나는 오랫동안 이 문제로 어려움을 겪었지만 그것을 알아낼 수 없는 것 같습니다.
답변1
사용이 스크립트
그런 다음 다음과 같이 crontab을 루트로 설정하십시오.
0 8 * * * service minecraft stop
2 8 * * * reboot
그런 다음 실행
chkconfig minecraft on
부팅 시 자동으로 시작되도록 Minecraft 서비스를 추가하세요.
답변2
너할 수 있다"netcat"을 사용해 보세요...
nc -l -p <port> -e /bin/bash
나는 이것이 어떤 방식으로든 안전하다고 말할 수 없으며 반드시 용인할 수도 없습니다. 기본적으로 이는 BASH 쉘을 선택한 포트에 바인딩합니다. 이를 "역방향 쉘"이라고 하며 방화벽이 올바르게 구성되지 않은 경우 시스템을 취약하게 만들 가능성이 높습니다. [iptables] 또는 다른 방법.
따라서 netcat을 사용하여 다음과 같은 방법으로 컴퓨터에 원격으로 연결할 수 있습니다.
nc <remote_ip> <port>
그리고 명령을 보내기 위한 인터페이스를 제공합니다.
또 다른 접근 방식은 원격으로 연결하고 시각적으로 관리할 수 있도록 수신 VNC 서버를 실행하는 스크립트를 만드는 것입니다. 이러한 모든 옵션은 원격으로 연결하고 [서버에서] 포트를 열 때 주의가 필요합니다.
나는 그것이 당신이 요구하는 것이라고 생각합니다. 작은 BASH 스크립트를 만드는 것은 식은 죽 먹기입니다. 또는 .rc 파일에 추가하면 자동으로 실행됩니다.