Câu trả lời:
Cơ sở dữ liệu định vị thường được cấu hình để bỏ qua các tệp trên các đĩa di động, vì chúng không thể được giả định là sẽ ở đó sau này. Nó có thể được cấu hình thông qua một tệp như /etc/updatedb.conf
(vị trí phụ thuộc vào locate
chương trình nào trong số một số chương trình bạn sử dụng và cách cấu hình của bản phân phối của bạn).
Đối với một đĩa di động, có lẽ tốt hơn là giữ cơ sở dữ liệu trong một tệp riêng biệt. Chạy
updatedb --localpaths=/media/my_removable_disk --output=/var/cache/locate/my_removable_disk.locatedb
để cập nhật cơ sở dữ liệu. Thêm vào /var/cache/locate/my_removable_disk.locatedb
biến môi trường LOCATE_PATH
; đối với các phiên bản gần đây của GNU xác định vị trí, một thành phần đường dẫn trống là viết tắt của đường dẫn mặc định, vì vậy bạn có thể sử dụng
export LOCATE_PATH=:/var/cache/locate/my_removable_disk.locatedb
Nếu bạn muốn giữ cơ sở dữ liệu định vị trên đĩa di động, đừng thêm đường dẫn vào LOCATE_PATH
, vì locate
dừng tìm kiếm nếu một trong các tệp cơ sở dữ liệu bị thiếu. Một kịch bản bao bọc sẽ tốt hơn:
locates () {
locate "$@"
for d in /media/*; do
locate -d "$d/.locatedb" "$@"
done
}
Tệp cấu hình có ở đây : /etc/updatedb.conf
, vì vậy nếu bạn không thêm bất cứ thứ gì, chỉ cần gắn ổ cứng của bạn và làm updatedb
, thì bạn có thể tìm kiếm các tệp trên các phân vùng ổ cứng gắn ngoài.
updatedb
lại.
updatedb
hàng ngày