매뉴얼 페이지 파일을 수동으로 설치하려면 어떻게합니까?


44

시스템 전체에 맨 페이지 파일을 설치하려면 어떻게합니까?

예를 들어 매뉴얼 페이지 파일이있는 경우 examplecommand.1입력 man examplecommand하여 볼 수 있도록 어떻게 설치 합니까?

답변:


53
  1. 먼저, 귀하의 매뉴얼 페이지가 속한 섹션을 찾으십시오. 명령이면 아마도 section에 속합니다 1. 명령맨 페이지를man맨 페이지 아이콘 읽고 다른 섹션과 해당 번호에 대한 설명을 볼 수 있습니다.

  2. 설명서 페이지를 복사하십시오 /usr/local/share/man/man1/( 1필요한 경우 섹션 번호로 변경 ). 에 설치할 수도 /usr/share/man/man1/있지만 localAPT 패키지 관리자를 사용하지 않고 설치된 파일 의 디렉토리 를 사용하는 것이 가장 좋습니다 .

    sudo cp examplecommand.1 /usr/local/share/man/man1/
    
  3. mandb명령을 실행하십시오 . man내부 데이터베이스를 업데이트 합니다 :

    sudo mandb
    
  4. 그게 다야! 다음을 실행하여 매뉴얼 페이지를 볼 수 있어야합니다.

    man 1 examplecommand
    

참고 문헌 :


1
사용을 피하고 싶을 때 옵션 또는 권장되는 방법이 sudo있습니까?
Jorge Bucaran

@JorgeBucaran MANPATH를 설정하는 방법에 대한 아래 답변을 참조하십시오. $ HOME / lib / share / man과 같은
곳에

나는 당신이 맨 페이지를 저장할 수 있다고 생각 /usr/local/man하고 PATH to MANPATH 매핑에서 제안했습니다 /etc/manpath.config.
jarno

10

매뉴얼 페이지 만 로컬로 설치해야하는 경우 :

경우 MANPATH설정 해제, 또는 빈 구성 요소를 포함 (와 즉 시작 :과 끝을 :, 또는 포함 ::), 다음 <path>/share/man때마다 자동으로 맨 페이지 검색됩니다 <path>/bin의 일부입니다 PATH, 모든 값<path> .

이것은 로컬로 설치된 소프트웨어에 대한 매뉴얼 페이지를 추가하는 매우 간단한 방법을 제공합니다. man manpath및에 몇 가지 세부 정보가 /etc/manpath.config있지만 <path>/bin~ 에서 일반 매핑에 대한 언급이 없습니다 <path>/share/man.


나는 추가 MANPATH=<local path to the man pages>:$MANPATH당신에 ${HOME}/.bashrc(비 로그인 세션) 또는 ${HOME}/.profile(로그인 세션). 필자의 경우에서는 man 페이지의 로컬 디렉토리를 설정했는데 ${HOME}/share/man/, 이는 고전적인 Linux 파일 시스템과 유사합니다. 필자 는 프로그램 설치 프로그램 ${HOME}/share/man/man.1에서 파일 위치 examplecommand.1( 'prefix'를 구성한 위치)에 대한 심볼릭 링크를 포함하는을 만들었습니다 . 시작 man examplecommand하면 맨 페이지가 찾아집니다. 이러한 방식으로 설치는 시스템 전체가 아닌 로컬입니다.
XavierStuvw

이것은 매우 흥미로운 의견이며, 로컬 바이너리에 대한 PATH (이미 기대 한) 만 설정하면되는 사람들에게 경로를 제공합니다. 그러나, 나는 일반 매핑이 생각하지 않는다 <path>/bin> - <path>/share/man존재한다. 에 strace를 (1) 수행 할 때 man와를 MANPATH=:/nonexistingdir, 나는 다음을 참조 : - <path>/bin-> <path>/man 이것은 Debain 버스터 시스템에 있습니다.
Aktau

1

위의 @ ntc2의 대답은 사람들이보고 있어야하는 것입니다. 의견 섹션에 맞지 않는 추가 의견을 추가하고 싶었습니다.

@ ntc2의 접근 방식은 로컬 바이너리에 대해 PATH (이미 기대 한) 만 설정하면되는 사람들에게 경로를 제공합니다.

그러나 일반 매핑 <path>/bin-> <path>/share/man이 모든 경로에 존재 한다고 생각하지 않습니다 $PATH. $PATH문제가 있는 경우이 특정 매핑을 피하는 것 같습니다 $HOME/bin. manwith strace (1)을 수행 MANPATH=:/nonexistingdir하면 다음과 같은 조회가 표시됩니다.

그 안에있는 요소는 $PATH아닙니다.$HOME/bin

  • <path>/bin -> <path>/man
  • <path>/bin -> <path>/bin/man
  • <path>/bin -> <path>/share/man
  • <path>/bin -> <path>/bin/share/man

에 대한 $HOME/bin

  • $HOME/bin -> $HOME/man

왜 다른 것을 건너 뛰는 지 전혀 모른다. 이것은 데비안 버스터 시스템에 있습니다. 다른 시스템에서는 다를 수 있습니다.

저에게 이것은 맨 페이지를 설치하는 가장 안전한 경로 <path>/man$PATH입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.