Просто добавив вышеприведенный ответ, убедитесь, что ваше локальное доменное имя не заканчивается на .local, похоже, что это зарезервированное имя, поэтому в вашем /etc/dnsmasq.conf:
address=/somesite.local/127.0.0.1
НЕ РАБОТАЕТ
address=/somesite.loc/127.0.0.1
будет работать.
TL; DR: Запуск hash -r или просто запуск новой оболочки обычно исправляет эту проблему.
Сначала я предлагаю вам проверить, что /usr/local/bin/cpan действительно ушел:
ls -l /usr/local/bin/cpan
Если что-то есть, то вы не полностью удалили. Если там ничего нет, вы получите это сообщение:
ls: cannot access '/usr/local/bin/cpan': No such file or directory
Предполагая, что вы получили это сообщение, но bash пытается запустить /usr/local/bin/cpan при вводе cpan и нажмите Enter , проблема, скорее всего, в том, что bash все еще имеет этот хэш. Вместо того, чтобы искать, где внешние команды всегда, оболочки обычно хешируют их местоположения. Поэтому вы можете исправить эту проблему, сообщив bash «перефразировать», выполнив:
hash -r
Или просто запустите новую оболочку.
Если файл еще не присутствует и еще не хэширован, то, скорее всего, cpan является псевдонимом или оболочкой, которая действует как обертка для /usr/local/bin/cpan. Чтобы убедиться в этом, запустите:
type -a cpan
Если это псевдоним или функция оболочки, это покажет определение. Затем вы можете отключить его с помощью unalias cpan, если это псевдоним или unset -f cpan, если это функция оболочки.
В конечном итоге вы захотите удалить определение из любого сценария запуска. Обычно он будет в файле .bashrc в вашем домашнем каталоге. Псевдонимы иногда определяются в .bash_aliases. (Иногда люди определяют псевдонимы и функции оболочки в .profile, .bash_profile или .bash_login, хотя это не очень хорошая практика.)
TL; DR: запуск hash -r или просто запуск новой оболочки обычно устраняет эту проблему. , тогда большинство вероятно, вы либо (a) не выполняете cpan непосредственно через эту команду, либо (b) используете оболочку, отличную от bash. В первом случае нет возможности ответить без дальнейших подробностей.
Последний случай кажется маловероятным, так как ваша оболочка называет себя bash, хотя каждый раз в то время кто-то плохо информировал о символической ссылке, называемой bash к оболочке, которая не является (что нецелесообразно). По правде говоря, я в основном упоминаю об этом на благо других читателей. Основываясь на этом сообщении, вы почти наверняка используете bash.
Однако, если вы не являетесь или не можете быть, запустите echo "$BASH_VERSION", чтобы убедиться, что вы используете bash - - это должно быть отменено в других оболочках - и echo "$SHELL", чтобы увидеть, что ваш называет себя оболочкой .
Некоторые другие оболочки в стиле Бурна, , говорящие bash на «rehash», , имеют rehash, который вы выполнили вместо hash -r. Точно так же вы можете вызвать повторную запись в csh и tcsh.
TL; DR: Запуск hash -r или просто запуск новой оболочки обычно исправляет эту проблему.
Сначала я предлагаю вам проверить, что /usr/local/bin/cpan действительно ушел:
ls -l /usr/local/bin/cpan
Если что-то есть, то вы не полностью удалили. Если там ничего нет, вы получите это сообщение:
ls: cannot access '/usr/local/bin/cpan': No such file or directory
Предполагая, что вы получили это сообщение, но bash пытается запустить /usr/local/bin/cpan при вводе cpan и нажмите Enter , проблема, скорее всего, в том, что bash все еще имеет этот хэш. Вместо того, чтобы искать, где внешние команды всегда, оболочки обычно хешируют их местоположения. Поэтому вы можете исправить эту проблему, сообщив bash «перефразировать», выполнив:
hash -r
Или просто запустите новую оболочку.
Если файл еще не присутствует и еще не хэширован, то, скорее всего, cpan является псевдонимом или оболочкой, которая действует как обертка для /usr/local/bin/cpan. Чтобы убедиться в этом, запустите:
type -a cpan
Если это псевдоним или функция оболочки, это покажет определение. Затем вы можете отключить его с помощью unalias cpan, если это псевдоним или unset -f cpan, если это функция оболочки.
В конечном итоге вы захотите удалить определение из любого сценария запуска. Обычно он будет в файле .bashrc в вашем домашнем каталоге. Псевдонимы иногда определяются в .bash_aliases. (Иногда люди определяют псевдонимы и функции оболочки в .profile, .bash_profile или .bash_login, хотя это не очень хорошая практика.)
TL; DR: запуск hash -r или просто запуск новой оболочки обычно устраняет эту проблему. , тогда большинство вероятно, вы либо (a) не выполняете cpan непосредственно через эту команду, либо (b) используете оболочку, отличную от bash. В первом случае нет возможности ответить без дальнейших подробностей.
Последний случай кажется маловероятным, так как ваша оболочка называет себя bash, хотя каждый раз в то время кто-то плохо информировал о символической ссылке, называемой bash к оболочке, которая не является (что нецелесообразно). По правде говоря, я в основном упоминаю об этом на благо других читателей. Основываясь на этом сообщении, вы почти наверняка используете bash.
Однако, если вы не являетесь или не можете быть, запустите echo "$BASH_VERSION", чтобы убедиться, что вы используете bash - - это должно быть отменено в других оболочках - и echo "$SHELL", чтобы увидеть, что ваш называет себя оболочкой .
Некоторые другие оболочки в стиле Бурна, , говорящие bash на «rehash», , имеют rehash, который вы выполнили вместо hash -r. Точно так же вы можете вызвать повторную запись в csh и tcsh.