Странное поведение «локатора» и смена значка

Странное поведение «локатора» и смена значка

Я хотел бы изменить значок программы Refit на свой собственный. Эта программа имеет различные инструменты, и когда я пытаюсь изменить эти значки, все в порядке, но затем я запускаю следующую команду:

$ locate refit.icns

и вывод такой:

$ /efi/refind/icons/os_refit.icns

Проблема в том, что у меня нет папки с именем refind и путь просто не существует. Я пробовал и то, и другое:

$ ls 

и

$ sudo ls

в каталоге /efi. Так что у меня на самом деле два вопроса: как мне изменить иконку этой программы? И почему такое странное поведение с командой locate?

У меня Snow Leopard 10.6.8. Спасибо за помощь.

решение1

Команда locateработает с базой данных, поэтому если выпривыкшийесть файл с именем /efi/refind/icons/os_refit.icns, locateможет продолжать сообщать об этом файле как о варианте даже после удаления файла. updatedbУтилита обновляет locateбазу данных. Эту программу следует запускать периодически. Ввод sudo updatedbдолжен запустить ее немедленно -- но учтите, что это займет некоторое время (вероятно, пару минут) для запуска, и это довольно интенсивно использует диск.

Предостережение: мой Mac в данный момент работает на Linux, поэтому я основываюсь на утилитах Linux. OS X обычно довольно похожа на этом уровне, но возможно, есть некоторые критические различия.

решение2

Locate можно настроить на поиск смонтированных и несмонтированных разделов. Признаюсь, у меня нет опыта работы с locate в OS X (запустите, locate -Vчтобы получить некоторую информацию), но я предполагаю, что вы обнаружите, что некий загрузочный раздел сканируется и индексируется locate, если посмотрите на файл конфигурации. Он может быть расположен в /etc/locate.conf. Если его там нет, то выполните man locateи прокрутите вниз доФАЙЛЫЕсли вы нашли там только точку монтирования (например, /efi), то нужно искать соответствующее устройство в /etc/fstab.

Связанный контент