Я пытаюсь создать ОС для обнаружения переносимых функций в скрипте bash,
Так что я просто хочу знать, файл "/etc/issue"
является общим для всех версий Linux?
login
etc
portability
Рахул Патил
источник
источник
/etc/*-release
файл с некоторой информацией.uname
может предложить некоторую информацию тоже, не уверен, насколько точный отпечаток пальца. Не забывайте, что любой может изменить практически все в установке Linux, чтобы скрыть информацию, которую вы хотите, он найдет материал только при неизмененных установках.yum
илиapt-get
затем он будет устанавливать пакеты на основе этого.Ответы:
Да, это стандартный файл для всех дистрибутивов. Стандартно для большинства дистрибутивов: Fedora / CentOS / RHEL / Debian / Ubuntu и т. Д.
Вы можете прочитать больше об этом с
man issue
или связанным с ним файлом/etc/issue.net
. Вы можете увидеть справочную страницу Issue.net для более подробной информации и того, как включить макросы в оба файла.Вы также можете прочитать больше об этом в проекте Linux From Scratch , настраивая свой вход в систему с помощью / etc / issue .
источник
В дополнение к ответу slm стоит помнить, что любой (с правами root) может редактировать содержимое
/etc/issue
. Некоторые организации могут сделать это, чтобы представить предупреждения или отказ от ответственности перед входом в систему, а другие могут удалить всю идентификацию дистрибутива по соображениям безопасности (не имеет значения, насколько эффективна любая из этих мер).Поэтому, хотя / etc / issue может существовать почти все время, контент не обязательно подходит для обнаружения ОС (как вы выразились, или, скорее, дистрибутив Linux).
источник
@ EightBitTony ответ правильный. Также он не существует по умолчанию на fedora 23.
Вы не полагаться на него для выявления случайных систем. Я бы использовал
/etc/system-release
или/etc/os-release
не уверен, насколько это универсально.Чтение немного
/etc/os-release
приходит,systemd
поэтому я думаю, что не будет работать с архаичными дистрибутивами (или любыми, которые ненавидятsystemd
). Не удалось найти достоверную информацию о/etc/system-release
. Я думаю, нужно проверить много файлов, если совместимость важна. Или используйте,/etc/os-release
если крайние случаи не важны.источник