Πώς να εγκαταστήσετε το Wekan (Open Source Kanban) στο Ubuntu 16.04

Το Wekan είναι ένας πίνακας kanban που έχει δημιουργηθεί με το πλαίσιο JavaScript Meteor. Θεωρείται εναλλακτική λύση ανοιχτού κώδικα και αυτο-φιλοξενούμενη για το Trello, παρέχοντας σχεδόν τα ίδια χαρακτηριστικά. Σας επιτρέπει να δημιουργείτε λίστες διαχείρισης "to-do" που βασίζονται σε κάρτες. Το Wekan είναι πολύ χρήσιμο για την αύξηση της παραγωγικότητας όταν εργάζεστε σε περιβάλλον συνεργασίας. Το Wekan έχει μια πλήρως αποκριτική διεπαφή ιστού και μεταφράζεται ενεργά σε πολλές γλώσσες.

Προαπαιτούμενα

  • Μια παρουσία διακομιστή Vultr Ubuntu 16.04.
  • Ένας χρήστης sudo .

Για αυτό το σεμινάριο, θα χρησιμοποιήσουμε wekan.example.comως όνομα τομέα που δείχνει προς την παρουσία του Vultr. Βεβαιωθείτε ότι έχετε αντικαταστήσει όλες τις εμφανίσεις του παραδείγματος ονόματος τομέα με το πραγματικό.

Ενημερώστε το βασικό σας σύστημα χρησιμοποιώντας τον οδηγό Πώς να ενημερώσετε το Ubuntu 16.04 . Αφού ενημερωθεί το σύστημά σας, προχωρήστε στην εγκατάσταση των εξαρτήσεων.

Εγκαταστήστε το Node.js

Το Wekan υποστηρίζει μόνο Node.js LTS version 4.8. Για να εγκαταστήσουμε το Node.js, θα χρησιμοποιήσουμε τον διαχειριστή εκδόσεων κόμβου. Εγκαταστήστε nvmεκτελώντας το σενάριο εγκατάστασης.

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash

Για να ξεκινήσετε αμέσως τη χρήση nvm, εκτελέστε αυτό.

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

Εάν nvmέχει εγκατασταθεί με επιτυχία, τότε θα πρέπει να μπορείτε να ελέγξετε την έκδοσή του.

user@vultr:~$ nvm --version
0.33.4

Εγκαταστήστε το Node.js.

nvm install v4.8

Ορίστε την προεπιλεγμένη έκδοση του Node.js.

nvm use node

Εάν το Node.js έχει εγκατασταθεί με επιτυχία, τότε θα πρέπει να μπορείτε να ελέγξετε την έκδοσή του.

node -v

Θα δείτε αυτήν την έξοδο.

user@vultr:~$ node -v
v4.8.4

Το NVM εγκαθιστά το Node.js μόνο για τον τρέχοντα χρήστη. Για να είναι προσβάσιμο το Node.js παγκοσμίως, εκτελέστε αυτό.

n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr

Το Node.js είναι πλέον διαθέσιμο ως /usr/bin/node.

user@vultr:~$ sudo which node
/usr/bin/node

Εγκαταστήστε το MongoDB

Το MongoDB είναι ένας δωρεάν διακομιστής βάσης δεδομένων NoSQL ανοιχτού κώδικα. Σε αντίθεση με τις παραδοσιακές βάσεις δεδομένων που χρησιμοποιούν πίνακες για την οργάνωση των δεδομένων τους, το MongoDB είναι προσανατολισμένο στα έγγραφα και χρησιμοποιεί έγγραφα τύπου JSON χωρίς σχήματα. Το Wekan χρησιμοποιεί το MongoDB για να αποθηκεύσει τα δεδομένα του.

Το Wekan είναι συμβατό μόνο με MongoDB version 3.2. Δημιουργήστε ένα νέο αρχείο αποθήκης.

echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

Εισαγάγετε το δημόσιο κλειδί GPG MongoDB και ενημερώστε τη λίστα πακέτων.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
sudo apt update

Εγκαταστήστε το MongoDB.

sudo apt install -y mongodb-org

Ξεκινήστε το MongoDB και ενεργοποιήστε το να ξεκινήσει αυτόματα.

sudo systemctl start mongod
sudo systemctl enable mongod

Ασφάλιση παρουσίας MongoDB

