Установка Chrome в Linux без необходимости быть пользователем root

23

Как я могу установить Chrome на Linux без необходимости входа в систему как root?

Обратите внимание, что я хочу использовать Chrome, а не Chromium.

Если я перехожу на официальную страницу загрузки, я получаю выбор между:

Please select your download package:
32 bit .deb (For Debian/Ubuntu)
64 bit .deb (For Debian/Ubuntu)
32 bit .rpm (For Fedora/openSUSE)
64 bit .rpm (For Fedora/openSUSE) 

Могу ли я каким-то образом извлечь и установить Chrome из .deb или .rpm без необходимости быть пользователем root? Или есть другая ссылка, которую я пропустил?

SyntaxT3rr0r
источник
1
Это единственное, что мне нравится в Windows: я могу установить Google Chrome в школе.
правильном направлении
@Raked S: хорошо, в Windows, используя «portable xxx», вы можете установить практически любое приложение, не будучи администратором ... Здесь я мог бы использовать Chromium, но я не понимаю: я почти уверен, что были .tar.gz для предыдущие версии Chrome.
СинтаксисT3rr0r

Ответы:

22

Я успешно извлек RPM-версию Fedora / OpenSUSE в свой домашний каталог и оттуда запустил chrome. Вам просто нужно убедиться, что символические ссылки для библиотек все есть. Это предполагает, что область библиотек уже установлена, и $ HOME / bin находится в моем $ PATH.

Я только что побежал:

mkdir ~/chrome; cd ~/chrome
rpm2cpio ~/Download/google-chrome-stable_current_x86_64.rpm | cpio -id
cd opt/google/chrome
ln -s /usr/lib64/libnss3.so libnss3.so.1d
ln -s /usr/lib64/libnssutil3.so libnssutil3.so.1d
ln -s /usr/lib64/libsmime3.so libsmime3.so.1d
ln -s /lib64/libplc4.so libplc4.so.0d
ln -s /lib64/libnspr4.so libnspr4.so.0d
ln -s /lib64/libbz2.so.1.0.6 libbz2.so.1.0
ln -s ~/chrome/opt/google/chrome/google-chrome ~/bin/google-chrome

Теперь, если у вас еще не установлены все эти библиотеки или есть другие зависимости для двоичного файла chrome, которые не удовлетворены, вам может потребоваться собрать и установить их в своем домашнем каталоге. Google Chrome услужливо добавляет ~ / chrome / opt / google / chrome / lib в $ LD_LIBRARY_PATH, чтобы вы могли установить эти дополнительные зависимости там.

jsbillings
источник
@jsbillings: хорошо, круто +1, звучит великолепно. Я постараюсь сделать это.
СинтаксисT3rr0r
@jsbillings: просто вопрос: вы сделали это, потому что у вас не было root-доступа или просто чтобы помочь мне?
СинтаксисT3rr0r
1
@ SyntaxT3rr0r: Я пытался заставить Chrome работать в системах RHEL5 в моем офисе некоторое время, поэтому я уже проделывал подобные шаги раньше. К сожалению, в RHEL5 больше проблем, чем в приведенном выше примере, поскольку Chrome использует API более новых версий glib, gtk, pango, cairo и т. Д. Надеюсь, вы не столкнулись с таким испытанием.
Jsbillings
1
@ SyntaxT3rr0r: я согласен. RPM для Google Chrome еще более коварен: он создает задание cron, которое постоянно устанавливает репозиторий yum для Google Chrome, который, вероятно, можно использовать для отслеживания пользователей и возможного выпуска другого нежелательного программного обеспечения в системе, если вы не обращаете пристального внимания на то, где обновления приходят от.
jsbillings
1
@ user10508: Вы можете переопределить путь в вашей среде через export CHROME_DEVEL_SANDBOX=/path/to/chrome-sandbox. Я обнаружил, что должен был запустить chrome с этой --no-sandboxопцией, чтобы работать без двоичного файла setuid root chrome-sandbox.
loopforever