Переносимость исполняемого файла на другую машину Linux

Переносимость исполняемого файла на другую машину Linux

Я установил программу Motion на одну машину Linux (M1) и хочу установить ту же программу на другую (M2).

Существуют различные сборки этой программы, и я забыл, какую из них я использовал. Могу ли я сделать прямую копию файла user/bin/motion из M1 и поместить его в user/bin/motion M2?

Я знаю, где находится файл конфигурации, поэтому я перенесу его, но я не уверен, какие видеодрайверы использует рабочая версия Motion на M2. Есть ли способ это выяснить?

Есть ли способ узнать его зависимости?

решение1

Для переноса одной программы на другой компьютер необходимо переместить:

1) Исполняемый файл
Простой способ найти путь к командам — это typeкоманда.

Например:type cal

кал это /usr/bin/cal

2) Зависимости библиотек
Вы можете найти зависимости библиотек с помощью lddкоманды, но помните, что если вы скомпилировали программу из исходного кода, архитектура ЦП обоих серверов должна быть одинаковой.

Например:ldd date

linux-vdso.so.1 => (0x00007fff83dff000)
librt.so.1 => /lib64/librt.so.1 (0x0000003784e00000)
libc.so.6 => /lib64/libc.so.6 (0x0000003783e00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003784200000)
/lib64/ld-linux-x86-64.so.2 (0x0000003783a00000)

3) Файлы конфигурации
На новом сервере вам может потребоваться указать программе пересоздать файлы конфигурации, поскольку эти файлы конфигурации принадлежат предыдущему серверу.

4) Проверка зависимости оборудования
Для проверки этого, я думаю, вам нужно проверить веб-сайт программы на предмет поддерживаемого оборудования или протестировать программу в новой среде.

Связанный контент