Как я могу редактировать / обновлять файл hosts (etc / hosts) с помощью любого языка программирования [закрыто]

Я хочу динамически редактировать / обновлять файл hosts (etc / hosts), чтобы добавить домен.

Для редактирования файла hosts (etc / hosts) требуются права администратора. Используя Linux, я могу сделать это с помощью этой команды

sudo gedit /etc/hosts 

Но я пытаюсь сделать это с помощью языка программирования.

Как это сделать?

0
задан 29 October 2009 в 09:06
2 ответа

Откройте файл из своей программы и используйте стандарт faciliries для чтения и записи текстовых файлов. Это действительно не отличается из любого другого файла там.

И удостоверьтесь свои прогоны программы как корень, таким образом, можно на самом деле открыть и изменить тот файл.

1
ответ дан 4 December 2019 в 15:26
  • 1
    @Johannes Rö ssel " Ваши прогоны программы как root". проблема там? использование " представьте shell_exec в виде строки (строковый $cmd) " в php я могу выполнить команду оболочки. НО как насчет полномочия, мне нужно было дать администратору полномочия. –   29 October 2009 в 11:18
  • 2
    @imrul: НИЧЕГО не ВЫПОЛНЯЙТЕ ОТ ВЕБ-СЕРВЕРА С ПРАВАМИ АДМИНИСТРАТОРА... успокаиваясь: серьезно, это может/, позволяют хакеру принимать Вашу систему –  lexu 29 October 2009 в 19:17

Существует проект Redhat по имени Augeas, который обеспечивает древовидный API для редактирования нескольких видов общих конфигурационных файлов. /etc/hosts файл является одним из тех. Существует привязка для многочисленных языков.

1
ответ дан 4 December 2019 в 15:26

Теги

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