Hoe Chromium installeren op Ubuntu en CentOS?

Een stapsgewijze handleiding om Headless Chromium op Ubuntu en CentOS te installeren.


Wat is Headless Chrome?

Headless Chrome is als het uitvoeren van een Chrome-browser zonder gebruikersinterface (browser), d.w.z. het draait in een headless-omgeving, wat erg handig is voor het uitvoeren van geautomatiseerde tests.

Dus, wat ontgrendelt Chrome zonder hoofd voor ons?

Een van de meest opwindende dingen is de mogelijkheid om de nieuwste en beste webplatformfuncties zoals ES6-modules, servicemedewerkers en streams te testen. Met headless chrome kun je apps schrijven en die apps testen met up-to-date rendering. Het andere dat het ontgrendelt, zijn deze geweldige functionaliteiten zoals netwerkbeperking, apparaatemulatie en codedekking.

Met Chrome zonder kop kunt u tests uitvoeren zonder zelfs maar een regel code te schrijven, dat is niet zo cool!

Je kunt ze gewoon uitvoeren via de opdrachtregel. Hieronder staan ​​enkele van de veelgebruikte vlaggen.

–screenshot #om een ​​screenshot te maken
–print-to-pdf #converting webpagina naar PDF
–dump-dom #dump DOM-gegevens (documentobjectmodel)

Chromium-installatie op Ubuntu

Stap 1: werk Ubuntu bij

Werk in het begin de pakketten in Ubuntu bij.

[email beveiligd]: ~ $ sudo apt-get update
Hit: 1 https://download.docker.com/linux/ubuntu bionic InRelease
Hit: 2 http://security.ubuntu.com/ubuntu kosmische beveiliging InRelease
Hit: 3 http://ppa.launchpad.net/ansible/ansible/ubuntu kosmische InRelease
Hit: 5 http://apt.puppetlabs.com bionic InRelease
Ign: 6 http://pkg.jenkins.io/debian-stable binary / InRelease
Hit: 7 http://us.archive.ubuntu.com/ubuntu kosmische InRelease
Hit: 8 http://ppa.launchpad.net/canonical-chromium-builds/stage/ubuntu kosmische InRelease
Hit: 9 http://pkg.jenkins.io/debian-stable binary / Release
Hit: 10 http://us.archive.ubuntu.com/ubuntu kosmische updates InRelease
Hit: 11 http://us.archive.ubuntu.com/ubuntu cosmic-backports InRelease
Hit: 4 https://packages.cloud.google.com/apt kubernetes-xenial InRelease
Pakketlijsten lezen … Klaar

Stap 2: installeer afhankelijkheden

Installeer deze afhankelijkheden die nodig zijn voor de installatie.

