Я испытал это прежде, но Ваша проблема могла бы отличаться. Так или иначе, если то, что я сделал, помогает Вам затем хороший.
Некоторые провода USB стары и не сделаны передать достаточно питания привести в действие более требовательные устройства. Некоторые USB-порты стары и не удаются передать достаточно питания также.
У меня есть жесткий диск, которые идут с проводом USB, который имел 2 две головы для соединения с компьютером. На более новом ПК мне может сойти с рук использование просто головы USB с 'более массивным' проводом. На более новом ПК я должен включить обе головы к компьютеру, каждый используется для передачи данных и другого для передачи любой дополнительной мощности, в которой, возможно, нуждался бы haddrive, когда это начинает вращаться быстрее.
Действительно ли Ваш провод USB стар? Я предполагаю, что это не, если Вы не смешиваетесь вокруг своих проводов USB, что у Вас есть ложь вокруг. Действительно ли Ваш компьютер является более старым? Возможно, это - сам USB-порт, который не может поставить питание жесткому диску.
Если можно включить устройство к 'современному' компьютеру без проблем затем, я указываю на проблему на USB-порт.
Жесткий диск будет вращаться до такой степени, когда, он должен потреблять больше энергии и затем когда это не получает питание, он заикается, подает звуковой сигнал, потому что материал не идет путем, которым он запланировал, и затем или 'перезагрузки' и попытки вращаться снова или простаивает, пока Вы не подключаете повторно его, в зависимости от диска.
Я мог бы быть абсолютно неправым, но это произошло со мной.
Можно сделать это путем сообщения wget
производить его полезную нагрузку к stdout (с флагом -O-
) и подавите его собственный вывод (с флагом -q
):
wget -qO- your_link_here | tar xvz -
Указывать целевой каталог:
wget -qO- your_link_here | tar xvz - -C /target/directory
Обновление
Если у Вас, оказывается, есть GNU tar
wget -qO- your_link_here | tar --transform 's/^dbt2-0.37.50.3/dbt2/' -xvz
должен позволить Вам делать все это за один шаг.
-q
спокойно
-O -
вывод к stdout
Эта острота добивается цели:
tar xvzf -C /tmp/ < <(wget -q -O - http://foo.com/myfile.tar.gz)
короткое объяснение: правая сторона в круглой скобке выполняется сначала (-q
говорит wget делать это бесшумно, -O -
используется для записи вывода в stdout).
Затем мы создаем именованный канал с помощью оператора замены процесса от Bash <(
создать именованный канал. Таким образом, мы создаем временный дескриптор файла и затем направляем содержание того дескриптора к tar с помощью <
оператор перенаправления файла.
Другой вариант — использовать curl
, который по умолчанию записывает в стандартный вывод:
curl -s some_url | tar xvz -C /tmp
Именованный канал с решением для стандартного ввода и обратите внимание на флаги для tar-xvz
tar -xvz -C /tmp/ -f <(wget -q -O - https://github.com/user/repo/release/download/v/v.tar.gz)