나는 삼바 공유 서버(내 LAN 저장소)에서 마운트된 몇 개의 디렉토리를 가지고 있고 그 디렉토리에 대해 updateb를 실행하고 싶습니다. 나는 그러한 명령을 성공적으로 실행하여 이를 수행하는 데 사용합니다.
updatedb -l 0 -o ~/.myDbFile.db -U /mnt/myCustomDirectory/
아래에는 /mnt/myCustomDirectory/
다음과 같은 개별 마운트된 삼바 공유가 있습니다.
/mnt/myCustomDirectory/Music
/mnt/myCustomDirectory/Video
/mnt/myCustomDirectory/Backup
등등.
최신 Linux Mint 19.2(Ubuntu 18.04와 동일)를 새로 설치한 후에는 .myDbFile.db
비어 있고 아무것도 색인화되지 않습니다.
대신 단일 공유에서 명령을 실행하면 dbFile이 색인화됩니다.
updatedb -l 0 -o ~/.myDbFile_Music.db -U /mnt/myCustomDirectory/Music
첫 번째 명령이 단일 폴더에서 재귀적으로 작동하지 않는 이유를 아시나요?
답변1
결국 제가 알아낸 해결책은 다음과 같습니다.
updateb의 경우 마운트된 단일 디렉터리를 반복하고 특정 db 파일을 생성합니다.
alias updatedb_lanserver='cd /mnt/myCustomDirectory; for folder in *; do updatedb -l 0 -o ~/.lan_server_$folder.db -U $folder; done'
이 모든 db 파일을 한 번에 검색하기 위해 bash 함수를 만들었습니다.
locate_lanserver() { for dbfile in ~/.lan_server*.db; do locate -d $dbfile -i $1; done }
이제 이 기능을 사용하여 무언가를 검색할 수 있습니다.
locate_lanserver text_to_be_searched