Kuidas juurutada Ghost v0.11 LTS Ubuntu 16.04-s

Ghost on avatud lähtekoodiga ajaveebiplatvorm, mis on arendajate ja tavakasutajate seas populaarsust kogunud alates 2013. aasta väljalaskmisest. See keskendub sisule ja ajaveebi pidamisele. Ghosti juures on kõige atraktiivsem selle lihtne, puhas ja tundlik disain. Saate kirjutada oma ajaveebi postitusi mobiiltelefonist. Ghosti sisu on kirjutatud Markdowni keeles. Ghost sobib suurepäraselt üksikisikutele või väikestele kirjanike rühmadele.

Selles juhendis seadistame ja juurutame Ubuntu 16.04 LTS VPS-is turvalise Ghost v0.11.x LTS ajaveebi, kasutades Let's Encrypt , Certbot , Node.js , NPM , NGINX ja MySQL .

Nõuded

  • Registreerige (ostke) domeeninimi.
  • Ubuntu server 16.04 serveri eksemplar vähemalt 1 GB muutmäluga .
  • Sudo kasutaja.

Enne alustamist

  1. Looge uus mitte-root kasutajakonto:

    adduser johndoe --gecos "John Doe"
    
  2. Muutke see superkasutajaks, lisades selle sudorühma:

    usermod -aG sudo johndoe
    
  3. Lülitu uuele kasutajale:

    su - johndoe
    
  4. Värskendage oma operatsioonisüsteemi tarkvara:

    sudo apt update && sudo apt upgrade -y
    
  5. Seadistage ajavöönd:

    sudo dpkg-reconfigure tzdata
    
  6. Paigaldage vajalikud tööriistad:

    sudo apt install -y build-essential zip unzip vim nano openssl wget curl git apt-transport-https
    
  7. Vajadusel taaskäivitage süsteem:

    sudo shutdown -r now
    

Installige Certbot

NOTE: Before starting this step, ensure that you have set DNS records for your domain.