[email beveiligd]: ~ $ sudo apt-get install -y libappindicator1 fonts-liberation
Pakketlijsten lezen … Klaar
Afhankelijkheidsboom opbouwen
Statusinformatie lezen … Klaar
fonts-liberation is al de nieuwste versie (1: 1.07.4-7).
fonts-liberation ingesteld op handmatig geïnstalleerd.
Het volgende pakket is automatisch geïnstalleerd en is niet langer vereist:
chroom-codecs-ffmpeg-extra
Gebruik ‘sudo apt autoremove’ om het te verwijderen.
De volgende aanvullende pakketten worden geïnstalleerd:
libdbusmenu-gtk4 libindicator7
Voorgestelde pakketten:
indicator-applicatie
De volgende NIEUWE pakketten worden geïnstalleerd:
libappindicator1 libdbusmenu-gtk4 libindicator7
0 geüpgraded, 3 nieuw geïnstalleerd, 0 te verwijderen en 238 niet geüpgraded.
Moet 68,2 kB aan archieven ophalen.
Na deze bewerking wordt 280 kB extra schijfruimte gebruikt.
Ontvang: 1 http://us.archive.ubuntu.com/ubuntu cosmic / universe amd64 libdbusmenu-gtk4 amd64 16.04.1 + 18.10.20180917-0ubuntu1 [27.1 kB]
Ontvang: 2 http://us.archive.ubuntu.com/ubuntu cosmic / universe amd64 libindicator7 amd64 16.10.0 + 18.04.20180321.1-0ubuntu1 [21.7 kB]
Ontvang: 3 http://us.archive.ubuntu.com/ubuntu cosmic / universe amd64 libappindicator1 amd64 12.10.1 + 18.04.20180322.1-0ubuntu1 [19.4 kB]
Opgehaald 68,2 kB in 1s (61,1 kB / s)
Eerder niet geselecteerd pakket libdbusmenu-gtk4: amd64 selecteren.
(Database lezen … 318270 bestanden en mappen die momenteel zijn geïnstalleerd.)
Voorbereiden om uit te pakken … / libdbusmenu-gtk4_16.04.1 + 18.10.20180917-0ubuntu1_amd64.deb …
Libdbusmenu-gtk4 uitpakken: amd64 (16.04.1 + 18.10.20180917-0ubuntu1) …
Eerder niet-geselecteerde pakket-libindicator selecteren 7.
Voorbereiden om uit te pakken … / libindicator7_16.10.0 + 18.04.20180321.1-0ubuntu1_amd64.deb …
Libindicator7 uitpakken7 (16.10.0 + 18.04.20180321.1-0ubuntu1) …
Eerder niet-geselecteerd pakket libappindicator selecteren 1.
Voorbereiden om uit te pakken … / libappindicator1_12.10.1 + 18.04.20180322.1-0ubuntu1_amd64.deb …
Libappindicator1 uitpakken (12.10.1 + 18.04.20180322.1-0ubuntu1) …
Libindicator7 instellen (16.10.0 + 18.04.20180321.1-0ubuntu1) …
Libdbusmenu-gtk4 instellen: amd64 (16.04.1 + 18.10.20180917-0ubuntu1) …
Verwerkingstriggers voor libc-bin (2.28-0ubuntu1) …
Libappindicator1 instellen (12.10.1 + 18.04.20180322.1-0ubuntu1) …
Verwerkingstriggers voor libc-bin (2.28-0ubuntu1) …
libappindicator1: Deze bibliotheek wordt gebruikt om het menu door een applicatie naar een paneel te exporteren
fonts-liberation: Deze bibliotheek heeft vergelijkbare lettertypestatistieken als Arial, Times en Courier

Er kunnen gevallen zijn waarin weinig afhankelijkheden ontbreken om Chrome te installeren. Voer dus de onderstaande opdracht uit, het zal alle ontbrekende afhankelijkheden installeren die nodig zijn om chroom te installeren.

