Странное поведение "locate" и изменение значков

269
Luigi Tiburzi

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

$ locate refit.icns 

и вывод:

$ /efi/refind/icons/os_refit.icns 

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

$ ls 

а также

$ sudo ls 

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

Я на снежном барсе 10.6.8. Спасибо за вашу помощь.

0

2 ответа на вопрос

1
Rod Smith

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

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

Ваш ответ правильный, но вы должны обновить его для Mac. Это команда sudo /usr/libexec/locate.updatedb в соответствии с [этот ответ для SuperUser] (http://superuser.com/questions/109590/whats-the-equivalent-of-linuxs-updatedb-command-for-the -mac). Спасибо!!! Luigi Tiburzi 11 лет назад 0
0
Ярослав Рахматуллин

Locate can be configured to look for mounted and unmounted partitions. I'll admit that I have no experience with locate in OS X (run locate -V to get some info), but I'll guess that you will find that some sort of boot partition is being scanned and indexed by locate if you look at the configuration file. It may be located in /etc/locate.conf. If it's not there, then do a man locate and scroll down to FILES. If you find only the mount-point there (ie /efi), then /etc/fstab is the place to look for the associated device.

Я не понимаю, если я удалил папку refind, в каком разделе она существует? Когда я запускаю $ locate «файл, который, я уверен, находится у меня дома», он сразу же находит его, поэтому я предполагаю, что он сканирует нужный раздел. Luigi Tiburzi 12 лет назад 0

Похожие вопросы