Я должен установить несколько пакетов .deb
в подкаталог, а именно /opt/corbos-linux/2.4.4/sysroots/x86_64-pokysdk -linux /
. Эта папка должна использоваться как новый корень. Я попытался установить эти пакеты, используя
dpkg --root=/opt/corbos-linux/2.4.4/sysroots/x86_64-pokysdk-linux/ -i *.deb
, но появляется эта ошибка:
dpkg: error: unable to access dpkg status area: No such file or directory
Хотя, если я дам
dpkg --instdir=/opt/corbos-linux/2.4.4/sysroots/x86_64-pokysdk-linux/ -i *.deb
, эта ошибка появится для большинства пакетов:
dpkg (subprocess): admindir must be inside instdir for dpkg to work properly
Некоторая дополнительная информация: все команды выполняются с привилегией root и в папке, содержащей пакеты .deb
(учтите, что если я просто запущу dpkg -i * .deb
в, скажем, / home / folder_conisting_debs
, пакеты установлены правильно, но не в том месте, которое я хочу). Операционная система - Ubuntu 16.04.6 LTS (архитектура x86-64)
You probably looking for this:
dpkg-deb -x $YourDebFile $TARGET_DIRECTORY
# Example
dpkg-deb -x <file_name>.deb /opt/corbos-linux/2.4.4/sysroots/x86_64-pokysdk-linux/
For Example, this is your current "files and folders" and you want to install all these .deb
files to /home/username/testing/
directory:
some_deb_file.deb
another_file.deb
other/
testing/
For this you can run these commands:
ls -1 | grep [.]deb >> all_debs.txt
cat all_debs.txt | while read fn; do dpkg-deb -x $fn /home/username/testing; done
rm all_debs.txt
all_debs.txt
file with all .deb
file names inside it. In our case file will look like this: NOTE: If your one package depends on another one, then you can edit this file and order the file names as you want.some_deb_file.deb
another_file.deb
dpkg-deb -x
structure.One line code for nerds :) :
ls -1 | grep [.]deb >> all_debs.txt && cat all_debs.txt | while read fn; do dpkg-deb -x $fn /home/username/testing; done && rm all_debs.txt
Hope it helps! Have a great day! :D