[email beveiligd]: ~ $ sudo apt-get install -f
De volgende aanvullende pakketten worden geïnstalleerd:
at-spi2-core cpp cpp-7 dconf-gsettings-backend dconf-service gcc-7-base glib-networking glib-networking-common
glib-networking-services gsettings-desktop-schema’s libappindicator3-1 libasound2 libasound2-data libatk-bridge2.0-0
libatspi2.0-0 libauthen-sasl-perl libcairo-gobject2 libcolord2 libdata-dump-perl libdbusmenu-gtk3-4 libdconf1
libdrm-amdgpu1 libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libencode-locale-perl libepoxy0 libfile-basedir-perl
libfile-desktopentry-perl libfile-listing-perl libfile-mimeinfo-perl libfont-afm-perl libfontenc1 libgl1
libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libgtk-3-0 libgtk-3-bin libgtk-3-common
libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl
libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-onderhandelen-perl libice6 libindicator3-7
libio-html-perl libio-socket-ssl-perl libipc-systeem-simple-perl libisl19 libjson-glib-1.0-0 libjson-glib-1.0-common
liblcms2-2 libllvm9 liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmpc3 libnet-dbus-perl
libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl libnspr4 libnss3 libpciaccess0 libproxy1v5 librest-0.7-0
libsensors4 libsm6 libsoup-gnome2.4-1 libsoup2.4-1 libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl
libwayland-client0 libwayland-cursor0 libwayland-egl1 libwww-perl libwww-robotrules-perl libx11-protocol-perl
libx11-xcb1 libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-vorm0 libxcb-sync1 libxft2
libxkbcommon0 libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxmu6 libxpm4 libxshmfence1 libxss1 libxt6
libxtst6 libxv1 libxxf86dga1 libxxf86vm1 perl-openssl-defaults x11-common x11-utils x11-xserver-utils xdg-utils
Voorgestelde pakketten:
cpp-doc gcc-7-locales indicator-applicatie libasound2-plugins alsa-utils libdigest-hmac-perl libgssapi-perl colord
gvfs liblcms2-utils libcrypt-ssleay-perl lm-sensoren libauthen-ntlm-perl libunicode-map8-perl libunicode-string-perl
xml-twig-tools mesa-utils nickle cairo-5c xorg-docs-core
De volgende NIEUWE pakketten worden geïnstalleerd:
at-spi2-core cpp cpp-7 dconf-gsettings-backend dconf-service gcc-7-base glib-networking glib-networking-common
glib-networking-services gsettings-desktop-schema’s libappindicator3-1 libasound2 libasound2-data libatk-bridge2.0-0
libatspi2.0-0 libauthen-sasl-perl libcairo-gobject2 libcolord2 libdata-dump-perl libdbusmenu-gtk3-4 libdconf1
libdrm-amdgpu1 libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libencode-locale-perl libepoxy0 libfile-basedir-perl
libfile-desktopentry-perl libfile-listing-perl libfile-mimeinfo-perl libfont-afm-perl libfontenc1 libgl1
libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libgtk-3-0 libgtk-3-bin libgtk-3-common
libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl
libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-onderhandelen-perl libice6 libindicator3-7
libio-html-perl libio-socket-ssl-perl libipc-systeem-simple-perl libisl19 libjson-glib-1.0-0 libjson-glib-1.0-common
liblcms2-2 libllvm9 liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmpc3 libnet-dbus-perl
libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl libnspr4 libnss3 libpciaccess0 libproxy1v5 librest-0.7-0
libsensors4 libsm6 libsoup-gnome2.4-1 libsoup2.4-1 libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl
libwayland-client0 libwayland-cursor0 libwayland-egl1 libwww-perl libwww-robotrules-perl libx11-protocol-perl
libx11-xcb1 libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-vorm0 libxcb-sync1 libxft2
libxkbcommon0 libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxmu6 libxpm4 libxshmfence1 libxss1 libxt6
libxtst6 libxv1 libxxf86dga1 libxxf86vm1 perl-openssl-defaults x11-common x11-utils x11-xserver-utils xdg-utils
0 geüpgraded, 117 nieuw geïnstalleerd, 0 om te verwijderen en 58 niet geüpgraded.
1 niet volledig geïnstalleerd of verwijderd.
Moet 40,7 MB aan archieven krijgen.
Na deze bewerking wordt 369 MB extra schijfruimte gebruikt.
Wil je doorgaan? [J / n] J
Opgehaald 40,7 MB in 4s (9470 kB / s)
Sjablonen uit pakketten halen: 100%

Stap 3: Download Chrome

Download het google chrome stable-pakket voor het Ubuntu-systeem.

[email beveiligd]: ~ $ wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
–15-01-2020 13:58:41 – https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
Dl.google.com (dl.google.com) oplossen … 172.217.163.78, 2404: 6800: 4007: 80c :: 200e
Verbinding maken met dl.google.com (dl.google.com) | 172.217.163.78 |: 443 … verbonden.
HTTP-verzoek verzonden, in afwachting van antwoord … 200 OK
Lengte: 62204098 (59M) [applicatie / x-debian-pakket]
Opslaan op: ‘google-chrome-stable_current_amd64.deb’

