Como instalar o Apache 2.4 no Arch Linux
Pré-requisitos Um servidor Vultr executando o Arch Linux. Consulte este guia para mais informações. Acesso Sudo. Comandos necessários para serem executados como ar raiz
O pacote Devtools foi originalmente criado para Usuários Confiáveis para criar corretamente pacotes para os repositórios oficiais. No entanto, ele também pode ser usado por usuários comuns para criar pacotes AUR ou mesmo pacotes oficiais modificados.
Consulte este guia para entender e usar o AUR em geral, incluindo a obtenção do PKGBUILD
. Este documento mostra apenas as etapas específicas do Devtools, se for o método que você escolher para compilar um pacote.
O Devtools mantém uma instalação limpa separada do Arch, localizada em /var/lib/archbuild/<TARGET>/root
, que contém apenas grupos de pacotes base
e base-devel
. Se essa instalação limpa não existir, ela será criada automaticamente. Se existir, ele atualizará automaticamente quaisquer pacotes nele. Quando o Devtools é usado para criar um pacote, ele começa com uma cópia dessa instalação limpa, instala os pacotes necessários apenas na cópia, copia o código-fonte nele, executa a compilação e o empacotamento nele e copia apenas o pacote resultante, de forma idêntica à encontrada nos repositórios oficiais.
Há vantagens no Devtools em executar makepkg
diretamente. Uma vantagem é que base-devel
e outros pacotes necessários para compilar, mas não executar, o pacote que você está criando nunca acaba no seu sistema principal. São menos pacotes que precisam ser atualizados periodicamente e têm preocupações. Embora seja principalmente um benefício para os mantenedores de pacotes do Arch, esse processo expõe facilmente quando a PKGBUILD
está incorreto, como se uma dependência não for listada, que o mantenedor já esteja instalado em seu sistema principal. Você também pode usar uma máquina que é mais rápida na criação de pacotes e copiar o pacote resultante para uma máquina mais lenta que a executará, sem poluir a instalação da máquina de construção.
A principal desvantagem é que a raiz limpa está sempre lá, ocupando cerca de 800 MB, e geralmente uma única cópia está ocupando mais espaço. Observe que, se você /var/lib/archbuild/
usa o Btrfs, a cópia da raiz limpa começa sendo um instantâneo do Btrfs, para que esses arquivos não ocupem o dobro do espaço. A raiz limpa é sempre mantida lá para evitar a reinstalação toda vez que um pacote está sendo feito.
Instale o Devtools:
# pacman -S devtools
Para criar um pacote, o Devtools inclui archbuild
, mas você não o executa diretamente. Ele também inclui links simbólicos de {extra, gnome-unstable, kde-unstable, staging, testing}-x86_64-build
. O link simbólico que está sendo usado para executá-lo será inspecionado por archbuild
, para determinar qual destino você deseja que ele use. Pode ser executado para usar esses repositórios instáveis / temporários / de teste, que podem ter versões mais recentes que as lançadas nos repositórios oficiais. Para usar os repositórios oficiais para pacotes não-AUR, no diretório com PKGBUILD
, por exemplo, o diretório criado por git clone
, execute o seguinte:
$ extra-x86_64-build
Nota: O restante deste guia simplesmente se refere extra-x86_64-build
.
Após a execução, os seguintes resultados serão:
/var/lib/archbuild/extra-x86_64/root
- Um chroot limpo , que é uma instalação atualizada apenas com grupos de pacotes base
e base-devel
./var/lib/archbuild/extra-x86_64/<USERNAME>
- Isso conterá um chroot de construção . Esta é uma cópia do chroot limpo com todas as dependências necessárias para criar ou executar o pacote que está sendo construído, bem como seu código-fonte, resultados de compilação e pacote.No final, você pode perceber " Checking PKGBUILD
" e " Checking <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
". Quaisquer linhas após a saída namcap
delas, que procurarão automaticamente problemas como PKGBUILD
arquivos malformados , dependências incluídas que o pacote não parece usar, dependências não incluídas que o pacote parece usar e muito mais. Os falsos positivos geralmente são gerados por namcap
, mas é uma ótima ferramenta para fornecer informações a serem investigadas. Se o seu pacote funcionar corretamente, não é uma boa ideia alertar o mantenedor para a namcap
saída, a menos que você o tenha examinado e verificado que uma alteração deve ser feita.
Você pode usar pacman
para instalar o pacote, que instalará quaisquer dependências necessárias para executar o pacote, desde que estejam em repositórios oficiais ou em um repositório local.
Use um repositório local, conforme explicado aqui , ou instale o arquivo diretamente:
# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz
Se você executar extra-x86_64-build
novamente, agora ou a qualquer momento posteriormente, com este ou outro pacote, ele atualizará o chroot limpo, se necessário, excluirá o chroot de construção e fará uma nova cópia do chroot limpo e execute o mesmo processo. Se o seu diretório ainda tiver o código-fonte baixado da última vez, ele será usado. Se o pacote for um pacote AUR de desenvolvimento, ele puxará novas alterações em vez de re-clonar.
Internamente, extra-x86_64-build
é executado makechrootpkg
, o que chama internamente makepkg
. As opções para extra-x86_64-build
incluem o seguinte:
-c
: Limpe os chroots, removendo e recriando o /var/lib/archbuild/extra-x86_64/
diretório inteiro , incluindo seu chroot limpo e todos os diretórios de build chroot. Isso raramente é necessário, apenas se o chroot limpo for corrompido ou se o Devtools for atualizado de uma maneira que interrompa a compatibilidade com versões anteriores.-r <dir>
: Use um diretório diferente do que /var/lib/archbuild/extra-x86_64/
para conter os chroots.Quaisquer argumentos para extra-x86_64-build
depois --
são passados para makechrootpkg
, quando ele o usa internamente. Vários argumentos são sempre transmitidos automaticamente de extra-x86_64-build
para makechrootpkg
. Esses argumentos automáticos são -r <value given to extra-x86_64-build -r option if given, /var/lib/archbuild/extra-x86_64 otherwise> -c -n
. Eles dizem makechrootpkg
para remover o chroot de compilação e torná-lo uma nova cópia do chroot limpo, e executar namcap
no pacote se ele for compilado com êxito. Uma opção comumente usada para a qual você pode passar makechrootpkg
é -l <copy name>
. Este é o nome do diretório para fornecer ao chroot de construção, em vez de <USERNAME>
, o que é útil para manter várias cópias ou compilar vários pacotes ao mesmo tempo.
Quaisquer argumentos para makechrootpkg
depois --
são passados para makepkg
, quando ele internamente o usa para criar o pacote. Na primeira vez em que makepkg
é executado makechrootpkg
, ele é feito com suas próprias opções imutáveis, para baixar arquivos de origem, se necessário, e executar verificações de integridade; portanto, nada pode ser encaminhado nessa execução. É executado makepkg
uma segunda vez para compilar o pacote e sempre passa automaticamente makepkg
argumentos dos --syncdeps --noconfirm --log --holdver --skipinteg
quais diz makepkg
para, dentro do chroot de compilação, instalar automaticamente dependências ausentes necessárias para compilar e usar o pacote, para não pedir confirmação durante pacman
, registre o processo de compilação em texto além de arquivos stdout
, não atualize o código-fonte se estiver em um sistema de controle de versão e não execute verificações de verificação de arquivo-fonte.
Você pode encadear isso usando o seguinte formulário:
$ extra-x86_64-build <DEVTOOLS-OPTIONS> -- <MAKECHROOTPKG-OPTIONS> -- <MAKEPKG-OPTIONS>
Observe que /var/lib/archbuild
pode ser tratado como se fosse um diretório temporário. Se você possui vários discos rígidos Vultr, vale a pena montar um sistema de arquivos RAID0 (listra) aqui. Se você possui muita RAM, também pode montar um sistema de arquivos com suporte para RAM tmpfs
. Após a compilação de um pacote, ele é copiado para o diretório a extra-x86_64-build
partir do qual você executou e, se desejar, neste momento você pode excluir /var/lib/archbuild
. A próxima execução seria mais lenta, porque precisaria criar uma nova raiz limpa. Como alternativa, você pode excluir /var/lib/archbuild/<USERNAME>
para recuperar espaço extra do chroot de construção antes que ele seja excluído automaticamente na próxima execução do Devtools. Portanto, mesmo se você tivesse um sistema de arquivos RAID0 montado aqui, o máximo que você perderia seria uma compilação em processo.
Existem alguns detalhes a serem observados nos arquivos de configuração do Devtools. Eles estão localizados em /usr/share/devtools/
, como makepkg-x86_64.conf
e pacman-extra.conf
:
/etc
arquivos como makepkg.conf
e pacman.conf
, você pode editá-los com segurança no local e, quando o pacote for atualizado, ele não substituirá suas alterações. Em vez disso, ele salvará os novos arquivos de configuração (se eles mudaram da versão anterior) terminando com .pacnew
. No entanto, os arquivos de configuração do Devtools estão nos /usr/share/
quais não se destina a serem editados pelo usuário; portanto, quando o Devtools for atualizado, ele substituirá completamente suas alterações nesses arquivos sem alertá-lo. Uma alteração nesse comportamento foi proposta e rejeitada, porque isso ajuda a garantir que os pacotes sejam enviados aos repositórios oficiais, todos com as mesmas configurações de compilação.MAKEFLAGS
, PACKAGER
e {SRC,SRCPKG,PKG,LOG}DEST
é obtido em /etc/makepkg.conf
vez de /usr/share/devtools/makepkg-x86_64.conf
.Se você está construindo pacotes que têm dependências em outros pacotes que você construiu, você precisa usar um repositório local, para que, quando pacman
executado dentro do chroot de construção, encontre as dependências.
Para configurar um repositório local, consulte a seção "Repositório local" deste guia .
Crie um destino personalizado:
# ln -s archbuild /usr/bin/custom-x86_64-build
# cp /usr/share/devtools/pacman-{extra,custom}.conf
Edite /usr/share/devtools/pacman-custom.conf
e adicione o seguinte no final:
[archLocalRepo]
SigLevel = Optional TrustAll
Server = file:///archLocalRepo
Edite /etc/pacman.conf
e adicione o seguinte. Isso força o diretório a ser montado em ligação no chroot:
CacheDir = /var/cache/pacman/pkg/ /archLocalRepo/
Agora, em vez de usar, extra-x86_64-build
use isto:
$ custom-x86_64-build
Se você sempre quiser usar o destino personalizado, poderá excluir o /var/lib/archbuild/extra-x86_64-build/
diretório, se existir, pois os chroots estarão agora /var/lib/archbuild/custom-x86_64-build/
.
Observe que ativar o empacotamento encadeado envolve editar os /usr/share/devtools
arquivos de configuração, que não são oficialmente suportados, portanto, você precisará executar essa alteração sempre que o Devtools for atualizado.
O Devtools combina um pacote inteiro em um formato de arquivo morto. Por padrão, ele .tar.xz
utiliza um único thread para a xz
compactação.
Em sistemas com várias CPUs, você pode permitir o xz
uso de vários threads editando /usr/share/devtools/makepkg-x86_64.conf
e alterando a seguinte linha:
COMPRESSXZ=(xz -c -z -)
Para permitir quantos threads você possui núcleos virtuais:
COMPRESSXZ=(xz -c -z - --threads=0)
Para permitir o uso de vários núcleos virtuais, mas não todos, para reduzir o impacto no desempenho geral do sistema, adicione um número específico:
COMPRESSXZ=(xz -c -z - --threads=21)
A especificação de mais threads do que o número de núcleos virtuais que você possui diminuirá o desempenho.
Se você não se importa que o arquivo do pacote seja (potencialmente muito) maior, desative a compactação editando /usr/share/devtools/makepkg-x86_64.conf
e altere a seguinte linha:
PKGEXT='.pkg.tar.xz'
Altere para ter a seguinte aparência:
PKGEXT='.pkg.tar'
Pré-requisitos Um servidor Vultr executando o Arch Linux. Consulte este guia para mais informações. Acesso Sudo. Comandos necessários para serem executados como ar raiz
Este tutorial explica como configurar um servidor Team Fortress 2 no Arch Linux. Presumo que você esteja logado com uma conta de usuário não raiz que tenha acesso ao sudo
Este tutorial explica como configurar um servidor Mumble (Murmur) no Arch Linux. Tudo o que é feito neste tutorial é feito como usuário root. Instalação e
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo.) Um servidor Web em execução, com acesso ao Apache ou Nginx Sudo: os comandos requerem
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo) Acesso ao Sudo: os comandos necessários para serem executados como raiz são prefixados por # e um
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo.) Um servidor da Web em execução, com acesso ao Apache ou Nginx Sudo. Comandos requerem
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo.) Acesso ao Sudo. Os comandos que precisam ser executados como raiz são prefixados por # e um
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo.) Acesso ao Sudo: os comandos necessários para serem executados como raiz são prefixados por # e um
Este tutorial explica como configurar um servidor Minecraft usando o Spigot no Arch Linux. Este tutorial assume que você é um usuário normal (não root) e que possui
No Arch Linux, os repositórios oficiais são: core, extra e community. Esses pacotes já estão compilados e são instalados através do pacman. Adiante
Este tutorial explica como configurar um servidor Counter-Strike: Global Offensive no Arch Linux. Este tutorial pressupõe que você efetuou login com um uso padrão
O Vultr fornece a incrível funcionalidade de permitir que você use sua própria imagem personalizada, além de seus excelentes modelos, que permitem executar
Prefácio O Arch Linux é uma distribuição de uso geral conhecida por sua tecnologia de ponta e configuração flexível. Com os snapshots do Btrfs, podemos tirar
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo.) Um servidor da Web em execução, Apache ou Nginx Sudo access Commands required t
Se você usa o makepkg diretamente, polui seu sistema. O grupo de pacotes base-devel deve estar instalado. Dessa forma, por padrão, as dependências necessárias apenas
Introdução O Arch Linux possui uma distribuição menor, mas ainda forte, do que as distribuições mais populares. Sua filosofia é bastante diferente, com vantagens e
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo.) Um servidor Web em execução, com acesso ao Apache ou Nginx Sudo: os comandos requerem
Pré-requisitos Um servidor Vultr executando o Arch Linux atualizado (consulte este artigo.) Acesso ao Sudo. Os comandos que precisam ser executados como raiz são prefixados por #. º
Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane
ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.
O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+
Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.
Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais
13 Ferramentas de Extração de Dados Comerciais de Big Data
Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true
À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.
Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1
A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA na área da saúde ainda está crescendo dia a dia.