![/etc/hosts не может быть символической ссылкой?](https://rvso.com/image/1558017/%2Fetc%2Fhosts%20%D0%BD%D0%B5%20%D0%BC%D0%BE%D0%B6%D0%B5%D1%82%20%D0%B1%D1%8B%D1%82%D1%8C%20%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B9%20%D1%81%D1%81%D1%8B%D0%BB%D0%BA%D0%BE%D0%B9%3F.png)
Мне нужно написать небольшой скрипт, который позволит мне переключаться между средами разработки, изменяя файл /etc/hosts
.
Я хотел бы использовать символическую ссылку вместо замены всего /etc/hosts
файла, но когда я это делаю, /etc/hosts
она игнорируется. Почему?
решение1
Да, символическая ссылка не работает.
Вместо этого используйте жесткую ссылку:
sudo ln -f {source} /etc/hosts
решение2
Hosts — это очень простой системный файл, и многие функции ОС зависят от него. Поэтому они не будут принимать символические ссылки на такие файлы и ожидают, что они будут иметь тип «обычный».
Попробуйте перезаписать его своими версиями, сохранив оригиналы. Кстати, вы можете попробовать запустить локальный DNS с другими зонами.