Cum se instalează Nginx 1.14 pe Arch Linux
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (vezi acest articol.) Acces Sudo. Comenzile care trebuie rulate ca root sunt prefixate de #. Th
Pachetul Devtools a fost inițial creat pentru utilizatori de încredere pentru a crea corect pachete pentru depozitele oficiale. Cu toate acestea, acesta poate fi folosit și de utilizatorii obișnuiți pentru a construi pachete AUR, sau chiar pachete oficiale modificate.
Consultați acest ghid pentru înțelegerea și utilizarea AUR în general, inclusiv obținerea PKGBUILD
. Acest document arată pașii specifici Devtools, dacă este metoda pe care o alegeți să compilați un pachet.
Devtools menține o instalație separată de Arch curat, localizată în /var/lib/archbuild/<TARGET>/root
, care conține doar grupuri de pachete base
și base-devel
. Dacă această instalație curată nu există, o creează automat. Dacă există, acesta actualizează automat orice pachet în el. Când Devtools este utilizat pentru a construi un pachet, acesta începe cu o copie a acestei instalări curate, instalează pachetele necesare numai în copie, copiază codul sursă în el, realizează compilarea și ambalarea în el și copiază doar pachetul rezultat, în formă identică cu ceea ce se găsește în depozitele oficiale.
Există avantaje pentru Devtools în timpul rulării makepkg
directe. Un avantaj este acela base-devel
și celelalte pachete necesare pentru a compila, dar nu a rula, pachetul pe care îl creezi niciodată în sistemul principal. Este vorba despre mai puține pachete care trebuie să se actualizeze periodic și să aibă probleme. Deși în primul rând un beneficiu pentru întreținerii pachetului Arch, acest proces expune cu ușurință atunci când PKGBUILD
este incorectă, cum ar fi în cazul în care o dependență este ratată de a fi listată pe care întreținătorul se instalează deja în sistemul lor principal. Puteți utiliza, de asemenea, o mașină mai rapidă la construirea pachetelor și copiați pachetul rezultat pe o mașină mai lentă care o va rula, fără a polua instalarea mașinii de construcție.
Dezavantajul principal este că rădăcina curată este întotdeauna acolo, ocupând aproximativ 800 MB și, de obicei, o singură copie este acolo ocupând mai mult spațiu. Rețineți că, dacă /var/lib/archbuild/
folosește Btrfs, copia rădăcinei curate începe să fie o instantanee Btrfs, astfel încât aceste fișiere să nu dubleze spațiul. Rădăcina curată este întotdeauna acolo, pentru a evita reinstalarea ei de fiecare dată când se face un pachet.
Instalați Devtools:
# pacman -S devtools
Pentru a construi un pachet, Devtools include archbuild
, dar nu executați acest lucru direct. De asemenea, include simboluri de {extra, gnome-unstable, kde-unstable, staging, testing}-x86_64-build
. Simbolul care este utilizat pentru a rula va fi inspectat de archbuild
, pentru a determina ce țintă doriți să o folosească. Poate fi rulat pentru a utiliza aceste depozite instabile / de stadializare / testare, care pot avea versiuni mai noi decât au fost lansate în depozitele oficiale. Pentru a utiliza depozitele oficiale pentru pachete non-AUR, în directorul cu PKGBUILD
, de exemplu, directorul realizat de git clone
, executați următoarele:
$ extra-x86_64-build
Notă: Restul acestui ghid se va referi pur și simplu extra-x86_64-build
.
După ce se termină de rulat, rezultatele vor fi următoarele:
/var/lib/archbuild/extra-x86_64/root
- Un chroot curat , care este o instalare actualizată cu doar grupuri de pachete base
și base-devel
./var/lib/archbuild/extra-x86_64/<USERNAME>
- Acesta va conține un chroot build . Aceasta este o copie a chroot curat, cu orice dependență necesară pentru a construi sau rula pachetul în curs de construire, precum și codul sursă, rezultatele compilării și pachetul.La sfârșit, este posibil să observați „ Checking PKGBUILD
„ și „ Checking <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
„. Orice linii după acestea sunt emise namcap
, care caută automat probleme precum PKGBUILD
fișierele cu forme necorespunzătoare , dependențe incluse pe care pachetul nu pare să le folosească, dependențe care nu sunt incluse pe care pachetul pare să le folosească și multe altele. Pozitive false sunt adesea generate de namcap
, dar este un instrument excelent pentru a oferi lucrurilor de investigat. Dacă pachetul dvs. funcționează corect, nu este o idee bună să avertizați întreținătorul cu privire la namcap
ieșire, cu excepția cazului în care ați examinat și ați verificat că trebuie făcută o modificare.
Puteți utiliza pacman
pentru a instala pachetul, care va instala orice dependență necesară pentru a rula pachetul atât timp cât se află în depozite oficiale sau într-un depozit local.
Fie folosiți un Repositoriu local așa cum este explicat aici , fie instalați fișierul direct:
# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
Dacă extra-x86_64-build
ar trebui să rulați din nou, chiar acum sau oricând mai târziu cu acest sau alt pachet, acesta va actualiza chrootul curat, dacă este necesar, va șterge chrootul de compilare și va face din acesta o copie nouă a chrootului curat și va efectua același proces. Dacă directorul dvs. încă a descărcat codul sursă de la ultima dată, îl va utiliza. Dacă pachetul este un pachet de dezvoltare AUR, va aduce noi schimbări, mai degrabă decât să cloneze din nou.
Intern, extra-x86_64-build
rulează makechrootpkg
, care apelează intern makepkg
. Opțiunile pentru extra-x86_64-build
includ următoarele:
-c
: Curățați chroots, eliminând și recreând întregul /var/lib/archbuild/extra-x86_64/
director, inclusiv chrootul său curat și toate directoarele chroot. Acest lucru este rar necesar, numai dacă chrootul curat este corupt sau dacă Devtools este modernizat într-un mod care să încalce compatibilitatea înapoi.-r <dir>
: Utilizați un director diferit de cel /var/lib/archbuild/extra-x86_64/
conținut chroots.Orice argumente la extra-x86_64-build
după --
sunt transmise makechrootpkg
atunci când îl folosește intern. Mai multe argumente sunt întotdeauna transmise automat de extra-x86_64-build
la makechrootpkg
. Aceste argumente automate sunt -r <value given to extra-x86_64-build -r option if given, /var/lib/archbuild/extra-x86_64 otherwise> -c -n
. Ei spun makechrootpkg
să elimine chroot-ul build și să-l facă o copie nouă a chroot-ului curat și să ruleze namcap
pe pachet dacă se construiește cu succes. O opțiune obișnuită care poate fi transmisă makechrootpkg
este -l <copy name>
. Acesta este numele directorului pentru a da chrootul de construire, în loc de <USERNAME>
, care este util pentru întreținerea mai multor copii sau compilarea mai multor pachete în același timp.
Orice argumente la makechrootpkg
după --
sunt transmise makepkg
, atunci când îl folosește intern pentru a construi pachetul. Prima dată makepkg
este condus makechrootpkg
, se face cu propriile opțiuni neschimbabile, pentru a descărca fișierele sursă, dacă este necesar, și pentru a efectua verificări de integritate; prin urmare, nimic nu poate fi redirecționat pe acest traseu. Se execută makepkg
a doua oară pentru a construi pachetul și trece întotdeauna în mod automat makepkg
argumente ale --syncdeps --noconfirm --log --holdver --skipinteg
cărora makepkg
, în cadrul chroot-ului de construire, să instaleze automat dependențele lipsă necesare pentru construirea și utilizarea pachetului, pentru a nu cere confirmare în timpul pacman
înregistrării procesului de construire la text. în plus stdout
, fișierele nu actualizează codul sursă dacă există într-un sistem de control al versiunii și nu efectuați verificări ale verificării fișierelor sursă.
Puteți să le asociați împreună folosind următorul formular:
$ extra-x86_64-build <DEVTOOLS-OPTIONS> -- <MAKECHROOTPKG-OPTIONS> -- <MAKEPKG-OPTIONS>
Rețineți că /var/lib/archbuild
poate fi tratat ca și cum ar fi un director temporar. Dacă aveți mai multe hard disk-uri Vultr, merită să montați aici un sistem de fișiere RAID0 (stripe). Dacă aveți multă memorie RAM, puteți monta, de asemenea, un sistem de fișiere cu suport RAM tmpfs
. După ce un pachet este construit, acesta este copiat în directorul din care ați alergat extra-x86_64-build
și, dacă doriți, puteți șterge la acest moment /var/lib/archbuild
. Următoarea rulare ar fi mai lentă, deoarece ar trebui să creeze o nouă rădăcină curată. În mod alternativ, puteți șterge /var/lib/archbuild/<USERNAME>
pentru a solicita spațiu suplimentar din chrootul de construire înainte de a fi șters automat de următoarea rulare de Devtools. Deci, chiar dacă aveți un sistem de fișiere RAID0 montat aici nu reușesc, cel mai mult veți pierde ar fi o compilare în proces.
Există câteva specificații de notat cu fișierele de configurare Devtools. Acestea sunt localizate în /usr/share/devtools/
, cum ar fi makepkg-x86_64.conf
și pacman-extra.conf
:
/etc
fișiere precum makepkg.conf
și pacman.conf
, le puteți edita în siguranță în loc, iar atunci când pachetul este actualizat, acesta nu va suprascrie modificările. Mai degrabă, va salva fișierele noi de configurare (dacă s-au schimbat de la versiunea anterioară) care se termină cu .pacnew
. Cu toate acestea, fișierele de configurare Devtools sunt în /usr/share/
care nu este intenționat să fie editat de utilizator, așa că, atunci când Devtools este actualizat, va suprascrie complet modificările la aceste fișiere fără să vă avertizeze. O modificare a acestui comportament a fost propusă și respinsă, deoarece acest lucru ajută la asigurarea trimiterii pachetelor către depozitele oficiale, toate cu aceleași setări de compilare.MAKEFLAGS
, PACKAGER
și {SRC,SRCPKG,PKG,LOG}DEST
sunt preluate din /etc/makepkg.conf
mai degrabă decât /usr/share/devtools/makepkg-x86_64.conf
.Dacă construiți pachete care au dependențe de alte pachete pe care le-ați construit, trebuie să utilizați un depozit local, astfel încât, atunci când pacman
rulează în cadrul chroot-ului de compilare, să găsească dependențele.
Pentru a configura un depozit local, consultați secțiunea „Repositoriu local” din acest ghid .
Creați o țintă personalizată:
# ln -s archbuild /usr/bin/custom-x86_64-build
# cp /usr/share/devtools/pacman-{extra,custom}.conf
Editați /usr/share/devtools/pacman-custom.conf
și adăugați următoarele la sfârșit:
[archLocalRepo]
SigLevel = Optional TrustAll
Server = file:///archLocalRepo
Editați /etc/pacman.conf
și adăugați următoarele. Acest lucru obligă directorul să fie legat montat în chroot:
CacheDir = /var/cache/pacman/pkg/ /archLocalRepo/
Acum, în loc să extra-x86_64-build
folosești acest lucru:
$ custom-x86_64-build
Dacă doriți întotdeauna să utilizați ținta personalizată, puteți șterge /var/lib/archbuild/extra-x86_64-build/
directorul, dacă există, deoarece chroots vor fi acum în /var/lib/archbuild/custom-x86_64-build/
.
/usr/share/devtools
Notarea activării ambalajelor cu filetă presupune editarea fișierelor de configurare, care nu sunt acceptate oficial, așa că va trebui să efectuați această modificare de fiecare dată când Devtools este actualizat.
Devtools combină un pachet întreg într-un format de arhivă. În mod implicit, .tar.xz
utilizează un singur fir pentru xz
compresie.
Pe sisteme cu procesor multiplu, puteți permite xz
să utilizați mai multe fire editând /usr/share/devtools/makepkg-x86_64.conf
și să modificați următoarea linie:
COMPRESSXZ=(xz -c -z -)
Pentru a permite cât mai multe fire aveți nuclee virtuale:
COMPRESSXZ=(xz -c -z - --threads=0)
Pentru a permite utilizarea mai multor nuclee virtuale, dar nu toate, pentru a reduce impactul la performanța generală a sistemului, adăugați un număr specific:
COMPRESSXZ=(xz -c -z - --threads=21)
Specificând mai multe fire decât numărul de nuclee virtuale pe care le aveți va scădea performanța.
Dacă nu vă deranjează că fișierul pachetului este (potențial mult mai mare), dezactivați compresia prin editare /usr/share/devtools/makepkg-x86_64.conf
și modificați următoarea linie:
PKGEXT='.pkg.tar.xz'
Schimbați-o astfel încât să arate astfel:
PKGEXT='.pkg.tar'
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (vezi acest articol.) Acces Sudo. Comenzile care trebuie rulate ca root sunt prefixate de #. Th
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux. Consultați acest ghid pentru mai multe informații. Acces Sudo. Comenzile necesare pentru a fi rulate ca root
Acest tutorial explică modul de configurare a unui server Mumble (Murmur) pe Arch Linux. Tot ce este făcut în acest tutorial este realizat ca utilizator root. Instalarea an
Preface Arch Linux este o distribuție de uz general, binecunoscută pentru tehnologia de ultimă oră și configurația flexibilă. Cu instantanee Btrfs, putem lua
Acest tutorial explică modul de configurare a unui server Counter-Strike: Global Offensive pe Arch Linux. Acest tutorial presupune că v-ați autentificat cu o utilizare standard
Vultr vă oferă funcționalitatea minunată de a vă permite să folosiți propria imagine personalizată, pe lângă șabloanele lor excelente, care vă permite să rulați
Acest tutorial explică cum să configurați un server Minecraft folosind Spigot pe Arch Linux. Acest tutorial presupune că sunteți un utilizator normal (nu root) și hav
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (vezi acest articol.) Acces Sudo. Comenzile care trebuie rulate ca root sunt prefixate de # și unu
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (vezi acest articol) Acces Sudo: Comenzile care trebuie rulate ca root sunt prefixate de #, și una
Introducere Arch Linux are o distribuție mai mică, dar totuși puternică, în urma distribuțiilor mai populare. Filozofia sa este cu totul diferită, cu avantaje
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (consultați acest articol) Comenzile necesită
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (consultați acest articol)
Pe Arch Linux, depozitele oficiale sunt: core, extra și comunitare. Aceste pachete sunt deja compilate și sunt instalate prin intermediul Pacman. Pentru th
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (consultați acest articol.) Un server web care rulează, fie accesul Apache, fie Nginx Sudo: Comenzile necesită
Dacă utilizați direct makepkg, acesta poluează oarecum sistemul dumneavoastră. Trebuie să fie instalat grupul de pachete de bază de dezvoltare. În acest mod, în mod implicit, sunt necesare dependențele onl
Acest tutorial explică modul de configurare a unui server Team Fortress 2 pe Arch Linux. Presupun că sunteți conectat cu un cont de utilizator non-root care are acces sudo
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (a se vedea acest articol.) Acces Sudo: Comenzile necesare pentru a fi rulate ca root sunt prefixate de # și una
Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (consultați acest articol.) Un server web care rulează, fie accesul Apache, fie Nginx Sudo: Comenzile necesită
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.
Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.
Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.
Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.
CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?
Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.
Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!
Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.
Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe