Ваш вопрос задан в stackoverflow https://stackoverflow.com/questions/13756800/how-to-download-all-dependencies-and-packages-to-directory
. Скопируйте ответ здесь с моими обновлениями.
# aptitude clean
# aptitude --download-only install <your_package_here>=<version_here>
# cp /var/cache/apt/archives/*.deb <your_directory_here>
Но комментарий выше комментируется
Это работает только в том случае, если у вас нет пакета или его зависимостей, установленных локально.Еще один ответ оттуда.
Подход aptitude --download-only ... работает только в том случае, если у вас есть debian-дистрибутив с подключением к Интернету в ваших руках.
Подход aptitude --download-only ... работает только в том случае, если у вас есть debian-дистрибутив с подключением к Интернету в ваших руках.
apt-get --print-uris --yes install <my_package_name> | grep ^\' | cut -d\' -f2 >downloads.list
перемещает файл downloads.list (или не linux), и запустите:
wget --input-file myurilist
переместите файл downloads.list на подключенную Linux-машину (или не linux) и запустите: [!d12 ]
credits: http://www.tuxradar.com/answers/517
кредиты: http://www.tuxradar.com/answers/517 16]
В этом ответе есть два комментария.
Это работает, только если у вас нет установленного локального пакета или его зависимостей.
Добавление [ f5] в строку apt-get удаляет необходимость в grep (и необходимость --assume-yes)Подход apt-get работает только тогда, когда пакет не установлен - A. [!d22 ]
Я бы использовал контрольные группы, чтобы выполнить то, что вы просите.
Пожалуйста, прочитайте перед выполнением следующих инструкций: я прочитал на сайте документации RedHat, что libcgroups устарели недавно. RedHat предоставляет руководство для создания групп управления с помощью systemd здесь.
Кроме того, в описанных ниже методах * text * обозначает число или имя файла, которые будут определены пользователем.
2] Пожалуйста, прочитайте перед выполнением следующих инструкций:
Вы можете установить libcgroups, который содержит ряд утилит для создания групп, таких как cgcreate и cgclassify, набрав sudo apt install libcgroups. После установки выполните следующие действия:
Создайте группу с названием sqlgroup (или все, что вы хотите назвать) Тип cgcreate -g memory,cpu:sqlgroup Установите ограничение памяти. cgset -r memory.limit_in_bytes=$((*mathExpressionForDesiredLimit*)) sqlgroup Связать новую группу с требуемым процессом управления. Если процесс в настоящее время запущен, используйте cgclassify, набрав cgclassify -g memory,cpu:sqlgroup $(*PID of mysql process*). Если процесс не запущен, вы можете использовать cgexec, набрав cgexec cpu,memory:sqlgroup *processName* *additional arguments*Метод второй: Ручная настройка
Вы может также выполнить это вручную без установки дополнительных пакетов, используя следующие ( Метод второй: Ручная настройка У вас должен быть systemd 232 или более поздняя версия. systemctl --version | grep systemd содержит текущую информацию о версии):
9] Создайте группу, называемую sqlgroup (или все, что вы хотите назвать) Тип cgcreate -g memory,cpu:sqlgroup Установите ограничение памяти для процесса, создав файл под созданной вами папкой groupname, которая содержит ограничение памяти в байтах. Это можно сделать, используя: echo amount_in_bytes > /sys/fs/cgroup/memory/groupname/memory.limit_in_bytes. Не изменяйте имя memory.limit_in_bytes. Установите ограничение памяти. cgset -r memory.limit_in_bytes=$((*mathExpressionForDesiredLimit*)) sqlgroupБолее сложные параметры конфигурации в отношении групп можно найти здесь здесь .
Я бы использовал контрольные группы, чтобы выполнить то, что вы просите.
Пожалуйста, прочитайте перед выполнением следующих инструкций: я прочитал на сайте документации RedHat, что libcgroups устарели недавно. RedHat предоставляет руководство для создания групп управления с помощью systemd здесь.
Кроме того, в описанных ниже методах * text * обозначает число или имя файла, которые будут определены пользователем.
Пожалуйста, прочитайте перед выполнением следующих инструкций:
Вы можете установить libcgroups, который содержит ряд утилит для создания групп, таких как cgcreate и cgclassify, набрав sudo apt install libcgroups. После установки выполните следующие действия:
Создайте группу с названием sqlgroup (или все, что вы хотите назвать) Тип cgcreate -g memory,cpu:sqlgroup Установите ограничение памяти. cgset -r memory.limit_in_bytes=$((*mathExpressionForDesiredLimit*)) sqlgroup Связать новую группу с требуемым процессом управления. Если процесс в настоящее время запущен, используйте cgclassify, набрав cgclassify -g memory,cpu:sqlgroup $(*PID of mysql process*). Если процесс не запущен, вы можете использовать cgexec, набрав cgexec cpu,memory:sqlgroup *processName* *additional arguments*Метод второй: Ручная настройка
Вы может также выполнить это вручную без установки дополнительных пакетов, используя следующие ( Метод второй: Ручная настройка У вас должен быть systemd 232 или более поздняя версия. systemctl --version | grep systemd содержит текущую информацию о версии):
Создайте группу, называемую sqlgroup (или все, что вы хотите назвать) Тип cgcreate -g memory,cpu:sqlgroup Установите ограничение памяти для процесса, создав файл под созданной вами папкой groupname, которая содержит ограничение памяти в байтах. Это можно сделать, используя: echo amount_in_bytes > /sys/fs/cgroup/memory/groupname/memory.limit_in_bytes. Не изменяйте имя memory.limit_in_bytes. Установите ограничение памяти. cgset -r memory.limit_in_bytes=$((*mathExpressionForDesiredLimit*)) sqlgroupБолее сложные параметры конфигурации в отношении групп можно найти здесь здесь .
Я бы использовал контрольные группы, чтобы выполнить то, что вы просите.
Пожалуйста, прочитайте перед выполнением следующих инструкций: я прочитал на сайте документации RedHat, что libcgroups устарели недавно. RedHat предоставляет руководство для создания групп управления с помощью systemd здесь.
Кроме того, в описанных ниже методах * text * обозначает число или имя файла, которые будут определены пользователем.
Пожалуйста, прочитайте перед выполнением следующих инструкций:
Вы можете установить libcgroups, который содержит ряд утилит для создания групп, таких как cgcreate и cgclassify, набрав sudo apt install libcgroups. После установки выполните следующие действия:
Создайте группу с названием sqlgroup (или все, что вы хотите назвать) Тип cgcreate -g memory,cpu:sqlgroup Установите ограничение памяти. cgset -r memory.limit_in_bytes=$((*mathExpressionForDesiredLimit*)) sqlgroup Связать новую группу с требуемым процессом управления. Если процесс в настоящее время запущен, используйте cgclassify, набрав cgclassify -g memory,cpu:sqlgroup $(*PID of mysql process*). Если процесс не запущен, вы можете использовать cgexec, набрав cgexec cpu,memory:sqlgroup *processName* *additional arguments*Метод второй: Ручная настройка
Вы может также выполнить это вручную без установки дополнительных пакетов, используя следующие ( Метод второй: Ручная настройка У вас должен быть systemd 232 или более поздняя версия. systemctl --version | grep systemd содержит текущую информацию о версии):
Создайте группу, называемую sqlgroup (или все, что вы хотите назвать) Тип cgcreate -g memory,cpu:sqlgroup Установите ограничение памяти для процесса, создав файл под созданной вами папкой groupname, которая содержит ограничение памяти в байтах. Это можно сделать, используя: echo amount_in_bytes > /sys/fs/cgroup/memory/groupname/memory.limit_in_bytes. Не изменяйте имя memory.limit_in_bytes. Установите ограничение памяти. cgset -r memory.limit_in_bytes=$((*mathExpressionForDesiredLimit*)) sqlgroupБолее сложные параметры конфигурации в отношении групп можно найти здесь здесь .