문제

저는 pylons를 운영하고 있으며 다음과 같이 했습니다.파스터 서버 개발. ini 실행 중 : 5000

그러나 명령을 다시 실행하려고 하면 다음과 같습니다.파스타 서브 development.ini

다음 메시지가 나타납니다.소켓 오류:[Errno 98] 이미 사용중인 주소입니다.

어떤 아이디어가 있나요?

도움이 되었습니까?

해결책

일반적으로 이는 여전히 실행 중임을 의미하지만 데몬 모드인 경우에만 발생합니다.시작한 후 명령 프롬프트가 표시됩니까, 아니면 Ctrl-C를 눌러 중지해야 합니까?

명령 프롬프트가 다시 나타나면 데몬 모드이므로 다음 명령으로 중지해야 합니다.

paster server development.ini stop

Ctrl-C(물론 Ctrl-Z는 아님)로 중지했다면 잘 모르겠습니다.

다른 팁

포럼 에서이 트릭을 찾았습니다.

이것은 포트 5000을 듣고 모든 프로그램을 죽일 것입니다

kill -9 `fuser -n tcp 5000`

당신의 질문을 이해할 때, 당신은 포트 5000에서들을 수있는 신청서를 시작합니다. 그런 다음 그것을 멈추지 않고 (?), 당신은 다른 인스턴스를 시작하여 같은 포트에서들을 수 있습니까? 그렇다면 성공하지 못할 것입니다.

사용하여 어떤 응용 프로그램을 듣고 있는지 항상 확인할 수 있습니다. netstat (Windows와 Unix와 같은 시스템의 경우 다른 사람들과 경험이 없습니다).

이것은 서버가 예기치 않게 사망했을 때 나에게도 일어 났으며 소켓이 올바르게 닫히지 않았습니다. 기본적으로 소켓은 프로세스가 사망했지만 여전히 운영 체제와 함께 열려있는 것으로 표시됩니다. 30-60 초 동안 기다리면 OS가 관련 프로세스가 죽었다는 사실을 알게되고 소켓을 자동으로 정리합니다.

기본 포트 8080이 사용 중입니다. 포트 10000을 가져 가려면 명령 후 '-p 100000'을 추가해야합니다.

당연히 netstat (netstat -an | grep 5000 Linux에서 트릭을 수행합니다). 항구를 잡을 것입니다

그러나 나는 같은 오류 로이 다른 질문을 발견했습니다.

Python [Errno 98] 주소는 이미 사용 중입니다

sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

본질적으로 파이썬은 소켓을 열는 데 너무 오래 걸립니다.

나는 여기에 모든 upvoted 답변이 존재했지만 아무도 나를 위해 일하지 않습니다. 그러나 아래의 명령은 트릭을 수행합니다.

sudo kill $(sudo lsof -t -i:5000)

이것은 항구에서 듣는 과정을 죽일 것입니다. 5000.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top