Από προεπιλογή, δεν υπάρχει ενεργοποιημένος έλεγχος ταυτότητας σε διακομιστή MongoDB. Κάθε χρήστης που έχει πρόσβαση στο τερματικό του διακομιστή θα έχει πλήρη δικαιώματα στην εγκατάσταση MongoDB. Για να ασφαλίσουμε τον διακομιστή της βάσης δεδομένων και να περιορίσουμε την πρόσβαση ενός μη προνομιούχου χρήστη, θα χρειαστεί να ρυθμίσουμε τον έλεγχο ταυτότητας στον διακομιστή.

Το MongoDB παρέχει ένα mongoκέλυφος που χρησιμοποιείται για την εκτέλεση ερωτημάτων στο MongoDB. Μεταβείτε στο mongoκέλυφος.

mongo

Δημιουργήστε έναν νέο χρήστη MongoDB με δικαιώματα root. Μπορείτε να χρησιμοποιήσετε οποιοδήποτε όνομα χρήστη της επιλογής σας. Βεβαιωθείτε ότι έχετε αντικαταστήσει τον κωδικό πρόσβασης .

db.createUser(
  {
    user: "admin",
    pwd: "StrongAdminPassword",
    roles: [ { role: "root", db: "admin" } ]
  }
)

Θα πρέπει να δείτε την ακόλουθη έξοδο.

user@vultr:~$ mongo
MongoDB shell version: 3.2.17
connecting to: test
Welcome to the MongoDB shell.

...

2017-09-30T18:11:40.274+0000 I CONTROL  [initandlisten]
> db.createUser(
...   {
...     user: "admin",
...     pwd: "StrongAdminPassword",
...     roles: [ { role: "root", db: "admin" } ]
...   }
... )
Successfully added user: {
        "user" : "admin",
        "roles" : [
                {
                        "role" : "root",
                        "db" : "admin"
                }
        ]
}

Βγείτε από τη διεπαφή εντολών MongoDB στο τερματικό Linux πατώντας το " Ctrl+C".

Επεξεργαστείτε το αρχείο διαμόρφωσης MongoDB.

sudo nano /etc/mongod.conf

Προσθέστε την ακόλουθη γραμμή στο τέλος του αρχείου.

security:
 authorization: enabled

Επανεκκινήστε το MongoDB για να τεθεί σε ισχύ η αλλαγή της διαμόρφωσης.

sudo systemctl restart mongod

Τώρα που η ασφάλεια έχει ενεργοποιηθεί, μπορείτε να ελέγξετε αν λειτουργεί μεταβαίνοντας ξανά στο κέλυφος mongo χρησιμοποιώντας την mongoεντολή. Αυτή τη φορά, εάν εκτελέσετε ένα ερώτημα, όπως για show dbsνα εμφανίσετε τη λίστα των βάσεων δεδομένων, θα δείτε ένα μήνυμα που αναφέρει αποτυχημένη εξουσιοδότηση. Πραγματοποιήστε έξοδο στον sudoχρήστη ξανά αφού δοκιμάσετε τη σύνδεση ως ο νέος χρήστης που μόλις δημιουργήσατε.

Συνδεθείτε ως ο administratorχρήστης που μόλις δημιουργήσατε.

mongo -u admin -p

Δώστε τον κωδικό πρόσβασης του χρήστη για μια επιτυχημένη σύνδεση. Δημιουργήστε έναν νέο χρήστη για τη wekanβάση δεδομένων που θα χρησιμοποιηθεί για την αποθήκευση δεδομένων Wekan.

use wekan
db.createUser(
    {
      user: "wekan",
      pwd: "StrongPassword",
      roles: ["readWrite"]
    }
 ) 

Φροντίστε να αντικαταστήσετε τον StrongPasswordκωδικό πρόσβασης με έναν ισχυρό κωδικό πρόσβασης. Θα δείτε την ακόλουθη έξοδο.

user@vultr:~$ mongo -u admin -p
MongoDB shell version: 3.2.17
Enter password:
connecting to: test

...

2017-09-30T18:13:26.007+0000 I CONTROL  [initandlisten]
>
> use wekan
switched to db wekan
> db.createUser(
...     {
...       user: "wekan",
...       pwd: "StrongPassword",
...       roles: ["readWrite"]
...     }
...  )
Successfully added user: { "user" : "wekan", "roles" : [ "readWrite" ] }

Εγκαταστήστε το Wekan

Check for the latest link to the Wekan release on Github as new releases are very frequent. Download the latest version of Wekan from Github replacing the link to the installer package.

cd ~
wget https://github.com/wekan/wekan/releases/download/v0.44/wekan-0.44.tar.gz

Extract the downloaded archive into a new directory named wekan.

mkdir wekan
tar xzvf wekan-*.tar.gz -C wekan

Install the Node.js dependencies.

cd wekan/bundle/programs/server && npm install