google-chrome-stable_current_amd64. 100% [================================================= ==================>] 59.32M 11.1MB / s in 29s

2020-01-15 13:59:10 (2,04 MB / s) – ‘google-chrome-stable_current_amd64.deb’ opgeslagen [62204098/62204098]

Stap 4: Installeer Chrome

Installeer het stabiele pakket.

[email beveiligd]: ~ $ sudo dpkg -i google-chrome * .deb
Eerder niet geselecteerd pakket google-chrome-stable selecteren.
(Database lezen … 318285-bestanden en mappen die momenteel zijn geïnstalleerd.)
Voorbereidingen treffen om google-chrome-stable_current_amd64.deb uit te pakken …
Uitpakken google-chrome-stable (79.0.3945.117-1) …
Google-chrome-stable instellen (79.0.3945.117-1) …
update-alternatieven: / usr / bin / google-chrome-stable gebruiken om / usr / bin / x-www-browser (x-www-browser) in automatische modus te voorzien
update-alternatieven: / usr / bin / google-chrome-stable gebruiken om / usr / bin / gnome-www-browser (gnome-www-browser) in automatische modus te bieden
update-alternatieven: / usr / bin / google-chrome-stable gebruiken om / usr / bin / google-chrome (google-chrome) in de automatische modus te bieden
Verwerkingstriggers voor gnome-menu’s (3.13.3-11ubuntu2) …
Verwerkingstriggers voor desktop-file-utils (0.23-3ubuntu2) …
Verwerkingstriggers voor mime-ondersteuning (3.60ubuntu1) …
Verwerkingstriggers voor man-db (2.8.4-2) …

Stap 5: Controleer de Chrome-versie

Controleer de Google Chrome-versie om te bevestigen dat de installatie is voltooid.

[email beveiligd]: ~ $ google-chrome-stable -version
Google Chrome 79.0.3945.117

Optioneel: voer Chrome Headless uit

Laat me je een voorbeeld laten zien van het uitvoeren van chroom in headless-modus.

Ik voer Chrome uit in de headless-modus en alle inhoud van https://gf.dev/ wordt opgeslagen als een pdf-bestand.

[email beveiligd]: ~ $ google-chrome-stable – headless –disable-gpu –print-to-pdf https://gf.dev/
[0115 / 140930.772108: INFO: headless_shell.cc (620)] Geschreven naar bestand output.pdf.

U kunt een bestand output.pdf zien

[email beveiligd]: ~ $ ls -l uit *
-rw ——- 1 geekflare geekflare 80799 15 januari 14:09 output.pdf
[email beveiligd]: ~ $

Vervolgens zal ik u laten zien hoe u dezelfde configuratie in het CentOS-systeem kunt uitvoeren.

Chromium-installatie op CentOS

Stap 1: CentOS updaten

Werk het CentOS-systeem bij met de onderstaande opdracht.

[[email beveiligd] ~] $ sudo yum update

Stap 2: Maak een Chrome-repository

Voeg Google Chrome Repository toe aan het systeem. Maak een bestand google-chrome.repo in /etc/yum.repos.d/ en voeg de onderstaande details toe.

[[email beveiligd] ~] $ sudo gedit /etc/yum.repos.d/google-chrome.repo

[google-chrome]
name = google-chrome
baseurl = http: //dl.google.com/linux/chrome/rpm/stable/$basearch
ingeschakeld = 1
gpgcheck = 1
gpgkey = https: //dl-ssl.google.com/linux/linux_signing_key.pub

Stap 3: Installeer Chrome

Voer de onderstaande yum-opdracht uit om Google Chrome op het CentOS-systeem te installeren.

