업데이트됨이 '--localpaths=' 옵션을 인식하지 못합니다.

업데이트됨이 '--localpaths=' 옵션을 인식하지 못합니다.

내가 만든 단일 디렉터리를 업데이트하려고 합니다. 나는 updatedb명령을 통해 찾을 수 있도록 사용하고 있습니다 locate.

사용된 명령:
updatedb --localpaths='/frodo/lib/modules/3.12.3-031203-generic/kernel'

산출:
updatedb: unrecognized option '--localpaths=/frodo/lib/modules/3.12.3-031203-generic/kernel'

다음과 같은 결과:

updatedb --localpaths=  
updatedb: unrecognized option '--localpaths='

에서 man updatedb:

   --localpaths='path1 path2...'
          Non-network directories to put in the database.  Default is /.

--localpaths옵션으로 명시적으로 지정하면 이 오류가 발생하는 이유는 무엇입니까?


시스템 메시지:

updatedb --version
updatedb (mlocate) 0.26
Copyright (C) 2007 Red Hat, Inc. All rights reserved.
This software is distributed under the GPL v.2.

This program is provided with NO WARRANTY, to the extent permitted by law.

lsb_release -a
LSB Version:  core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:
core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-
noarch:core-4.0-amd64:core-4.0-noarch
Distributor ID:   Ubuntu
Description:  Ubuntu 13.10
Release:  13.10
Codename: saucy

uname -r
3.12.3-031203-generic

편집: 성공적으로 사용했지만 왜 매뉴얼에 있는 내용이 인식되지 않는지 updatedb -U /frodo/lib/modules/3.12.3-031203-generic/kernel궁금합니다 .--localpaths

이 대안은 설명서에는 없지만 에서 사용할 수 있습니다 updatedb -h.

   -U, --database-root PATH       the subtree to store in database 
(default "/")

답변1

updateb에는 널리 사용되는 두 가지 구현이 있습니다. 그 중 하나는GNU findutils에서. 다른 하나는모바일 포지셔닝. 특히 updatedb프로그램 에 대해 다양한 명령줄 옵션과 구성 파일을 지원합니다 .

updatedb시스템의 명령은 mlocate에서 가져온 것으로 보이지만 매뉴얼 페이지는 findutils에서 가져온 것입니다. 일반적으로 Ubuntu에는 Debian에서 상속된 시스템이 있습니다.대안이렇게 하면 프로그램에 여러 구현이 있을 때 프로그램 선택이 매뉴얼 페이지 선택과 일치하게 됩니다. 그러나 이 경우 updatedb대체 목록에는 맨페이지가 기록되지 않고 locate실행 파일, locate맨페이지, updatedb실행 파일만 대체 목록에 기록됩니다. 이는 updatedb매뉴얼 페이지가 서로 다른 섹션에 있기 때문입니다 . findutils는 섹션 1에 넣고 mlocate는 섹션 8에 넣습니다. 따라서 맨페이지는 Part 1의 유일한 맨페이지이기 때문에 man 1 updatedb표시됩니다 . 그리고 첫 번째로 일치하는 부분이기 때문에 파트 1의 매뉴얼 페이지를 보여주세요. 틀림없이 이것은 mlocate의 패키징 버그입니다. findutils와 mlocate 패키지 관리자는 매뉴얼 페이지를 동일한 섹션에 두는 데 동의해야 하며 mlocate는 매뉴얼 페이지에 대한 대안을 선언해야 합니다 . 섹션 1. 지금은 를 사용하여 mlocate의 매뉴얼 페이지를 볼 수 있습니다 .updatedb(1)updatedbman updatedbupdatedbupdatedb/usr/binupdatedbman 8 updatedb

mlocate 구현에는 updatedbfindutils 와 정확히 동일한 옵션이 없습니다 --localpaths. 별도의 데이터베이스를 생성하고 옵션을 사용하여 포함된 하위 트리를 지정 --database-root하거나 실행할 수 있습니다 updatedb --database-root / --database-root /frodo/lib/modules/3.12.3-031203-generic/kernel.

관련 정보