The Wekan server reads configurations from the environment variables. Run the following commands to set the configurations as environment variables.

export MONGO_URL='mongodb://wekan:StrongPassword@127.0.0.1:27017/wekan?authSource=wekan'
export ROOT_URL='http://wekan.example.com'
export MAIL_URL='smtp://user:pass@mail.example.com:25/'
export MAIL_FROM='wekan@example.com'
export PORT=4000

Make sure to replace the MongoDB password for the wekan user you have created. Also, update the mail URL according to your SMTP server settings. If you do not have an email server ready, you can always change this configuration later.

To immediately start the application.

cd ~/wekan/bundle
node main.js

You can now access the application by going to http://wekan.example.com:4000. You will see the interface to log-in into the Wekan kanban board.

For production use, it is recommended to set up a reverse proxy to serve the application on the standard HTTP port and a systemd service to manage the application process. In this tutorial, we will use the Nginx web server as a reverse proxy, secured with a Let's Encrypt free SSL.

Setting up the Nginx Reverse Proxy

Add the Certbot PPA repository to the system.

sudo add-apt-repository ppa:certbot/certbot
sudo apt update

Install Nginx and Certbot, which is the client application for Let's Encrypt CA.

sudo apt -y install certbot nginx

Note: The domain name which you are using to obtain the certificates from the Let's Encrypt CA must be pointed towards the server. The client verifies the domain authority before issuing the certificates.

Δημιουργήστε τα πιστοποιητικά SSL.

sudo certbot certonly --standalone -d wekan.example.com

Τα πιστοποιητικά που δημιουργούνται είναι πιθανό να αποθηκευτούν στον /etc/letsencrypt/live/wekan.example.com/κατάλογο. Το πιστοποιητικό SSL θα αποθηκευτεί ως fullchain.pemκαι το ιδιωτικό κλειδί θα αποθηκευτεί ως privkey.pem.

Τα πιστοποιητικά Let's Encrypt λήγουν σε 90 ημέρες, επομένως συνιστάται να ρυθμίσετε την αυτόματη ανανέωση των πιστοποιητικών χρησιμοποιώντας το Cronjob. Το Cron είναι μια υπηρεσία συστήματος που χρησιμοποιείται για την εκτέλεση περιοδικών εργασιών.

Ανοίξτε το αρχείο εργασίας cron.

sudo crontab -e

Προσθέστε την ακόλουθη γραμμή στο τέλος του αρχείου.

30 5 * * * /usr/bin/certbot renew --quiet

Η παραπάνω εργασία cron θα εκτελείται καθημερινά στις 5:30 π.μ. Εάν τα πιστοποιητικά πρόκειται να λήξουν, θα τα ανανεώσει αυτόματα.

Δημιουργήστε έναν νέο εικονικό κεντρικό υπολογιστή.

sudo nano /etc/nginx/sites-available/wekan.example.com.conf

Συμπληρώστε το αρχείο με τα ακόλουθα.

upstream wekan {
        server 127.0.0.1:4000;
}
server {
        listen  80;
        listen [::]:80;
        server_name  wekan.example.com;

        location / {
                if ($ssl_protocol = "") {
                        rewrite     ^   https://$server_name$request_uri? permanent;
                }
        }
}

server {
        listen 443 ssl;
        listen [::]:443 ssl;
        server_name wekan.example.com;

        add_header Strict-Transport-Security "max-age=15768000";

        ssl_certificate /etc/letsencrypt/live/wekan.example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/wekan.example.com/privkey.pem;

        ssl_session_timeout 1d;
        ssl_session_cache shared:SSL:10m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        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_stapling on;
        ssl_stapling_verify on;

        error_page 497  https://$host:$server_port$request_uri;
        location / {
            proxy_pass http://wekan;
            proxy_http_version 1.1;
            proxy_set_header Host $host:$server_port;
            proxy_set_header Referer $http_referer;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header X-Forwarded-Ssl on;
            proxy_set_header X-Nginx-Proxy true;

            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";

            proxy_redirect off;

            proxy_send_timeout 86400;
            proxy_read_timeout 86400;
        }
}

Αντικαταστήστε wekan.example.comμε το πραγματικό σας όνομα τομέα στην παραπάνω διαμόρφωση.

Ενεργοποιήστε τον ιστότοπο που προστέθηκε πρόσφατα.

sudo ln -s /etc/nginx/sites-available/wekan.example.com.conf /etc/nginx/sites-enabled/wekan.example.com.conf

Επανεκκινήστε το Nginx για να ισχύσουν οι αλλαγές.

