На этот вопрос уже есть ответ:
Я часто сталкиваюсь с интересными командами Linux, которые заставляют меня задуматься; что на самом деле делают эти команды?
Да, они могут быть «принудительным удалением зависимостей», «установкой программ» и множеством других вещей, но я хотел бы знать , как они делаю это.
Заглянуть в исходный код кажется правильным, но где мне его взять?
Я полагаю, они будут написаны на C?
РЕДАКТИРОВАТЬ: Я не говоря уже о пакетах, установленных с помощью apt-get
. Ищу исходный код команд linux / unix.
Я думаю, что Вы говорите о командах GNU/Debian. Linux не имеет команд. Большинство дистрибутивов Linux использует утилиты GNU (вот почему, мы должны назвать их 'GNU/Linux'), и их собственные команды (такие как система APT Debian). Например, в Ubuntu, команды такой как cp
, cd
, mv
являются частью GNU Core Utilities, которые являются частью ядра Ubuntu (основная) система. Они представлены пакетом coreutils
. Существует Кв. - получают парамать, которую можно использовать для получения исходного кода пакетов: apt-get source
. Для получения исходного кода coreutil используйте sudo apt-get source coreutils
. Важно знать, что команды являются не чем иным как двоичными файлами, помещенными в пути переменной окружения PATH. Эти двоичные файлы обычно пишутся в C. Также обратите внимание, что команды от некоторых других подобных Unix систем, даже при том, что у них есть те же имена, не из проекта GNU и иногда имеют другой синтаксис. Дело обстоит так с BSD's (FreeBSD, OpenBSD, NetBSD) и OSX (базирующийся в FreeBSD).
Синтаксис: apt-get source command-name
Пример: apt-get source netstat
, Если это не может найти:
Добавляют Источник URI к sources.lst
cat /etc/apt/sources.list
deb-src http://ftp.de.debian.org/debian lenny main
apt-get update