Namestitev 2019 Arch Linux na strežnik Vultr
Uvod Arch Linux ima manjše, a še vedno močne sledi kot bolj priljubljene distribucije. Njegova filozofija je precej drugačna, s prednostmi
Paket Devtools je bil prvotno narejen za zaupanja vredne uporabnike, da pravilno ustvarijo pakete za uradna skladišča. Lahko pa ga uporabljajo tudi navadni uporabniki za izdelavo paketov AUR ali celo spremenjenih uradnih paketov.
Glejte ta priročnik za razumevanje in uporabo AUR na splošno, vključno s pridobivanjem PKGBUILD
. Ta dokument prikazuje samo korake, specifične za Devtools, če je to metoda, ki ste jo izbrali za prevajanje paketa.
Devtools vzdržuje ločeno čisto namestitev Arch, ki se nahaja v /var/lib/archbuild/<TARGET>/root
, ki vsebuje samo skupine paketov base
in base-devel
. Če ta čista namestitev ne obstaja, jo samodejno ustvari. Če obstaja, samodejno posodobi vse pakete v njem. Ko se Devtools uporablja za gradnjo paketa, se začne s kopijo te čiste namestitve, namesti zahtevane pakete samo v kopijo, vanj kopira izvorno kodo, izvede prevajanje in pakiranje v njem ter samo prekopira nastali paket, v enaki obliki kot v uradnih repozitorijih.
Devtools imajo prednosti pred makepkg
neposrednim izvajanjem. Ena od prednosti je, da base-devel
in drugi paketi, potrebni za prevajanje, vendar ne za zagon, paketa, ki ga izdelujete, nikoli ne konča v vašem glavnem sistemu. To je manj paketov, ki jih je treba občasno nadgrajevati, in glede tega imate pomisleke. Čeprav je v prvi vrsti prednost za vzdrževalce paketov Arch, ta postopek zlahka razkrije, če je a PKGBUILD
napačen, na primer, če je na seznamu spregledana odvisnost, ki jo je vzdrževalec že namestil v njihov glavni sistem. Uporabite lahko tudi stroj, ki je hitrejši pri izdelavi paketov, in nastali paket kopirate na počasnejši stroj, ki ga bo pognal, ne da bi pri tem onesnažil namestitev gradbenega stroja.
Glavna pomanjkljivost je, da je čisti koren vedno tam in zavzame približno 800 MB, običajno pa je tam ena kopija, ki zavzame več prostora. Upoštevajte, da če /var/lib/archbuild/
uporabljate Btrfs, se kopija čistega korena začne kot posnetek Btrfs, tako da te datoteke ne zavzamejo dvojnega prostora. Čisti koren se vedno hrani tam, da se izogne ponovni namestitvi vsakič, ko se naredi paket.
Namesti Devtools:
# pacman -S devtools
Za izdelavo paketa Devtools vključuje archbuild
, vendar tega ne zaženete neposredno. Vključuje tudi simbolne povezave {extra, gnome-unstable, kde-unstable, staging, testing}-x86_64-build
. Simbolna povezava, ki se uporablja za zagon, jo bo pregledal archbuild
, da bi ugotovil, kateri cilj želite uporabiti. Lahko ga zaženete za uporabo teh nestabilnih/uprizoritvenih/testnih skladišč, ki imajo morda novejše različice, kot so bile izdane v uradnih repozitorijih. Če želite uporabiti uradna skladišča za pakete, ki niso AUR, v imeniku z PKGBUILD
, na primer imenik, ki ga je ustvaril git clone
, zaženite naslednje:
$ extra-x86_64-build
Opomba: Preostanek tega priročnika se bo preprosto nanašal na extra-x86_64-build
.
Ko se konča, bodo rezultati naslednji:
/var/lib/archbuild/extra-x86_64/root
- Čisti chroot , ki je posodobljena namestitev samo s skupinami paketov base
in base-devel
./var/lib/archbuild/extra-x86_64/<USERNAME>
- Ta bo vseboval build chroot . To je kopija čistega chroot-a z vsemi odvisnostmi, ki so potrebne za gradnjo ali zagon paketa, ki se gradi, ter njegovo izvorno kodo, rezultati prevajanja in paket.Na koncu boste morda opazili " Checking PKGBUILD
" in " Checking <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
". Vse vrstice za temi so izhodne iz namcap
, ki samodejno išče težave, kot so napačno oblikovane PKGBUILD
datoteke, vključene odvisnosti, za katere se zdi, da jih paket ne uporablja, odvisnosti, ki niso vključene, za katere se zdi, da jih paket uporablja, in drugo. Lažno pozitivne rezultate pogosto ustvari namcap
, vendar je odlično orodje za dajanje stvari, ki jih je treba raziskati. Če vaš paket deluje pravilno, ni dobro, da vzdrževalca opozorite na namcap
izpis, razen če ste ga pogledali in preverili, ali je potrebna sprememba.
Uporabite lahko pacman
za namestitev paketa, ki bo namestil vse odvisnosti, potrebne za zagon paketa, dokler so v uradnih repozitorijih ali lokalnem skladišču.
Uporabite lokalno skladišče, kot je razloženo tukaj , ali pa namestite datoteko neposredno:
# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
Če bi zagnali extra-x86_64-build
znova, takoj ali kadar koli pozneje s tem ali drugim paketom, bo po potrebi posodobil čisti chroot, izbrisal build chroot in ga naredil za novo kopijo čistega chroot-a ter izvedel isti postopek. Če ima vaš imenik še vedno nazadnje preneseno izvorno kodo, jo bo uporabil. Če je paket razvojni paket AUR, bo namesto ponovnega kloniranja potegnil nove spremembe.
Interno extra-x86_64-build
teče makechrootpkg
, ki interno kliče makepkg
. Možnosti za extra-x86_64-build
vključujejo naslednje:
-c
: Očistite chroot tako, da odstranite in ponovno /var/lib/archbuild/extra-x86_64/
ustvarite celoten imenik, vključno z njegovim čistim chroot in vsemi build imeniki chroot. To je redko potrebno, le če se čisti chroot poškoduje ali če je orodje Devtools nadgrajeno na način, ki krši združljivost za nazaj.-r <dir>
: Uporabite drug imenik kot /var/lib/archbuild/extra-x86_64/
za shranjevanje chroot.Vsi argumenti za extra-x86_64-build
after --
so posredovani v makechrootpkg
, ko ga interno uporablja. Več argumentov se vedno samodejno prenese iz extra-x86_64-build
na makechrootpkg
. Ti samodejni argumenti so -r <value given to extra-x86_64-build -r option if given, /var/lib/archbuild/extra-x86_64 otherwise> -c -n
. Povejo, makechrootpkg
da odstranite build chroot in ga naredite za novo kopijo čistega chroot-a ter zaženete namcap
v paketu, če se uspešno zgradi. Pogosto uporabljena možnost, na katero se lahko prenese, makechrootpkg
je -l <copy name>
. To je ime imenika, ki daje build chroot namesto <USERNAME>
, kar je uporabno za vzdrževanje več kopij ali prevajanje več paketov hkrati.
Vsi argumenti za makechrootpkg
after --
se posredujejo makepkg
, ko ga interno uporablja za gradnjo paketa. Prvič, ko makepkg
ga zažene makechrootpkg
, se izvaja z lastnimi nespremenljivimi možnostmi, za prenos izvornih datotek, če je potrebno, in izvajanje preverjanj integritete; tako pri tem teku ni mogoče posredovati ničesar. Zažene makepkg
se drugič za gradnjo paketa in vedno samodejno posreduje makepkg
argumente, --syncdeps --noconfirm --log --holdver --skipinteg
ki pove, makepkg
naj znotraj build chroot samodejno namesti manjkajoče odvisnosti, potrebne za gradnjo in uporabo paketa, da ne zahteva potrditve med pacman
, zapiše postopek gradnje v besedilo datoteke poleg stdout
, ne posodabljajte izvorne kode, če ste v sistemu za nadzor različic in ne izvajajte preverjanj preverjanja izvorne datoteke.
Te lahko povežete skupaj z naslednjim obrazcem:
$ extra-x86_64-build <DEVTOOLS-OPTIONS> -- <MAKECHROOTPKG-OPTIONS> -- <MAKEPKG-OPTIONS>
Upoštevajte, da /var/lib/archbuild
ga je mogoče obravnavati, kot da bi bil začasni imenik. Če imate več trdih diskov Vultr, je vredno tukaj namestiti datotečni sistem RAID0 (trak). Če imate veliko RAM-a, lahko namestite tudi datotečni sistem, podprt z RAM-om, kot je tmpfs
. Ko je paket zgrajen, se prekopira v imenik, extra-x86_64-build
iz katerega ste zagnali, in če želite, lahko na tej točki izbrišete /var/lib/archbuild
. Naslednji zagon bi bil počasnejši, ker bi moral narediti nov čisti koren. Druga možnost je, da izbrišete, /var/lib/archbuild/<USERNAME>
da pridobite dodaten prostor iz chroot gradnje, preden ga samodejno izbriše naslednji zagon orodja Devtools. Torej, tudi če bi tukaj nameščen datotečni sistem RAID0 ne uspe, bi največ, kar bi izgubili, bila kompilacija v postopku.
Pri konfiguracijskih datotekah Devtools je treba upoštevati nekaj posebnosti. Nahajajo se v /usr/share/devtools/
, kot so makepkg-x86_64.conf
in pacman-extra.conf
:
/etc
datoteke, kot sta makepkg.conf
in pacman.conf
, jih lahko varno urejate na mestu, in ko je paket nadgrajen, ne bo prepisal vaših sprememb. Namesto tega bo shranil nove konfiguracijske datoteke (če so se spremenile od prejšnje različice), ki se končajo z .pacnew
. Vendar pa so konfiguracijske datoteke Devtools, v /usr/share/
katerih niso namenjene urejanju uporabnikov, zato bo ob nadgradnji Devtools popolnoma prepisal vaše spremembe teh datotek, ne da bi vas o tem opozoril. Sprememba tega vedenja je bila predlagana in zavrnjena, ker to pomaga zagotoviti, da so paketi poslani v uradna skladišča z enakimi nastavitvami prevajanja.MAKEFLAGS
, PACKAGER
in {SRC,SRCPKG,PKG,LOG}DEST
sta vzeta iz /etc/makepkg.conf
namesto /usr/share/devtools/makepkg-x86_64.conf
.Če gradite pakete, ki so odvisni od drugih paketov, ki ste jih zgradili, morate uporabiti lokalni repozitorij, tako da, ko se pacman
zažene znotraj chroot gradnje, najde odvisnosti.
Če želite nastaviti lokalno skladišče, glejte razdelek »Lokalni repozitorij« tega priročnika .
Ustvari cilj po meri:
# ln -s archbuild /usr/bin/custom-x86_64-build
# cp /usr/share/devtools/pacman-{extra,custom}.conf
Uredite /usr/share/devtools/pacman-custom.conf
in na koncu dodajte naslednje:
[archLocalRepo]
SigLevel = Optional TrustAll
Server = file:///archLocalRepo
Uredite /etc/pacman.conf
in dodajte naslednje. To prisili, da je imenik vezano nameščen v chroot:
CacheDir = /var/cache/pacman/pkg/ /archLocalRepo/
Zdaj namesto uporabe extra-x86_64-build
uporabite to:
$ custom-x86_64-build
Če želite vedno uporabljati cilj po meri, lahko izbrišete /var/lib/archbuild/extra-x86_64-build/
imenik, če obstaja, saj bodo chroot zdaj v /var/lib/archbuild/custom-x86_64-build/
.
Upoštevajte, da omogočanje nitnega pakiranja vključuje urejanje /usr/share/devtools
konfiguracijskih datotek, kar ni uradno podprto, zato boste morali to spremembo izvesti ob vsaki nadgradnji orodja Devtools.
Devtools združuje celoten paket v arhivski format. Privzeto .tar.xz
za xz
stiskanje uporabi eno nit .
V sistemih z več CPE lahko dovolite xz
uporabo več niti z urejanjem /usr/share/devtools/makepkg-x86_64.conf
in spremenite naslednjo vrstico:
COMPRESSXZ=(xz -c -z -)
Če želite dovoliti toliko niti, kolikor imate navideznih jeder:
COMPRESSXZ=(xz -c -z - --threads=0)
Če želite omogočiti uporabo več virtualnih jeder, vendar ne vseh, da bi zmanjšali vpliv na splošno zmogljivost sistema, dodajte določeno število:
COMPRESSXZ=(xz -c -z - --threads=21)
Če navedete več niti od števila navideznih jeder, ki jih imate, se bo zmogljivost zmanjšala.
Če vas ne moti, da je datoteka paketa (potencialno veliko) večja, onemogočite stiskanje z urejanjem /usr/share/devtools/makepkg-x86_64.conf
in spremenite naslednjo vrstico:
PKGEXT='.pkg.tar.xz'
Spremenite ga, da bo videti takole:
PKGEXT='.pkg.tar'
Uvod Arch Linux ima manjše, a še vedno močne sledi kot bolj priljubljene distribucije. Njegova filozofija je precej drugačna, s prednostmi
Vultr vam ponuja izjemno funkcionalnost, ki vam omogoča uporabo lastne slike po meri poleg njihovih odličnih predlog, kar vam omogoča zagon
Paket Devtools je bil prvotno narejen za zaupanja vredne uporabnike, da pravilno ustvarijo pakete za uradna skladišča. Lahko pa ga uporablja navaden uporabnik
Če makepkg uporabljate neposredno, nekoliko onesnaži vaš sistem. Skupina paketov osnovnega razvoja mora biti nameščena. Na ta način so privzeto potrebne samo odvisnosti
Predpogoji Strežnik Vultr, ki izvaja posodobljen Arch Linux (glejte ta članek.) Dostop Sudo. Ukazi, ki jih je treba zagnati kot root, imajo predpono # in ena
Predpogoji Strežnik Vultr z najnovejšo različico Arch Linux (glejte ta članek.) Zagnan spletni strežnik, bodisi Apache ali Nginx Sudo, potrebni so ukazi t
V Arch Linuxu so uradna skladišča: jedro, ekstra in skupnost. Ti paketi so že prevedeni in so nameščeni prek pacmana. Za th
Ta vadnica pojasnjuje, kako nastaviti strežnik Minecraft z uporabo Spigot na Arch Linux. Ta vadnica predvideva, da ste običajen uporabnik (ne-root) in imate
Predpogoji Strežnik Vultr, ki izvaja posodobljen Arch Linux (glejte ta članek.) Dostop Sudo. Ukazi, ki jih je treba zagnati kot root, imajo predpono #. Th
Predpogoji Strežnik Vultr z najnovejšo različico Arch Linux. Za več informacij glejte ta priročnik. Sudo dostop. Ukazi, ki jih je treba zagnati kot root ar
Predpogoji Strežnik Vultr z najnovejšo različico Arch Linux (glejte ta članek.) Zagnan spletni strežnik, dostop do Apache ali Nginx Sudo: ukazi zahtevajo
Predgovor Arch Linux je distribucija splošnega namena, ki je dobro znana po svoji vrhunski tehnologiji in prilagodljivi konfiguraciji. S posnetki Btrfs lahko naredimo
Predpogoji Strežnik Vultr z najnovejšo različico Arch Linux (glejte ta članek.) Zagnan spletni strežnik, dostop do Apache ali Nginx Sudo: ukazi zahtevajo
Predpogoji Strežnik Vultr z najnovejšo različico Arch Linux (glejte ta članek.) Zagnan spletni strežnik, dostop do Apache ali Nginx Sudo. Ukazi zahtevajo
Ta vadnica pojasnjuje, kako nastaviti strežnik Mumble (Murmur) na Arch Linux. Vse, kar se naredi v tej vadnici, se izvaja kot root uporabnik. Namestitev an
Ta vadnica pojasnjuje, kako nastaviti strežnik Counter-Strike: Global Offensive na Arch Linux. Ta vadnica predpostavlja, da ste se prijavili s standardno uporabo
Ta vadnica pojasnjuje, kako nastaviti strežnik Team Fortress 2 na Arch Linux. Predvidevam, da ste prijavljeni z nekorenskim uporabniškim računom, ki ima sudo dostop
Predpogoji Strežnik Vultr z najnovejšo različico Arch Linux (glejte ta članek.) Dostop do sudo: ukazi, ki jih je treba zagnati kot root, imajo predpono # in ena
Predpogoji Strežnik Vultr z najnovejšo različico Arch Linux (glejte ta članek) Dostop Sudo: ukazi, ki jih je treba zagnati kot root, imajo predpono # in ena
Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.
Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.
Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.
Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.
Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…
Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.
Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.
Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.
V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.
Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več