Kasutame Let's Encrypt CA ja EFF- i Certbot klienti, et hankida oma Ghost ajaveebi SSL/TLS sertifikaat. Ärge unustage asendada kõiki eksemplare blog.domain.tldoma domeeninimega.

  1. Installige Pythoniga tehtud Certboti (endine Let's Encrypt client ) sertifikaadihaldustarkvara:

    sudo apt update
    sudo apt install -y software-properties-common
    sudo add-apt-repository -y ppa:certbot/certbot
    sudo apt update
    sudo apt install -y certbot
    
  2. Kontrollige Certboti versiooni:

    certbot --version
    # certbot 0.14.2
    
  3. Hankige RSA sertifikaat, kasutades eraldiseisvat autentimismeetodit (pluginat):

    sudo certbot certonly --standalone --domains blog.domain.tld --rsa-key-size 2048 --must-staple --email [email protected] --no-eff-email --agree-tos
    
    # IMPORTANT NOTES:
    #  - Congratulations! Your certificate and chain have been saved at 
       /etc/letsencrypt/live/blog.domain.tld/fullchain.pem. 
    #  Your cert will expire on YYYY-MM-DD. . . .
    #  . . .
    

    Pärast läbimas eelnevaid samme, oma tunnistuse ja privaatvõti saab olema /etc/letsencrypt/live/blog.domain.tldkataloogis.

Installige Node.js ja NPM

NOTE: Ghost currently supports Node.js versions 4.5+ and 6.9+ only.

Ghost on üles ehitatud Node.js-ile. Me installime Ghosti jaoks soovitatud versiooni, mis on v6 Boron LTSselle kirjutamise ajal.

  1. Laadige alla ja installige Node.js v6 LTS:

    curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
    sudo apt install -y nodejs
    
  2. Kontrollige Node.js ja NPM versiooni:

    node -v && npm -v
    # v6.11.1
    # 3.10.10
    

Installige MySQL

Vaikimisi on Ghost konfigureeritud kasutama SQLite'i andmebaasi, mis ei vaja konfigureerimist.

Teise võimalusena saab Ghosti kasutada ka MySQL-i andmebaasiga, muutes andmebaasi konfiguratsiooni. Esmalt peate looma andmebaasi ja kasutaja, seejärel saate muuta olemasolevat sqlite3 konfiguratsiooni.

  1. Laadige alla ja installige MySQL:

    sudo apt install -y mysql-server
    

    NOTE: During the installation, you will be prompted for MySQL "root" user password. You should set a secure password for the MySQL "root" user.

  2. Kontrollige MySQL-i versiooni:

    mysql --version
    # mysql  Ver 14.14 Distrib 5.7.18, for Linux (x86_64) using  EditLine wrapper
    
  3. Kontrollige, kas MySQL-i deemon on käivitunud ja töötab:

    sudo systemctl status mysql.service
    sudo systemctl is-enabled mysql.service
    
  4. Käivitage mysql_secure_installationskript, et oma andmebaasi veidi kaitsta:

    sudo mysql_secure_installation
    
  5. Logige MySQL-i sisse juurkasutajana:

    mysql -u root -p
    # Enter password:
    
  6. Looge uus MySQL-i andmebaas ja kasutaja:

    create database dbname;
    grant all on dbname.* to 'user' identified by 'password';
    
  7. Välju MySQL-ist:

    exit
    

Installige NGINX

  1. Lae alla ja installige uusim põhilistele versioon nginx ametlikust nginx hoidla:

    wget https://nginx.org/keys/nginx_signing.key
    sudo apt-key add nginx_signing.key
    rm nginx_signing.key
    sudo -s
    printf "deb https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \n" >> /etc/apt/sources.list.d/nginx_mainline.list
    exit
    sudo apt update
    sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt nginx-nr-agent
    
  2. Kontrollige, kas see on installitud, kontrollides NGINX-i versiooni:

    sudo nginx -v
    # nginx version: nginx/1.13.3
    
  3. Kontrollige olekut, lubage ja käivitage NGINX-teenus (deemon):

    sudo systemctl status nginx.service # inactive (dead)
    sudo systemctl enable nginx.service
    sudo systemctl start nginx.service
    
  4. Looge /etc/nginx/sslkataloog ja looge uus Diffie-Hellmani ( DH ) rühm:

    sudo mkdir -p /etc/nginx/ssl
    sudo openssl dhparam -out /etc/nginx/ssl/dhparams-2048.pem 2048
    
  5. Loo blog.domain.tldvirtuaalse hosti logikataloog :

    sudo mkdir -p /var/log/nginx/blog.domain.tld
    
  6. Konfigureerige NGINX HTTP ( S ) pöördpuhverserverina :

    sudo vim /etc/nginx/conf.d/ghost.conf
    
  7. Kleepige sisse järgmine /etc/nginx/conf.d/ghost.conf:

    # domain: blog.domain.tld
    # public: /var/www/ghost
    
    upstream ghost_app {
        server 127.0.0.1:2368;
        keepalive 32;
    }
    
    server {
        listen [::]:80 default_server;
        listen 80 default_server;
        listen [::]:443 ssl http2 default_server;
        listen 443 ssl http2 default_server;
    
        server_name blog.domain.tld;
        root /var/www/ghost;
    
        error_log /var/log/nginx/blog.domain.tld/error.log;
        access_log /var/log/nginx/blog.domain.tld/access.log;
    
        client_max_body_size 100M;
    
        ssl_certificate /etc/letsencrypt/live/blog.domain.tld/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/blog.domain.tld/privkey.pem;
        ssl_dhparam ssl/dhparams-2048.pem;
    
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
        ssl_prefer_server_ciphers on;
    
        ssl_buffer_size 4K;
    
        ssl_session_timeout 1d;
        ssl_session_cache shared:SSL:50M;
        ssl_session_tickets off;
    
        ssl_stapling on;
        ssl_stapling_verify on;
        ssl_trusted_certificate /etc/letsencrypt/live/blog.domain.tld/chain.pem;
    
        resolver 8.8.8.8 8.8.4.4 valid=300s;
    
        location / {
            proxy_pass http://ghost_app;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_hide_header X-Powered-By;
    
            proxy_http_version 1.1;
            proxy_set_header Connection "";
    
        }
    }
    
  8. Salvestage ja testige NGINX-i konfiguratsiooni süntaksivigade suhtes:

    sudo nginx -t
    
  9. Laadige uuesti NGINX-i konfiguratsioon:

    sudo systemctl reload nginx.service
    

Installige Ghost

NOTE: If you want to host multiple Ghost blogs on same VPS, each Ghost instance must be running on a separate port.

  1. Loo dokumendi juurkataloog:

    sudo mkdir -p /var/www/
    
  2. Loo uus ghostkasutaja:

    sudo adduser --shell /bin/bash --gecos 'Ghost application' --disabled-password ghost
    
  3. Laadige Ghost alla:

    curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.10/Ghost-0.11.10.zip -o ghost.zip
    
  4. Pakkige Ghost lahti /var/www/ghostkataloogi (soovitatav installikoht):

    sudo unzip -uo ghost.zip -d /var/www/ghost
    rm ghost.zip
    
  5. Liikuge uude ghostkataloogi:

    cd /var/www/ghost
    
  6. /var/www/ghostKataloogi omandiõiguse muutmine :

    sudo chown -R ghost:ghost .
    
  7. Lülitu uuele ghostkasutajale:

    sudo su - ghost
    
  8. Navigeerige dokumendi juure /var/www/ghost:

    cd /var/www/ghost
    
  9. Installige Ghost ainult tootmissõltuvustega. Kui see on lõppenud, installitakse Ghost:

    npm install --production
    
  10. Seadistamine Ghost muutes url, mailja databasevara productionobjekti sees config.jsfaili:

    cp config.example.js config.js
    vim /var/www/ghost/config.js
    
    
    var path = require('path'),
        config;
    
    config = {
        // ### Production
        // When running Ghost in the wild, use the production environment.
        // Configure your URL and mail settings here
        production: {
            url: 'https://blog.domain.tld',
            mail: {
                transport: 'SMTP',
                options: {
                    service: 'Mailgun',
                    auth: {
                        user: '',
                        pass: ''
                    }
                }
            },
            database: {
                client: 'mysql',
                connection: {
                    host: '127.0.0.1',
                    user: 'your_database_user',
                    password: 'your_database_password',
                    database: 'your_database_name',
                    charset: 'utf8'
                },
                debug: false
            },
            // . . .
            // . . .
    

    NOTE: You should configure mail settings also. Consult the official Ghost documentation on how to do that.

  11. Käivitage Ghost tootmiskeskkonnas:

    npm start --production
    

    Ghost hakkab nüüd jooksma. Nii ajaveebi esiosa kui ka administraatoriliides on kaitstud HTTPS-iga ja HTTP/2 töötab ka. Saate avada oma brauseri ja külastada saiti aadressil https://blog.domain.tld. Ärge unustage asendada blog.domain.tldoma domeeninimega.

  12. Lülitage Ghost-protsess välja, vajutades CTRL+ Cja väljuge ghost-kasutaja juurest tagasi juurkasutajaks:

    exit
    

Ghosti käitamine süsteemiteenusena

Kui sulgete terminaliseansi oma VPS-iga, suletakse ka teie ajaveeb. See ei ole hea. Selle vältimiseks kasutame systemd. See hoiab meie ajaveebi üleval 24/7.

  1. Looge ghost.servicesüsteemiüksuse fail. Käivitage sudo vim /etc/systemd/system/ghost.serviceja kopeerige/kleepige allolev sisu:

    [Unit]
    Description=Ghost - the professional publishing platform
    Documentation=https://docs.ghost.org/v0.11.9
    After=network.target
    
    [Service]
    Type=simple
    # Edit WorkingDirectory, User and Group as needed
    WorkingDirectory=/var/www/ghost
    User=ghost
    Group=ghost
    ExecStart=/usr/bin/npm start --production
    ExecStop=/usr/bin/npm stop --production
    Restart=always
    SyslogIdentifier=Ghost
    
    [Install]
    WantedBy=multi-user.target
    
  2. Lubage ja käivitage ghost.service:

    sudo systemctl enable ghost.service && sudo systemctl start ghost.service
    
  3. Kontrolli ghost.serviceolekut:

    sudo systemctl status ghost.service && sudo systemctl is-enabled ghost.service
    
  4. Navigeerige https://blog.domain.tld/ghost/ja looge Ghosti administraatori kasutaja. Tehke seda esimesel võimalusel!

Järeldus

See on kõik. Meil on nüüd täielikult toimiv Ghosti ajaveeb. Teie server edastab sisu HTTP/2 kaudu, kui klient seda toetab. Kui soovite muuta Ghosti vaiketeema nimega Casper kohandatud teemaks , saate selle lihtsalt alla laadida ja /var/www/ghost/content/themeskausta lahti pakkida ning valida selle Ghosti administraatoriliidese kaudu, mis asub aadressil https://blog.domain.tld/ghost.


Jekylli ajaveebi loomine Ubuntus 16.04

Jekylli ajaveebi loomine Ubuntus 16.04

Kas kasutate teistsugust süsteemi? Jekyll on suurepärane alternatiiv WordPressile ajaveebi pidamiseks või sisu jagamiseks. See ei nõua andmebaase ja see on väga lihtne

Kuidas installida MODX Revolution Ubuntu 16.04 LAMP VPS-i

Kuidas installida MODX Revolution Ubuntu 16.04 LAMP VPS-i

Kas kasutate teistsugust süsteemi? MODX Revolution on kiire, paindlik, skaleeritav, tasuta ja avatud lähtekoodiga ettevõttetasemel sisuhaldussüsteem (CMS), mis on kirjutatud i.

Jekylli ajaveebi loomine CentOS 7-s

Jekylli ajaveebi loomine CentOS 7-s

Kas kasutate teistsugust süsteemi? Jekyll on hea alternatiiv WordPressile. See ei nõua andmebaase ja töötab paljudele tuttava keelega

Kuidas installida MODX Revolution CentOS 7 LAMP VPS-i

Kuidas installida MODX Revolution CentOS 7 LAMP VPS-i

Kas kasutate teistsugust süsteemi? MODX Revolution on kiire, paindlik, skaleeritav, tasuta ja avatud lähtekoodiga ettevõttetasemel sisuhaldussüsteem (CMS), mis on kirjutatud i.

Fork CMS-i installimine opsüsteemi CentOS 7

Fork CMS-i installimine opsüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Fork on avatud lähtekoodiga CMS, mis on kirjutatud PHP-s. Forksi lähtekoodi hostitakse GitHubis. See juhend näitab teile, kuidas Fork CM-i installida

Kuidas installida Neos CMS-i CentOS 7-sse

Kuidas installida Neos CMS-i CentOS 7-sse

Neos on uuenduslik avatud lähtekoodiga sisuhaldussüsteem, mis sobib suurepäraselt veebisisu loomiseks ja redigeerimiseks. Autoreid ja toimetajaid silmas pidades, Neo

Kuidas juurutada Ghost v0.11 LTS operatsioonisüsteemis CentOS 7.3

Kuidas juurutada Ghost v0.11 LTS operatsioonisüsteemis CentOS 7.3

Kas kasutate teistsugust süsteemi? Ghost on avatud lähtekoodiga ajaveebiplatvorm, mis on arendajate ja tavakasutajate seas populaarsust kogunud alates 201. aastast.

Fork CMS-i installimine Fedora 28-sse

Fork CMS-i installimine Fedora 28-sse

Kas kasutate teistsugust süsteemi? Fork on avatud lähtekoodiga CMS, mis on kirjutatud PHP-s. Forksi lähtekoodi hostitakse GitHubis. See juhend näitab teile, kuidas Fork CM-i installida

Kuidas juurutada Ghost v0.11 LTS Fedora 25-s

Kuidas juurutada Ghost v0.11 LTS Fedora 25-s

Kas kasutate teistsugust süsteemi? Ghost on avatud lähtekoodiga ajaveebiplatvorm, mis on arendajate ja tavakasutajate seas populaarsust kogunud alates 201. aastast.

Kuidas juurutada mitu Wordpressi saiti Virtualmini ja Ansible abil Ubuntu 16.04-s

Kuidas juurutada mitu Wordpressi saiti Virtualmini ja Ansible abil Ubuntu 16.04-s

Vultri virtuaalserveri tavaline kasutusala on Wordpressi veebisaitide majutamine. See juhend näitab, kuidas virtuaalserveri konfigureerimist nullist automatiseerida

Installige ja konfigureerige Ghost v1.0.0 ajaveebi Ubuntu 16.04

Installige ja konfigureerige Ghost v1.0.0 ajaveebi Ubuntu 16.04

Ghost on kaasaegne avatud lähtekoodiga avaldamisplatvorm, mis on üles ehitatud Node.js-ile ja millel on Ember.js-i administraatoriklient, JSON API ja Handlebars.js-i toitev teema API. Ghos

Kuidas installida MODX Revolution Fedora 26 LAMP VPS-ile

Kuidas installida MODX Revolution Fedora 26 LAMP VPS-ile

Kas kasutate teistsugust süsteemi? MODX Revolution on kiire, paindlik, skaleeritav, tasuta ja avatud lähtekoodiga ettevõttetasemel sisuhaldussüsteem (CMS), mis on kirjutatud i.

Kuidas installida Dotclear Debian 9-le (Stretch)

Kuidas installida Dotclear Debian 9-le (Stretch)

Kas kasutate teistsugust süsteemi? Dotclear on väga lihtne ajaveebimootor. See on avatud lähtekoodiga ja seda on lihtne kasutada. See õpetus läbib installimise

SilverStripe CMS-i installimine Fedora 26 LAMP VPS-i

SilverStripe CMS-i installimine Fedora 26 LAMP VPS-i

Kas kasutate teistsugust süsteemi? SilverStripe on paindlik ja laiendatav tasuta ja avatud lähtekoodiga ettevõttetasemel sisuhaldussüsteem (CMS), mis on kirjutatud PHP-s. ma

Fork CMS-i installimine Ubuntu 16.04 LTS-i

Fork CMS-i installimine Ubuntu 16.04 LTS-i

Kas kasutate teistsugust süsteemi? Fork on avatud lähtekoodiga CMS, mis on kirjutatud PHP-s. Forksi lähtekoodi hostitakse GitHubis. See juhend näitab teile, kuidas Fork CM-i installida

Kuidas juurutada Ghost versioonis Debian 8.7

Kuidas juurutada Ghost versioonis Debian 8.7

Kas kasutate teistsugust süsteemi? Ghost on avatud lähtekoodiga ajaveebiplatvorm, mis on alates 2013. aasta väljalaskmisest arendajate ja tavakasutajate seas populaarsust kogumas. ma

Fork CMS-i installimine Debian 9-le

Fork CMS-i installimine Debian 9-le

Kas kasutate teistsugust süsteemi? Fork on avatud lähtekoodiga CMS, mis on kirjutatud PHP-s. Forksi lähtekoodi hostitakse GitHubis. See juhend näitab teile, kuidas Fork CM-i installida

Kuidas installida Typesetteri CMS-i CentOS 7-sse

Kuidas installida Typesetteri CMS-i CentOS 7-sse

Typesetter on PHP-s kirjutatud avatud lähtekoodiga CMS, mis keskendub True WYSIWYG redigeerimise ja lamefailide salvestusruumi kasutamise lihtsusele. Selles artiklis me installime

WordPressi seadistamine WooCommerceiga CentOS 6-s

WordPressi seadistamine WooCommerceiga CentOS 6-s

Vultri eksemplarid on suurepärane viis WordPressi ajaveebi käitamiseks, kuid WordPressi märkimisväärsem laiendus on WooCommerce, e-kaubanduse pistikprogramm, mis laiendab

Kuidas installida MODX Revolution Debian 9 LAMP VPS-i

Kuidas installida MODX Revolution Debian 9 LAMP VPS-i

Kas kasutate teistsugust süsteemi? MODX Revolution on kiire, paindlik, skaleeritav, tasuta ja avatud lähtekoodiga ettevõttetasemel sisuhaldussüsteem (CMS), mis on kirjutatud i.

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit