MANPATH(5) | /etc/manpath.config | MANPATH(5) |
manpath - /etc/manpath.config 파일 형식
맨 페이지 경로 구성 파일은 설명서 페이지 유틸리티에서 실행 시간동안 사용자의 맨 페이지 경로에 접근할 때 사용하며, 어떤 설명서 페이지 계층(맨 페이지 경로)을 시스템 계층으로 다루는지, 캣 페이지 파일을 저장할 때 어떤 디렉터리를 할당할 지를 나타냅니다.
$MANPATH 환경 변수를 이미 설정했다면, /etc/manpath.config에 있는 정보는 이 변수 값을 무시하지 않습니다.
기본적으로 man-db는 사용자 $PATH 변수를 확인합니다. 경로요소 제각각을 찾아낸 다음, 검색 경로에 멘_페이지_경로요소를 추가합니다.
설정 파일에 주어진 경로_요소의 MANPATH_MAP 행이 없다면, 디렉터리로 존재하는 모든 경로_요소/../man, 경로_요소/man, 경로_요소/../share/man, 경로_요소/share/man 항목을 검색 경로에 추가합니다.
그 다음 설정 파일의 MANDATORY_MANPATH 항목을 검색 경로에 추가합니다.
마지막으로 --systems 옵션을 사용했거나 $SYSTEM 환경 변수를 설정했다면, 쉼표 또는 콜론으로 순차 구분한 운영체제 이름이 들어가야합니다. 이 동작은 다른 운영체제 설명서 페이지에 접근할 수 있게 1회 이상 검색 경로를 확장하는 양식으로 활용합니다: 각 시스템 이름에 대해 man-db는 검색 경로상에서 해당 이름이 들어간 하위 디렉터리를 검색하고, 최종 검색 경로가 있다면 추가합니다. man의 시스템 이름을 하위 디렉터리를 넣지 않고 일반 검색 경로에 추가합니다. 예를 들면 검색 경로에 /usr/share/man:/usr/local/man 경로가 들어갔고, $SYSTEM 환경 변수에 newOS:man 값이 들어갔다면, 최종 검색 경로 설정 값은 /usr/share/man/newOS:/usr/share/man:/usr/local/man/newOS:/usr/local/man 값이 됩니다.
$MANPATH 환경 변수 값은 man-db 기본 설명서 페이지 검색 경로 값보다 우선합니다. 대부분 사용자는 설정할 필요가 없습니다. 문법은 $PATH 환경 변수와 유사합니다. 순서대로 적은 디렉터리 이름을 콜론으로 구분합니다. 위에서 설명한 기본 검색 경로 값보다 우선합니다.
$MANPATH 값이 콜론으로 시작하면, 기본 검색 경로를 시작 부분에 추가합니다. $MANPATH 값이 콜론으로 끝나면 기본 검색 경로를 끝에 추가합니다. $MANPATH에 이중 콜론(::)이 들어있다면, 기본 검색 경로는 콜론 사이에 값 중간에 들어갑니다.
현재 다음 필드 형식을 인식합니다:
시스템 설명서 페이지 계층은 /usr/man, /usr/local/man, /usr/X11R6/man과 같이 보통 /usr 하위 계층에 저장합니다.
맨_페이지_경로요소 일부의 캣 페이지를 저장하지 않거나 원래 사용하던 위치로 저장한다면 캣_페이지_경로요소를 생략할 수도 있습니다.
원래 캣 페이지 위치로의 복사는 설명서 페이지 계층을 읽기 전용으로 마운트하는 문제로 불가능한데, 설명서 페이지 저장소의 적절한 디렉터리 계층 지정이 가능하기 때문입니다. Linux FSSTND를 확인해보려면 검색어 FSSTND를 실제 디렉터리 위치에서 활용해볼 수 있습니다.
불행하게도, /usr/man/sun과 같은 대체 운영체제 경로와 같이 모든 시스템의 man 트리 경로를 지정해야 하며, 심지어는 /usr/man/de_DE.88591와 같은 NLS 로캘 경로도 지정해야 합니다.
앞서 기록한 방식대로 행 별로 정보를 분석하고 나면, 우선 목록에 나타내야 하는 다른 계층의 하위 계층 맨 페이지 경로에 필요하며, 그렇지 않으면 부정확한 일치 내용을 만들어냅니다. 예제에서는 /usr/man/de_DE.88591이 /usr/man보다 앞에 와야 함을 보여줍니다.
SECTION 1 n l 8 3 0 2 3type 5 4 9 6 7
다중 SECTION 지시자를 지정했다면, 섹션 목록을 합칩니다.
각 확장이 이 목록(1mh라 합니다)에 없으면 목록에 속한 섹션의 나머지를 나타냅니다. 이 결과에 대해 제각각의 순서를 강제하고 싶다면 확장자 목록을 분명하게 지정하는 것 뿐입니다. 확장자가 붙은 섹션은 주 섹션에 인접해야 합니다(예: "1 1mh 8 ...").
SECTIONS는 이 지시자의 대체 이름으로 수용합니다.
위 규칙을 제대로 따라가지 않으면, 설명서 페이저 유틸리티는 원하는 대로 동작하지 않습니다. 규칙은 전반적으로 복잡합니다.
https://gitlab.com/man-db/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db
2023-01-08 | 2.11.2 |