Как указывает Игнасио, вы можете использовать yumdownloader
.
Но для второго шага
rpm -ivh --relocate /usr=/home/username/usr --relocate /etc=/home/username/etc
или же
rpm -ivh --relocate /=/home/username/progname
наверное проще.
Если в RPM есть какие-либо сценарии, предполагающие, что они выполняются от имени пользователя root, вам также может понадобиться добавить параметр --noscripts
.
Кроме того, вы можете добавить опцию --aid
для разрешения зависимостей.
Еще одна полезная опция в этом случае - - --root
чтобы избежать rpm для записи в /var
path (так как вы не root), поэтому команда будет выглядеть примерно так:
rpm -ivh --relocate /=/home/username/progname --root /home/username/progname