sudo systemctl restart nginx

Ενεργοποιήστε το Nginx για αυτόματη εκκίνηση κατά την εκκίνηση.

sudo systemctl enable nginx

Ρύθμιση Systemd Service

Δημιουργήστε έναν νέο χρήστη για να εκτελεστεί η διαδικασία.

sudo adduser wekan --shell /usr/sbin/nologin --home /opt/wekan

Τώρα μετακινήστε όλα τα αρχεία στον /opt/wekanκατάλογο.

sudo mv ~/wekan/* /opt/wekan/

Παρέχετε την ιδιοκτησία των αρχείων στον νέο χρήστη.

sudo chown -R wekan:wekan /opt/wekan

Το Wekan δεν λαμβάνει δεδομένα από κανένα αρχείο διαμόρφωσης. Αντίθετα, έχει πρόσβαση σε αυτό από μεταβλητές περιβάλλοντος. Θα δημιουργήσουμε ένα νέο αρχείο για την αποθήκευση των μεταβλητών περιβάλλοντος. Το αρχείο που περιέχει τις μεταβλητές περιβάλλοντος θα περάσει μέσω της Systemdυπηρεσίας.

Δημιουργήστε ένα νέο αρχείο για την αποθήκευση μεταβλητών περιβάλλοντος.

 sudo nano /opt/wekan/config.env

Συμπληρώστε το αρχείο με το ακόλουθο περιεχόμενο.

MONGO_URL='mongodb://wekan:StrongPassword@127.0.0.1:27017/wekan?authSource=wekan'
ROOT_URL='http://wekan.example.com'
MAIL_URL='smtp://user:pass@mail.example.com:25/'
MAIL_FROM='wekan@example.com'
PORT=4000
HTTP_FORWARDED_COUNT=1

Βεβαιωθείτε ότι έχετε αντικαταστήσει το usernameκαι password.

Παρέχετε την ιδιοκτησία στον wekanχρήστη εκτελώντας.

sudo chown -R wekan:wekan /opt/wekan/config.env

Δημιουργήστε ένα νέο αρχείο υπηρεσίας για την υπηρεσία Wekan systemd.

sudo nano /etc/systemd/system/wekan.service

Συμπληρώστε το αρχείο με τα ακόλουθα.

[Unit]
Description=Wekan Server
After=syslog.target
After=network.target

[Service]
Type=simple
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5
RestartSec=10
ExecStart=/usr/bin/node /opt/wekan/bundle/main.js
EnvironmentFile=/opt/wekan/config.env
ExecReload=/bin/kill -USR1 $MAINPID
RestartSec=10
User=wekan
Group=wekan
WorkingDirectory=/opt/wekan
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=Wekan

[Install]
WantedBy=multi-user.target

Αποθηκεύστε το αρχείο και βγείτε από το πρόγραμμα επεξεργασίας. Τώρα μπορείτε εύκολα να ξεκινήσετε το Wekan.

sudo systemctl start wekan

Για να ενεργοποιήσετε το Wekan να ξεκινά αυτόματα κατά την εκκίνηση.

sudo systemctl enable wekan

Για να ελέγξετε την κατάσταση της υπηρεσίας Wekan.

sudo systemctl status wekan

Τυλίγοντας

Τώρα μπορείτε να αποκτήσετε πρόσβαση στην παρουσία Wekan στο https://wekan.example.com. Ξεκινήστε δημιουργώντας έναν νέο λογαριασμό. Αφού δημιουργήσετε τον λογαριασμό, μπορείτε να ενεργοποιήσετε την πρόσβαση διαχειριστή στον νέο χρήστη. Συνδεθείτε στο κέλυφος MongoDB ως διαχειριστής.

mongo -u wekan -p --authenticationDatabase "wekan"

Τώρα επιλέξτε τη wekanβάση δεδομένων και ενημερώστε το αντικείμενο για να προωθήσετε τον χρήστη στον χρήστη διαχειριστή.

use wekan
db.users.update({username:'admin_user'},{$set:{isAdmin:true}})

Βεβαιωθείτε ότι έχετε αντικαταστήσει admin_userμε το πραγματικό όνομα χρήστη του χρήστη που δημιουργήσατε. Από τη διεπαφή διαχειριστή, θα μπορείτε να απενεργοποιήσετε την αυτόματη εγγραφή και να ενημερώσετε τις ρυθμίσεις SMTP.

Συγχαρητήρια, εγκαταστήσατε με επιτυχία την πλακέτα Wekan Kanban στην παρουσία σας στο Vultr Ubuntu.

Αφήστε ένα σχόλιο

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα