В настоящее время я продаю программу для администрирования сервера Subversion в Windows. У меня было несколько клиентов, которые спрашивали меня, может ли моя программа администрировать Linux-сервер через подключенный диск Samba. Мне нужно настроить тестовый сервер в VMWare.
В настоящее время Linux довольно легко настроить. Мои текущие проблемы связаны с тем, что я не знаю, как и куда устанавливается программа Linux и какие разрешения необходимы для запуска программного обеспечения там. Я уже хорошо знаком с Subversion в Windows. В Красная книга был бесполезен (по крайней мере, для меня) в Linux. Я прочитал несколько руководств HOW-TO, но не смог найти что-то, что отвечало бы на мои вопросы. В основном это связано с тем, что в большинстве руководств, которые я читал, вы уже должны знать Linux.
Итак, вот мои вопросы:
Основная причина, по которой я выбрал OpenSuse и / или Ubuntu, заключается в том, что мне нужно запускать двоичные файлы Mono.
Спасибо!
В ubuntu (или debian) вы можете использовать:
dpkg --listfiles
чтобы указать, где находятся все файлы, устанавливаемые определенным пакетом. Выполнение этого в пакете subversion показывает, что он помещает двоичные файлы (которые являются программами командной строки) в / usr / bin. И вам не нужно беспокоиться о выполнении chmod, потому что диспетчер пакетов должен сделать это за вас. Просто запустите svn или svnadmin на досуге.
Не имеет значения, куда устанавливаются двоичные файлы. В отличие от Windows, UNIX имеет нормальную переменную среды PATH. Я буду использовать Ubuntu в качестве примера, так как я это хорошо знаю.
jdugger:~$ env | grep ^PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Современные дистрибутивы Linux используют пакеты для установки общих программ. Это похоже на MSI, за исключением того, что они не исполняются напрямую. Вместо этого менеджер пакетов обеспечивает безопасность, отслеживание зависимостей, обновления и так далее. Для Ubuntu команда «sudo apt-get install subversion» загрузит официальные сборки Ubuntu svn, установит их и распознает, когда Ubuntu публикует обновления.
После установки вы можете запускать программу из любого места:
jldugger:~$ svn --version
svn, version 1.5.1 (r32289)
compiled Jul 31 2008, 09:45:17
Copyright (C) 2000-2008 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository access (RA) modules are available:
* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
- handles 'http' scheme
- handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
- with Cyrus SASL authentication
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
Любые сценарии, которые вы пишете для запуска в Linux, должны иметь включенный бит выполнения (chmod + x) и должны быть установлены в один из каталогов, перечисленных в PATH. Возможно, в вашем случае / usr / local / bin.
OpenSUSE имеет отличный руководство по установке Subversion, который включает:
Вопросы 1 и 2 фактически зависят от дистрибутива Linux. Однако обычно двоичные файлы хранятся в / usr / bin, если вы используете диспетчер пакетов дистрибутивов Linux.
Вы можете использовать команду который чтобы узнать, где установлен данный двоичный файл, например (выполнить команду в терминале командной строки):
which svn
/usr/bin/svn
(подключенный диск Samba) Думаю, вопрос в том, что admin svn работает на Linux-машине. Возможна ли подрывная деятельность администратора, работающая в Linux, из окон с использованием самбы?