[[email beveiligd] ~] $ sudo yum installeer google-chrome-stable
Laatste controle op vervaldatum van metagegevens: 0:04:04 geleden op wo 22 jan 2020 13:06:24 EST.
Afhankelijkheden opgelost.
================================================== ==============================
Pakket Arch Version Repository Size
================================================== ==============================
Installeren:
google-chrome-stabiel x86_64 79.0.3945.130-1 google-chrome 60 M
Afhankelijkheden installeren:
libXScrnSaver x86_64 1.2.3-1.el8 AppStream 31 k
libappindicator-gtk3 x86_64 12.10.0-19.el8 AppStream 43 k
libdbusmenu x86_64 16.04.0-12.el8 AppStream 140 k
libdbusmenu-gtk3 x86_64 16.04.0-12.el8 AppStream 41 k
libindicator-gtk3 x86_64 12.10.1-14.el8 AppStream 70 k
liberation-fonts noarch 1: 2.00.3-4.el8 BaseOS 19 k
liberation-serif-fonts noarch 1: 2.00.3-4.el8 BaseOS 607 k

Transactieoverzicht
================================================== ==============================
Installeer 8 pakketten

Totale downloadgrootte: 60 M
Geïnstalleerde grootte: 213 M
Is dit ok [y / N]: y
Pakketten downloaden:
(1/8): libXScrnSaver-1.2.3-1.el8.x86_64.rpm 146 kB / s | 31 kB 00:00
(2/8): libappindicator-gtk3-12.10.0-19.el8.x86_ 171 kB / s | 43 kB 00:00
(3/8): libdbusmenu-gtk3-16.04.0-12.el8.x86_64.r 691 kB / s | 41 kB 00:00
(4/8): libindicator-gtk3-12.10.1-14.el8.x86_64. 558 kB / s | 70 kB 00:00
(5/8): liberation-fonts-2.00.3-4.el8.noarch.rpm 74 kB / s | 19 kB 00:00
(6/8): liberation-serif-fonts-2.00.3-4.el8.noar 1.3 MB / s | 607 kB 00:00
(7/8): libdbusmenu-16.04.0-12.el8.x86_64.rpm 121 kB / s | 140 kB 00:01
(8/8): google-chrome-stable-79.0.3945.130-1.x86 8,4 MB / s | 60 MB 00:07
——————————————————————————–
Totaal 6,5 MB / s | 60 MB 00:09
waarschuwing: /var/cache/dnf/google-chrome-eb0d6f10ccbdafba/packages/google-chrome-stable-79.0.3945.130-1.x86_64.rpm: Header V4 DSA / SHA1 Signature, key ID 7fac5991: NOKEY
google-chrome 49 kB / s | 10 kB 00:00
GPG-sleutel 0x7FAC5991 importeren:
Gebruikersnaam : "Ondertekeningssleutel voor Google Linux-pakket <[email beveiligd]>"
Vingerafdruk: 4CCA 1EAF 950C EE4A B839 76DC A040 830F 7FAC 5991
Van: https://dl-ssl.google.com/linux/linux_signing_key.pub
Is dit ok [y / N]: y
Sleutel succesvol geïmporteerd
GPG-sleutel 0xD38B4796 importeren:
Gebruikersnaam : "Google Inc. (ondertekeningsautoriteit voor Linux-pakketten) <[email beveiligd]>"
Vingerafdruk: EB4C 1BFD 4F04 2F6D DDCC EC91 7721 F63B D38B 4796
Van: https://dl-ssl.google.com/linux/linux_signing_key.pub
Is dit ok [y / N]: y
Sleutel succesvol geïmporteerd
Transactiecontrole uitvoeren
Transactiecontrole is geslaagd.
Transactietest wordt uitgevoerd
Transactietest geslaagd.
Transactie wordt uitgevoerd
Voorbereiden: 1/1
Installeren: libdbusmenu-16.04.0-12.el8.x86_64 1/8
Installeren: libdbusmenu-gtk3-16.04.0-12.el8.x86_64 2/8
Installeren: liberation-serif-fonts-1: 2.00.3-4.el8.noarch 3/8
Installeren: liberation-fonts-1: 2.00.3-4.el8.noarch 4/8
Installeren: libindicator-gtk3-12.10.1-14.el8.x86_64 5/8
Installeren: libappindicator-gtk3-12.10.0-19.el8.x86_64 6/8
Installeren: libXScrnSaver-1.2.3-1.el8.x86_64 7/8
Scriptlet wordt uitgevoerd: google-chrome-stable-79.0.3945.130-1.x86_64 8/8
Installeren: google-chrome-stable-79.0.3945.130-1.x86_64 8/8
Scriptlet wordt uitgevoerd: google-chrome-stable-79.0.3945.130-1.x86_64 8/8
Omleiden naar / bin / systemctl start atd.service

