IP 주소에 많은 별칭이 있고 해당 별칭이 에 있어야 하는 상황이 있습니다 /etc/hosts
. IP에 대한 모든 별칭을 포함하는 매우 긴 줄이 아닌 다음 줄에 별칭을 계속 나열할 수 있기를 바랍니다. 형식을 유지하고 파일을 읽을 수 있도록 유지할 수 있습니다.
이를 달성하는 방법에 대한 문서를 찾을 수 없습니다.
예를 들어:
# in /etc/hosts
10.11.11.11 alias1.localhost alias1 \
alias2.localhost alias2 \
alias3.localhost alias3 \
alias4.localhost alias4
이로 인해 첫 번째 행은 처리되지만 후속 행은 처리되지 않습니다.
$ python -c "import socket; print(socket.gethostbyname('alias1'))"
10.11.11.11
$ python -c "import socket; print(socket.gethostbyname('alias2'))"
Traceback (most recent call last):
File "<string>", line 1, in <module>
socket.gaierror: [Errno -2] Name or service not known
백슬래시 제거를 포함하여 다양한 형식을 시도했지만 아무것도 작동하지 않는 것 같습니다.
우리는 우분투 16.04를 사용하고 있습니다.
가능합니까?
답변1
정확히는 아닙니다. 주변에서 파헤쳐 보세요glibc 소스 코드가능성을 검색 /etc/hosts
하고 찾아보세요_PATH_HOSTS
만나다_gethtent
\
처리와 관련된 코드는 없는 것 같습니다 .
이 기능을 정말로 원한다면 패치를 해야 할 것입니다 libc
. 이는 아마도 최선의 아이디어는 아닐 것입니다.
더 나은 아이디어는 /etc/hosts
파일을 빌드하는 데 사용되는 소스의 형식을 필요에 따라 지정할 수 있도록 템플릿을 만든 다음 /etc/hosts
필요한 긴 줄을 포함하도록 템플릿을 만드는 것입니다. 이는 구성 관리를 통해 수행할 수 있습니다.