Verifiëren: libXScrnSaver-1.2.3-1.el8.x86_64 1/8
Verifiëren: libappindicator-gtk3-12.10.0-19.el8.x86_64 2/8
Verifiëren: libdbusmenu-16.04.0-12.el8.x86_64 3/8
Verifiëren: libdbusmenu-gtk3-16.04.0-12.el8.x86_64 4/8
Verifiëren: libindicator-gtk3-12.10.1-14.el8.x86_64 5/8
Verifiëren: liberation-fonts-1: 2.00.3-4.el8.noarch 6/8
Verifiëren: liberation-serif-fonts-1: 2.00.3-4.el8.noarch 7/8
Verifiëren: google-chrome-stable-79.0.3945.130-1.x86_64 8/8

Geïnstalleerd:
google-chrome-stable-79.0.3945.130-1.x86_64
libXScrnSaver-1.2.3-1.el8.x86_64
libappindicator-gtk3-12.10.0-19.el8.x86_64
libdbusmenu-16.04.0-12.el8.x86_64
libdbusmenu-gtk3-16.04.0-12.el8.x86_64
libindicator-gtk3-12.10.1-14.el8.x86_64
liberation-fonts-1: 2.00.3-4.el8.noarch
liberation-serif-fonts-1: 2.00.3-4.el8.noarch

Compleet!

Stap 4: Controleer de Chrome-versie

Controleer de Google Chrome-versie om te bevestigen dat de installatie is voltooid.

[[email beveiligd] ~] $ google-chrome -versie
Google Chrome 79.0.3945.130

Optioneel: voer Chrome Headless uit

Laat me je een voorbeeld laten zien van het uitvoeren van chroom in headless-modus op CentOS.

Ik neem het voorbeeld van het maken van een screenshot. Deze onderstaande opdracht voert chroom uit in de headless-modus en alle inhoud van https://www.chromestatus.com/ wordt opgeslagen als een pdf-bestand.

[[email beveiligd] ~] $ google-chrome-stable – headless –disable-gpu –print-to-pdf https://www.chromestatus.com/
[0122 / 131602.193881: INFO: headless_shell.cc (620)] Geschreven naar bestand output.pdf.

Het output.pdf-bestand is gemaakt met alle inhoud van https://www.chromestatus.com/

[[email beveiligd] ~] $ ls -l
totaal 61208
drwxr-xr-x. 2 geekflare geekflare 6 Sep 25 11:49 Desktop
drwxr-xr-x. 2 geekflare geekflare 6 Sep 25 11:49 Documenten
drwxr-xr-x. 2 geekflare geekflare 6 Sep 25 11:49 Downloads
-rw-rw-r–. 1 geekflare geekflare 180 22 jan 13:05 google-chrome.repo
-rw ——-. 1 geekflare geekflare 146776 22 jan 13:16 output.pdf

Dat ging allemaal over hoe Chrome op Ubuntu te installeren & CentOS en voer het uit in de headless-modus.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map