UN Cron o Cron job è uno scheduler basato sul tempo comune nei sistemi Linux / Unix. Pianifica l’esecuzione periodica delle attività utente specificate in data, ora o intervalli fissi. La maggior parte di queste attività sono script per eseguire funzioni come backup e altro. Per creare questi cron job, utilizziamo i comandi crontab. Un crontab è un comando / utilità UNIX utilizzato per creare e gestire cron job.

Come vedrai di seguito, creare e modificare un cron job è abbastanza semplice. La parte più sorprendente è che non è necessario riavviare cron o nemmeno il PC dopo aver creato o modificato un cron job. Basta salvare il file e sei a posto.

Usi comuni di Cron Jobs

  • Impostazione dell’ora dell’hardware: il Network Time Protocol è utilizzato da molti computer per impostare l’ora del sistema ma non imposta l’ora dell’hardware. Con cron, puoi impostare l’ora dell’hardware in base all’ora del sistema.
  • Pianificazione di attività ed esecuzione di programmi che eseguono programmi giornalieri: con il servizio cron, è possibile eseguire molti servizi di sistema che richiedono un prompt quotidiano come Logwatch.
  • Pulizia automatica della directory, esecuzione dei programmi di backup e molto altro ancora.

Parti di base di un comando cron

La sintassi standard del crontab è la seguente:

a b c d e USERNAME /path/to/script output

1.L’ora e la data insieme alla ripetitività del lavoro sono specificate dai cinque campi:

    • un: Minuti: (a partire da 0 – 59)
    • b: Ore: (che vanno da 0-23 )
    • c: Giorni: (a partire da 0-31 )
    • d: Mesi: (a partire da 0-12 )
    • e: Giorni della settimana: (a partire da 0 – 7. )

Nota: i giorni iniziano con lunedì. 0 e 7 rappresentano domenica

2. USERNAME: Ricordati di sostituirlo con il tuo nome utente

3. La posizione e lo script specifici che devono essere eseguiti da cron sono specificati dal terzo segmento:

/path/to/script

4. L’ultima sezione definisce la notifica all’utente al completamento del lavoro come un modo per tenere traccia delle attività:

output

Tuttavia, la tua casella di posta potrebbe essere piena di attività minori che vengono spesso canalizzate. Per evitare ciò, puoi disabilitare l’output automatico dell’email aggiungendo la stringa seguente al tuo comando cron:

>/dev/null 2>&1
e.g
a b c d e USERNAME /path/to/script>/dev/null 2>&1

Inoltre, cron utilizza altri quattro valori utilizzati per specificare più valori in un campo. Loro sono:

  • Asterisco :
  • Si riferisce a tutti i valori in un campo. La virgola (,):
  • Utilizzare per separare un elenco di valori nel comando cron. Dash (-):
  • Specifica un intervallo di valori. Barra (/):

divide un valore in diversi passaggi.

Configurazione dei cron job

I comandi crontab sono responsabili della creazione e della modifica dei cron job perché i file cron non devono essere modificati direttamente. Il crontab definisce come creare, modificare, elencare, eseguire il debug, installare e disinstallare le attività cron.

sudo apt update
sudo apt upgrade

Prima di iniziare con i cron job, è essenziale assicurarsi che il desktop o il server Linux sia aggiornato eseguendo i comandi seguenti:

sudo apt-get install cron

Se non hai il pacchetto cron installato sul tuo sistema, installalo con il comando seguente:
Installa cron

Installa cron

Come modificare il file crontab?

Per completare il processo, dovrai configurare il cron job. L’utente che ha effettuato l’accesso quando viene creato un cron job diventa automaticamente il proprietario. Ciò può essere modificato creando un proprietario del lavoro che sarà incaricato di gestire il cron job, come vedremo in questo post.

crontab -e

Per aprire il file di configurazione crontab per l’utente attualmente connesso, eseguire il comando seguente:

Ti verrà richiesto dal sistema di scegliere un editor adatto.  Nel nostro caso, sceglieremo la prima opzione (nano editor).
crontab -e

crontab -e

È possibile aggiungere un'attività pianificata per riga in base alle proprie preferenze.
file crontab

file crontab

Dopo aver aggiunto le attività, terminare salvando il file ed uscire. Tutte le istruzioni fornite verranno lette ed eseguite dal demone cron. Le modifiche verranno applicate anche senza riavviare il sistema poiché il repository viene aggiornato automaticamente.

Modifica crontab per un utente diverso

crontab –u other_username –e

Crontab può essere modificato per diversi utenti utilizzando un comando nella sintassi seguente:

Come usare caratteri speciali nei comandi crontab

  • I caratteri e gli operatori determinano una maggiore personalizzazione del sistema poiché estendono le capacità di un’attività cron. */30 * * * *
  • La barra viene utilizzata per dividere una stringa temporale in passaggi specificati. Ad esempio, per eseguire un backup ogni 30 minuti, possiamo utilizzare:
    */15***
  • L’asterisco
    viene utilizzato per eseguire tutti i valori da eseguire. Per esempio:
0 6* * 1-5 /root/backup.sh

Il trattino (-) viene utilizzato per determinare la gamma di attività, come il numero di giorni. Per

  • ad esempio, eseguiremo il codice alle 6 del mattino ogni giorno della settimana, useremo;
    0 4 * * 2,4 /root/backup.sh

    Qui, 06 sta per 6 am. 1-5 sta per il numero di giorni (dal lunedì al venerdì).

  • Una virgola specifica le singole istanze in cui il codice deve essere eseguito:
35 1-23/2 * * * /path/to/script/script.sh

Il comando sopra eseguirà il codice dello script alle 4 del mattino di martedì e giovedì. Puoi anche combinare vari caratteri jolly per personalizzare ancora di più i tuoi comandi. Ad esempio, per eseguire il nostro script a giorni alterni a 35 minuti dopo l’ora, possiamo utilizzare il comando seguente: 1-23 specifica l’intervallo di ore,

/ 2

imposta l’intervallo ogni due ore.

crontab –l

Opzioni cron
Potresti voler elencare i cron job nel tuo sistema senza sbloccare il file di configurazione crontab. Questo può essere fatto avviando il tuo terminale e digitando il comando seguente:

elenca i lavori di cron

elenca i lavori di cron

crontab -r
  • Quel comando elenca tutti i cron job presenti nel tuo sistema.
crontab -r -u other-username

Per eliminare tutti i comandi crontab, puoi utilizzare il comando seguente:

Elimina un cron job per un altro utente.

@hourly: Usa le stringhe in Crontab Le stringhe sono strumenti estremamente utili per gli sviluppatori poiché evitano la scrittura ripetitiva di segmenti di codice. Fortunatamente, i crontabs supportano vari valori di stringhe. Loro includono:-stesso di – “0 * * * *” (viene eseguito una volta ogni
@midnight: ora )-come – “0 0 * * *” (viene eseguito una volta ogni
@daily: giorno
@weekly: ) uguale a mezzanotte-come – “0 0 * * 0” (viene eseguito una volta ogni
@monthly: settimana )-come – “0 0 1 * *” (viene eseguito una volta ogni
@annually: mese )-come – “0 0 1 1 *” (viene eseguito una volta ogni
@yearly: anno
@reboot: )

simile a @annually

@daily /path/to/backup_script.sh

Eseguito una volta dopo ogni riavvio / riavvio / avvio.

Un buon esempio; se disponi di uno script di backup che desideri eseguire ogni giorno, utilizza il comando seguente:

    1. Esempi di cron job
      * * * * * /your/script/path.sh
    2. Ecco un elenco di cron job di base che possono essere utilizzati quando si inizia:
      40 * * * * /your/script/path.sh
    3. Per eseguire uno script ogni minuto:
      0 * * * * /your/script/path.sh
    4. Per eseguire uno script ogni 40 minuti:
      0 0 * * * /your/script/path.sh
    5. Per eseguire uno script ogni ora:
      23 0-23/2 * * * /your/script/path.sh
    6. Per eseguire uno script ogni mezzanotte:
      5 4 * * sun /your/script/path.sh
    7. Per eseguire uno script ogni 23 minuti dopo la mezzanotte, le 2:00 e le 4:00 ogni giorno:
      0 22 * * 1-5 /your/script/path.sh
    8. Per eseguire uno script alle 4.05 ogni domenica.
      0 0 0 12 * /your/script/path.sh
    9. Eseguire uno script alle 22:00 durante la settimana.
      0 0 * * 6 /your/script/path.sh
    10. Per eseguire uno script il 1 ° dicembre: mezzanotte.
      0 * * * * /your/script/path.sh

Per eseguire uno script sabato a mezzanotte.

Per eseguire uno script ogni ora.

Con questi esempi di base, entrerai in una comprensione più profonda della sequenza e di come può essere modificata. /etc/cron.allow Limitazione dell’accesso a Cron /etc/cron.deny Vediamo che i lavori di cron possono tornare molto utili, specialmente quando vuoi automatizzare le tue attività. Tuttavia, può anche essere rischioso se il sistema consente a qualsiasi utente di creare un cron job. Anche se non influisce sui dati personali, alcuni cron job potrebbero richiedere una discreta quantità di risorse di sistema, ritardando così il PC. Per evitare tali scenari, l’amministratore di sistema (utente root) può creare un file o il file che contiene solo gli utenti che possono

“creare / non creare” /etc/cron.allow un cron job. /etc/cron.deny Il

il file contiene utenti che possono creare, modificare, visualizzare o rimuovere file crontab.  Se questo file non esiste, tutti gli utenti possono creare e gestire cron job diversi da quelli in
file. Se nessuno di questi file è presente, sono necessari i privilegi di superutente per eseguire il comando crontab.

cron consenti file

0 * * * * fosslinux /path/to/script.sh

cron consenti file

Ora che hai impedito agli utenti non root di creare cron job se ne avevano già, potresti prendere in considerazione l’aggiunta dei loro cron job nel file crontab di root. Ma ecco un enigma: aggiungendo i loro cron job al crontab di root, non vengono eseguiti i loro cron job come root? Bene, ecco l’importanza del campo USERNAME di cui abbiamo discusso sopra nella sintassi del comando cron. Ad esempio, il comando seguente:

Verrà eseguito come cron job utente “fosslinux” e non come utente root.

Conclusione

Ora hai una guida chiara sull’utilizzo dei lavori Cron per automatizzare varie attività sul tuo sistema. Questo non dovrebbe confonderti con le applicazioni di avvio. Usa gli esempi precedenti per provare ad automatizzare semplici script. Con il tempo, puoi combinare caratteri speciali e caratteri jolly per svolgere compiti molto più banali. Se hai appena iniziato, sarebbe fantastico leggere il nostro post sul tutorial sullo scripting bash con esempi che ti aiuteranno a creare il tuo primo script.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!

Otturatore è uno strumento di screenshot gratuito e open source, ricco di funzionalità per sistemi operativi basati su Linux come Ubuntu. È disponibile per tutte le principali distribuzioni GNU / Linux e può essere installato utilizzando il gestore di pacchetti predefinito.

Otturatore ti consente di acquisire uno screenshot di un’area, una finestra o un desktop / schermo intero specifici (o un’area di lavoro specifica). Ti consente anche di modificare lo screenshot e applicarvi diversi effetti, disegnare su di esso per evidenziare i punti e altro ancora. Supporta l’esportazione in PDF e piattaforme di hosting pubblico come Dropbox e Imgur e molti altri, o un server FTP remoto.

Shutter Screenshot Tool per Ubuntu e Mint
Shutter Screenshot Tool per Ubuntu e Mint

Su Ubuntu 20.04, il Otturatore pacchetto non è fornito nei repository ufficiali. Pertanto, è necessario installare il Otturatore pacchetto tramite una terza parte non ufficiale Ubuntu PPA (Archivi dei pacchetti personali) repository nel tuo sistema Ubuntu (funziona anche su Linux Mint).

Installa Shutter Screenshot Tool in Ubuntu 20.04 e Linux Mint 20

Innanzitutto, apri un terminale e aggiungi quanto segue non ufficiale Ubuntu PPA repository sul tuo sistema (segui le istruzioni dopo aver eseguito il file add-apt-repository comando), quindi aggiorna l’elenco delle fonti dei pacchetti apt per ottenere l’elenco più recente di pacchetti disponibili per includere il pacchetto Shutter e installa il pacchetto Shutter come mostrato:

$ sudo add-apt-repository -y ppa:linuxuprising/shutter
$ sudo apt-get update
$ sudo apt-get install -y shutter
Installa Shutter in Ubuntu
Installa Shutter in Ubuntu

Al termine dell’installazione, cerca un file otturatore nel menu di sistema e avvialo per iniziare a usarlo.

Otturatore in esecuzione in Ubuntu
Otturatore in esecuzione in Ubuntu

Rimuovi Shutter in Ubuntu e Mint

 

Se non hai più bisogno Otturatore sul tuo sistema, puoi rimuovere il file Otturatore pacchetto eseguendo il seguente comando apt:

$ sudo apt-get remove shutter
$ sudo add-apt-repository --remove ppa:linuxuprising/shutter


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!


ioSe sei un appassionato di Linux, è probabile che tu abbia almeno sentito parlare di Cub Linux ad un certo punto della tua vita. Tuttavia, se non è così e hai voglia di saperne di più, consenti a FOSSLinux di dirti tutto su ciò che Cub Linux rappresentava, la sua storia e cosa doveva portare in tavola.

Cos’era Cub Linux?

Per saperne di più su Cub Linux, dobbiamo prima conoscere ChromeOS. Fondamentalmente, questa è una distribuzione basata su Linux la cui interfaccia utente è simile a quella del browser Chromium. Inoltre, per quanto riguarda le sue applicazioni supportate, devi farlo per Chrome Web Store o Google Play Store, poiché il sistema operativo può eseguire anche app Android.

Cub Linux
Cub Linux

Basato su Ubuntu LTS 14.04 “Trusty Tahir”, Cub Linux era lì per offrire agli utenti un sostituto di Chrome OS, ma con un’interfaccia utente e funzionalità simili. Oltre a questo, questo sistema operativo aveva Openbox come gestore di finestre e veniva fornito con strumenti di XFCE, Gnome, LXDE e molti altri. Come ChromeOS, anche Cub Linux ha abbandonato l’utilizzo di dischi rigidi e ha salvato la maggior parte dei dati utente sul suo cloud. Come avrai notato, Cub è l’abbreviazione di Chromium e Ubuntu poiché il sistema operativo è una combinazione dei loro diversi elementi.

Cosa è successo a Cub Linux?

Il sistema operativo non è sempre stato conosciuto come Cub Linux. In realtà, quando è stato annunciato per la prima volta nel 2014, Chromixium OS era quello che veniva chiamato. Dopo un anno dal suo annuncio, la sua prima versione stabile è arrivata nel mondo open source come ISO live a 32 bit.

Detto questo, questa versione non è andata così liscia come previsto. Ci sono stati diversi bug segnalati dai suoi utenti, che includevano la generazione di menu lenta e lo screen tearing. Il lato positivo è che gli sviluppatori hanno presto risolto questi problemi e rilasciato un service pack oltre a vari aggiornamenti. Tuttavia, ciò che ha davvero portato Chromixium OS al livello successivo è stato il rilascio della sua versione a 64 bit nel novembre 2015.

Tutto questo sviluppo ha incontrato un ostacolo quando il proprietario di Chromium e Chrome OS, Google, ha inviato una richiesta agli sviluppatori del sistema operativo di rinunciare al nome “Chromixium” e ad altri siti Web di presenze sui social media correlati. Tuttavia, ciò non ha potuto fermare il capo di questo progetto, RichJack, poiché hanno presto affrontato questo problema e rinominato il loro sistema operativo come Cub Linux. Questi eventi si sono svolti alla fine del 2015 e si sono conclusi con una nota positiva, ma il progetto non sapeva cosa si stava avvicinando nel 2016.

Quando il 2016 si stava avvicinando alla fine, gli utenti di Cub Linux hanno iniziato a notare una cosa importante: il sito Web ufficiale era scomparso. Ciò si è rivelato indicare la fine di un progetto che avrebbe potuto fare miracoli in futuro. Anche se la loro pagina GitHub è aperta fino ad oggi, lo sviluppo si era interrotto e non aveva più senso tenere il passo con Cub Linux. Secondo uno sviluppatore, la fine improvvisa di questo progetto potrebbe essere attribuita a “restrizioni alla vita privata”, il che è vago come una dichiarazione potrebbe ottenere.

Detto questo, per quanto riguarda il futuro di Cub Linux, molti altri sviluppatori si sono interessati a questo progetto e hanno voluto riprenderlo. Di conseguenza, lo sviluppatore del sistema operativo Feren ha annunciato nel 2017 che avrebbe dato a Cub Linux una profonda revisione e “riportato Cub” con il nome di Phoenix Linux. Questa potrebbe sembrare una buona notizia per alcuni, ma onestamente, il futuro di Phoenix Linux non sembra troppo luminoso poiché il progetto non ha ricevuto un altro aggiornamento da marzo 2018. Se siamo davvero fiduciosi, avremo qualcosa al più presto come 2021, ma aspettare più a lungo non avrebbe molto senso.

Cub Linux era davvero buono?

Cub Linux è stato generalmente ben accolto dagli utenti, ed è per questo che il sistema operativo è noto fino ad oggi. Una buona regola empirica per stabilire se è probabile che il sistema operativo ne valga la pena o meno dipende dall’utilizzo del computer. Quindi, le persone che usano principalmente il proprio computer per navigare in Internet adoreranno sicuramente Cub Linux.

Detto questo, puoi anche ottenere più usi da questo sistema operativo con diversi metodi. L’unico svantaggio è che dovrai fare uno sforzo extra per fare in modo che questo sistema operativo faccia ciò che altri sistemi operativi possono fare immediatamente.

Pannello di controllo Cub Linux
Pannello di controllo Cub Linux

Tuttavia, dobbiamo ricordare che Chromixium è stato in grado di raggiungere solo la v1.0. Di conseguenza, gli sviluppatori avrebbero sicuramente molte più funzionalità da integrare nel prossimo futuro. Tuttavia, considerando il sistema operativo nella sua forma originale, Cub Linux ha fornito agli utenti l’opportunità di beneficiare di un ambiente basato sul web, consentendo allo stesso tempo di utilizzare applicazioni installate localmente. Anche se molto avrebbe potuto essere migliorato nel sistema operativo, era solo nelle sue fasi iniziali e non c’è modo di dire cosa avesse in serbo il futuro per Cub Linux.

Conclusione

Cub Linux era un’opzione unica nel suo genere nel mondo delle distribuzioni basate su Linux. Tuttavia, anche se il limite era il cielo per questo sistema operativo, purtroppo ha incontrato il suo destino solo un paio d’anni dopo il suo rilascio iniziale. Il lato positivo è che questo progetto è stato ripreso dallo sviluppatore di Feren OS, quindi c’è ancora qualche speranza che lo sviluppo di questo progetto possa riprendere un po ‘di ritmo.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!

UN Rete privata virtuale è una soluzione tecnologica utilizzata per fornire privacy e sicurezza per le connessioni tra le reti. Il caso più noto è costituito da persone che si connettono a un server remoto con traffico che passa attraverso una rete pubblica o non sicura (come Internet).

Immagina i seguenti scenari:

Diagramma di rete OpenVPN
Diagramma di rete OpenVPN

In questo articolo, spiegheremo come impostare un file VPN server in un file RHEL/CentOS 8/7 scatola utilizzando OpenVPN, un’applicazione di tunneling robusta e altamente flessibile che utilizza le funzionalità di crittografia, autenticazione e certificazione della libreria OpenSSL. Per semplicità, considereremo solo un caso in cui il server OpenVPN funge da gateway Internet sicuro per un client.

Per questa configurazione, abbiamo utilizzato tre macchine, la prima funge da file OpenVPN server e gli altri due (Linux e finestre) fungono da client per connettersi al server OpenVPN remoto.

Nota: Le stesse istruzioni funzionano anche su RHEL 8/7 e Fedora sistemi.

Installazione del server OpenVPN in CentOS 8

 

1. Installare OpenVPN in un RHEL/CentOS 8/7 server, dovrai prima abilitare il repository EPEL e quindi installare il pacchetto. Questo include tutte le dipendenze necessarie per installare il pacchetto OpenVPN.

# yum update
# yum install epel-release

2. Successivamente, scaricheremo OpenVPN’s script di installazione e configurare la VPN. Prima di scaricare ed eseguire lo script, è importante trovare l’indirizzo IP pubblico del tuo server in quanto ti sarà utile durante la configurazione del server OpenVPN.

Un modo semplice per farlo è usare il comando curl come mostrato:

$ curl ifconfig.me
Controlla l'indirizzo IP del server CentOS
Controlla l’indirizzo IP del server CentOS

In alternativa, puoi richiamare il comando dig come segue:

$ dig +short myip.opendns.com @resolver1.opendns.com
Trova l'indirizzo IP del server CentOS
Trova l’indirizzo IP del server CentOS

Se si verifica un errore “dig: comando non trovato“Installa il scavare utilità eseguendo il comando:

$ sudo yum install bind-utils

Questo dovrebbe risolvere il problema.

Una nota sugli indirizzi IP pubblici

I server cloud di solito hanno 2 tipi di indirizzi IP:

  • Un unico indirizzo IP pubblico: Se hai un VPS su piattaforme Cloud come Linode, Cloudcone, o Oceano digitale, di solito troverai un solo indirizzo IP pubblico allegato.
  • Un indirizzo IP privato dietro NAT con un IP pubblico: Questo è il caso di un file EC2 istanza su AWS o un’istanza di calcolo su Google Cloud.

Qualunque sia lo schema di indirizzamento IP, il OpenVPN Lo script rileverà automaticamente la configurazione della rete VPS e tutto ciò che devi fare è fornire l’indirizzo IP pubblico o privato associato.

3. Ora procediamo e scarichiamo il file OpenVPN script di installazione, eseguire il comando mostrato.

$ wget https://raw.githubusercontent.com/Angristan/openvpn-install/master/openvpn-install.sh
Scarica OpenVPN Script
Scarica OpenVPN Script

4. Quando il download è completo, assegna i permessi di esecuzione ed esegui lo script della shell come mostrato.

$ sudo chmod +x openvpn-install.sh
$ sudo ./openvpn-install.sh

Il programma di installazione ti guida attraverso una serie di prompt:

5. Innanzitutto, ti verrà chiesto di fornire l’indirizzo IP pubblico del tuo server. Successivamente, si consiglia di utilizzare le opzioni predefinite come il numero di porta predefinito (1194) e protocollo da utilizzare (UDP).

Installa OpenVPN in CentOS 8
Installa OpenVPN in CentOS 8

6. Quindi, seleziona l’impostazione predefinita DNS resolver e selezionare l’opzione No ( n ) sia per le impostazioni di compressione che di crittografia.

Configura DNS per OpenVPN
Configura DNS per OpenVPN

7. Una volta terminato, lo script inizializzerà la configurazione del server OpenVPN insieme all’installazione degli altri pacchetti software e delle dipendenze.

Installazione di OpenVPN su CentOS 8
Installazione di OpenVPN su CentOS 8

8. Infine, verrà generato un file di configurazione del client utilizzando l’estensione facile-RSA pacchetto che è uno strumento da riga di comando utilizzato per la gestione dei certificati di sicurezza.

Fornisci semplicemente il nome del cliente e vai con le selezioni predefinite. Il file client verrà archiviato nella directory home con estensione .ovpn.

Configurazione client OpenVPN con Easy-RSA
Configurazione client OpenVPN con Easy-RSA

9. Una volta terminato lo script, configurare il file OpenVPN server e creando il file di configurazione del client, un’interfaccia tunnel tun0 verrà generato. Questa è un’interfaccia virtuale in cui tutto il traffico dal PC client verrà trasmesso al server.

OpenVPN Tunnel Interface
OpenVPN Tunnel Interface

10. Ora puoi iniziare e controllare lo stato del file OpenVPN server come mostrato.

$ sudo systemctl start [email protected]
$ sudo systemctl status [email protected]
Controlla lo stato del server OpenVPN
Controlla lo stato del server OpenVPN

Come configurare il client OpenVPN in Linux

11. Ora vai al sistema client e installa EPEL repository e OpenVPN pacchetti software.

$ sudo dnf install epel-release -y
$ sudo dnf install openvpn -y

12. Una volta installato, è necessario copiare il file di configurazione del client dal server OpenVPN al sistema client. Puoi farlo usando il comando scp come mostrato

$ sudo scp -r [email protected]:/home/tecmint/tecmint01.ovpn .
Copia la configurazione del client OpenVPN
Copia la configurazione del client OpenVPN

13. Una volta che il file client è stato scaricato sul tuo sistema Linux, ora puoi inizializzare una connessione al server VPN, usando il comando:

$ sudo openvpn --config tecmint01.ovpn

Otterrai un output simile a quello che abbiamo di seguito.

Connettiti a OpenVPN
Connettiti a OpenVPN

14. Viene creata una nuova tabella di instradamento e viene stabilita una connessione con VPN server. Ancora una volta, un’interfaccia tunnel di interfaccia virtuale tun0 viene creato sul sistema client.

Come accennato in precedenza, questa è l’interfaccia che trasmetterà tutto il traffico in modo sicuro al file OpenVPN server tramite un SSL tunnel. All’interfaccia viene assegnato dinamicamente un indirizzo IP dal server VPN. Come puoi vedere, al nostro sistema client Linux è stato assegnato un indirizzo IP di 10.8.0.2 dal server OpenVPN.

$ ifconfig
Conferma la connessione di rete OpenVPN
Conferma la connessione di rete OpenVPN

15. Solo per essere certi di essere connessi al server OpenVPN, verificheremo l’IP pubblico.

$ curl ifconfig.me
Verifica l'IP del client OpenVPN
Verifica l’IP del client OpenVPN

E voilà! il nostro sistema client ha scelto l’IP pubblico della VPN confermando che siamo effettivamente connessi a OpenVPN server. In alternativa, puoi avviare il browser e la ricerca su Google “Qual è il mio indirizzo IP“Per confermare che il tuo IP pubblico è cambiato in quello del server OpenVPN.

Controlla il tuo indirizzo IP
Controlla il tuo indirizzo IP

Come configurare il client OpenVPN su Windows

16. Su Windows, dovrai scaricare i binari ufficiali di OpenVPN Community Edition forniti con una GUI.

17. Quindi, scarica il tuo .ovpn file di configurazione nel file C:Program FilesOpenVPNconfig directory e come amministratore, avvia OpenVPN GUI da Inizio -> Tutti i programmi -> OpenVPNe verrà avviato in background.

18. Ora avvia un browser e apri http://whatismyip.org/ e dovresti vedere l’IP del tuo server OpenVPN invece dell’IP pubblico fornito dal tuo ISP:

Sommario

In questo articolo, abbiamo spiegato come impostare e configurare un server VPN utilizzando OpenVPNe come configurare due client remoti (un Linux scatola e a finestre macchina). Ora puoi utilizzare questo server come gateway VPN per proteggere le tue attività di navigazione web. Con un piccolo sforzo in più (e un altro server remoto disponibile) puoi anche impostare un server di file / database sicuro, per citare alcuni esempi.

Non vediamo l’ora di sentirti, quindi non esitare a inviarci una nota utilizzando il modulo sottostante. Commenti, suggerimenti e domande su questo articolo sono i benvenuti.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!


CLe applicazioni da riga di comando sono uno dei tipi di app più vecchi e più utilizzati. Se sei un utente Linux esperto, potresti aver utilizzato a malapena strumenti GUI invece di strumenti da riga di comando per svolgere la stessa attività. Ad esempio, Anaconda, il gestore di pacchetti per python, ha strumenti da riga di comando denominati Conda e uno strumento GUI denominato anaconda navigator.

La cosa che rende l’applicazione della riga di comando popolare tra gli sviluppatori è che consumano pochissime risorse rispetto alla sua controparte GUI e offrono prestazioni migliori.

Python è un linguaggio semplice e potente per la creazione di applicazioni a riga di comando. Fornisce tonnellate di librerie già scritte da molti grandi programmatori, semplificando il nostro compito in quanto non abbiamo bisogno di riscrivere lo stesso codice.

In questo tutorial, ti presenterò la libreria Argparse di python, che può analizzare gli argomenti delle applicazioni a riga di comando. Questo è utile per creare ottime interfacce della riga di comando. Per seguire questo tutorial, si consiglia di avere l’ultima versione di python installata. Abbiamo anche un tutorial passo passo sull’aggiornamento di python all’ultima versione in Linux.

introduzione

L’analisi degli argomenti è un concetto importante che dobbiamo utilizzare per creare interfacce della riga di comando potenti e intuitive. Se in precedenza hai utilizzato applicazioni della riga di comando, potresti aver notato che possiamo aggiungere argomenti alle applicazioni della riga di comando per configurare le opzioni dello strumento.

Ad esempio, se hai utilizzato l’estensione ls comando in Linux, che viene utilizzato per elencare gli elementi della directory di lavoro corrente, potresti aver visto l’output qualcosa di simile, come mostrato nell’immagine sottostante.

comando ls in linux
comando ls in Linux

Come puoi vedere nell’immagine, elenca gli elementi nella directory corrente. Possiamo anche usare il ls comando in modo più vantaggioso dandogli un argomento come ho fatto nel comando seguente.

ls -a

Ora digitando questo comando nel terminale, elencherà tutti gli elementi presenti nella directory di lavoro corrente, inclusi gli elementi nascosti. Come puoi vedere, fornendo argomenti sul comando, possiamo facilmente specificare le opzioni del comando in modo amichevole. È qui che entrano in gioco gli argomenti. Rendono le applicazioni della riga di comando più utili e amichevoli.

Forse ti starai chiedendo quando e come aggiungere argomenti della riga di comando nelle tue applicazioni. Immagina di creare un’applicazione che necessita di un input dell’utente del nome del file che l’applicazione elaborerà.

Possiamo farlo in due modi:

  • chiedendo all’utente di aggiungere il nome del file o
  • fornendo all’utente di aggiungere il nome del file come argomento al comando.

Il primo trucco è buono, ma il secondo è più utile in quanto l’utente può fornire tutte le opzioni in un comando, il che lo rende più user-friendly.

Python include una grande libreria chiamata “argparse”, che è utile per creare e analizzare gli argomenti della riga di comando e può costruire molto facilmente potenti interfacce della riga di comando per gli utenti. Facciamo un tuffo profondo nella libreria argparse di python.

Libreria Argparse

Il argparse library è un modo semplice e utile per analizzare gli argomenti durante la creazione di applicazioni a riga di comando in python. Sebbene ci siano altri argomenti per analizzare le librerie come optparse, getopt, ecc., il argparse library è ufficialmente il modo consigliato per analizzare gli argomenti della riga di comando.

È anche disponibile nella libreria standard di python, quindi non abbiamo bisogno di alcuna configurazione manuale. Il argparse la libreria è stata creata utilizzando il optparse libreria di python, ma argparse è più utile e amichevole per gli sviluppatori rispetto a optparse biblioteca.

Demo pratica di Argparse

Vediamo una dimostrazione pratica di come utilizzare la libreria argparse per creare una semplice interfaccia a riga di comando. Questo programma accetterà un percorso e verificherà se il percorso esiste o meno e se esiste, quindi stamperà se si tratta di un file o di una directory.

import os
import argparse

parser = argparse.ArgumentParser(`description = "Path Existence Checker")
parser.add_argument("--path", help="input a path to check if it exists")
args = parser.parse_args()
input_path = args.path
if os.path.isdir(input_path):
    print("The path Exists and it is a directory")
elif os.path.isfile(input_path):
    print("The path Exists and it is a file")
else:
    print("The path does not exist")

Eseguendo il programma sopra, possiamo verificare se il percorso esiste o meno.

demo dell'analisi degli argomenti con argparse
demo dell’analisi degli argomenti con argparse

Puoi anche usare il file -h argomento con il programma, che è l’argomento predefinito per visualizzare i messaggi di aiuto.

messaggio di aiuto predefinito argparse
messaggio di aiuto predefinito argparse

Lascia che ti spieghi come funziona il programma sopra. Nelle prime due righe abbiamo importato i moduli di cui avremo bisogno nel programma. Il os Il modulo è stato importato per verificare se il percorso esiste o meno, e si tratta di un file o di una directory. Se vuoi saperne di più sul os modulo, puoi fare riferimento alla nostra guida su come lavorare con il sistema operativo in python.

Nella riga successiva, abbiamo importato la libreria argparse richiesta per creare e analizzare gli argomenti. Nella terza riga, creiamo un oggetto parser utilizzando la classe ArgumentParser della libreria argparse. Questa classe accetta anche una descrizione di parametro opzionale, che verrà visualizzata nel messaggio di aiuto.

Nella riga successiva, abbiamo creato un argomento denominato path utilizzando il metodo add_argument () dell’oggetto parser e fornito i dettagli nel parametro di aiuto che verrà visualizzato nel messaggio di aiuto come abbiamo visto nell’output in precedenza.

Successivamente, analizziamo gli argomenti utilizzando il metodo parse_args () dell’oggetto parser e accediamo al percorso di input dell’utente come argomento. Abbiamo ottenuto il percorso che l’utente ha inserito nell’argomento e poi lo abbiamo usato con il modulo os per verificare se si tratta di un file o di una cartella. Se non è tra i due, stamperà che il percorso non esiste.

Personalizzazione

Vediamo alcune delle personalizzazioni che possiamo apportare alla nostra interfaccia a riga di comando con l’aiuto della libreria argparse.

Aiuto per l’uso personalizzato

Quando eseguiamo il programma demo che abbiamo creato in precedenza con l’estensione -h parametro, otteniamo l’aiuto del programma come output generato dalla libreria argparse. Se noti il ​​messaggio di aiuto, c’è un aiuto per l’uso nella riga superiore che ci mostra come usarlo.

Nel nostro programma demo, abbiamo la guida all’uso standard. Possiamo ancora personalizzarlo facilmente utilizzando il parametro di utilizzo durante la creazione dell’oggetto parser utilizzando la classe ArgumentParser (). Guarda il codice sottostante, che verrà modificato nel nostro programma demo.

parser = argparse.ArgumentParser(description = "Path Existence Checker", usage="cla.py path")

Ecco l’output:

aiuto per l'utilizzo personalizzato in argparse
aiuto per l’utilizzo personalizzato in argparse

Come possiamo vedere nell’output, la guida all’uso è stata modificata in quella specificata nel parametro di utilizzo della classe ArgumentParser ().

Personalizzazione degli argomenti

Possiamo anche usare la libreria Argparse per personalizzare gli argomenti come se gli argomenti fossero richiesti o meno, dando a un argomento un valore predefinito.

Aggiunta del valore predefinito

Possiamo dare agli argomenti un valore predefinito utilizzando il parametro predefinito del file add_argument () metodo. Ad esempio, vedere il codice seguente.

import os
import argparse

parser = argparse.ArgumentParser(description = "Path Existence Checker", usage="cla.py path")
parser.add_argument("--path", help="input a path to check if it exists", default="filename.txt")
args = parser.parse_args()
input_path = args.path

if input_path == None:
    exit()
elif os.path.isdir(input_path):
    print("The path Exists and it is a directory")
elif os.path.isfile(input_path):
    print("The path Exists and it is a file")
else:
    print("The path does not exist")

Eseguendo il programma precedente senza alcun argomento, otterremo l’output seguente. Come mostrato nell’output, il programma controlla il percorso nomefile.txt, che abbiamo impostato nel parametro predefinito.

dando un valore predefinito agli argomenti
dando un valore predefinito agli argomenti

Impostazione dei requisiti degli argomenti

Possiamo anche usare la libreria Argparse per impostare i requisiti dell’argomento, cioè se gli argomenti saranno necessari o meno. Per fare ciò, dobbiamo utilizzare il parametro richiesto, come mostrato nel codice seguente.

import os
import argparse

parser = argparse.ArgumentParser(description = "Path Existence Checker", usage="cla.py path")
parser.add_argument("--path", help="input a path to check if it exists", default="filename.txt", required=True)
args = parser.parse_args()
input_path = args.path

if input_path == None:
    exit()
elif os.path.isdir(input_path):
    print("The path Exists and it is a directory")
elif os.path.isfile(input_path):
    print("The path Exists and it is a file")
else:
    print("The path does not exist")

Eseguendo il codice precedente senza argomenti, verrà visualizzato un errore che indica che sono necessari i seguenti argomenti.

definizione dei requisiti degli argomenti
definizione dei requisiti degli argomenti

Tipo di argomento

Possiamo anche impostare il tipo di dati utilizzato nell’argomento. Ad esempio, se abbiamo bisogno del percorso, dovremmo fornire un tipo di dati stringa. Se un utente immette un tipo di dati che non è una stringa, Argparser lo trasformerà in una stringa. Per impostare il tipo predefinito per un argomento, eseguire il codice seguente.

import os
import argparse

parser = argparse.ArgumentParser(description = "Path Existence Checker", usage="cla.py path")
parser.add_argument("--path", help="input a path to check if it exists", type=str)
args = parser.parse_args()
input_path = args.path

if input_path == None:
    exit()
elif os.path.isdir(input_path):
    print("The path Exists and it is a directory")
elif os.path.isfile(input_path):
    print("The path Exists and it is a file")
else:
    print("The path does not exist")

Produzione:

specificando il tipo di dati degli argomenti
specificando il tipo di dati degli argomenti

Conclusione

Queste sono solo le basi dell’analisi degli argomenti utilizzando la libreria Argparse. Dopo aver seguito questo tutorial, si consiglia di leggere la documentazione ufficiale per esplorare altri trucchi per utilizzare questa libreria. Potresti anche voler vedere il post sull’uso della registrazione in Python, che è molto utile per scrivere grandi applicazioni e un facile debug.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!


Lo scopo di questo tutorial è spiegare come possiamo modificare e apportare modifiche a Configurazioni di rete su RHEL / CentOS 8/7 solo dalla riga di comando e, più specificamente, come possiamo impostare un indirizzo IP statico sulle interfacce di rete utilizzando gli script di rete del sistema, che è necessario configurare per servire i servizi di rete con connessione a Internet e come configurare o modificare RHEL / Sistema CentOS Nome host.

Configurare l'interfaccia di rete in CentOS 7
Configurare IP statico in Linux

Inoltre ti mostreremo come possiamo gestire o disabilitare i servizi di sistema indesiderati, come Responsabile del network, che non è più necessario nel caso in cui si utilizzi un IP statico manuale configurato su script di rete, Avahi-Daemon che è, inoltre, non necessario su un server e rappresenta una grave lacuna di sicurezza, a meno che tu non abbia installato il server sul tuo laptop e desideri navigare istantaneamente nella tua rete per altri servizi, e alla fine ti presenterà Interfaccia utente testuale di Network Manager – nmtui, un’utilità di sistema che può facilitare il lavoro di modifica delle impostazioni di rete del sistema con configurazioni dell’interfaccia avanzate come la creazione di Bond, Bridge, Squadra e VLAN Interfacce.

Requisiti

Inoltre, tieni presente che la maggior parte delle configurazioni offerte dalla modifica dei file di sistema non devono essere eseguite da una posizione remota utilizzando il servizio SSH finché non stabilisci una connessione di rete continua e affidabile utilizzando un indirizzo IP fisso.

Passaggio 1: disabilita i servizi di sistema indesiderati in CentOS

1. Prima di iniziare effettivamente a fare qualsiasi cosa, dobbiamo assicurarci che il nostro sistema disponga di alcuni strumenti di modifica e networking necessari come netstat, ifconfig, wget, arricciare, e lsof installati, alcuni di essi non verranno utilizzati in questo passaggio, ma è meglio averli installati per configurazioni future.

# yum install nano wget curl net-tools lsof
Installa gli strumenti di rete in CentOS
Installa gli strumenti di rete in CentOS

2. Dopo che gli strumenti sono stati installati, esegui ifconfig per ottenere le impostazioni e lo stato delle interfacce di rete, quindi eseguire netstat o lsof comando per verificare quali servizi sono in esecuzione per impostazione predefinita sul nostro server.

# ifconfig
# netstat -tulpn
# lsof -i
Controllare le interfacce di rete e lo stato dei servizi
Controllare le interfacce di rete e lo stato dei servizi

3. Il netstat l’output del comando è piuttosto autoesplicativo e mostra un elenco di socket associati al nome del programma in esecuzione.

Se, ad esempio, il nostro sistema non verrà utilizzato come servizio di posta, puoi interromperlo Postfix master daemon che viene eseguito su localhost e, inoltre, arresta e disabilita altri servizi indesiderati utilizzando i seguenti comandi: l’unico servizio che consiglio di non fermare o disabilitare per ora è SSH se hai bisogno del controllo remoto sul server.

Interrompi il servizio Postfix
# systemctl stop postfix
# systemctl disable postfix
# systemctl status postfix
Interrompi il servizio Postfix
Interrompi il servizio Postfix
Interrompi il servizio Daemon Avahi
# systemctl stop avahi-daemon
# systemctl disable avahi-daemon
# systemctl status avahi-daemon
Ferma Avahi Daemon
Ferma Avahi Daemon

4. Puoi anche usare il vecchio dentro comandi per arrestare o disabilitare i servizi ma dal cappello rosso ora implementa systemd gestione dei processi e dei servizi, è meglio abituarsi ai comandi systemctl e usarli spesso.

Se usi Arch Linux, dovrebbe essere un gioco da ragazzi passare a systemd, sebbene tutti i comandi di inizializzazione ora siano collegati e pass-through systemd filter.

# service postfix stop
# chkconfig postfix off

5. Se vuoi ottenere un elenco di tutti i servizi avviati, esegui il file servizio comando e per un esaustivo utilizzo del report systemctl.

# service --status-all
# systemctl list-unit-files
Elenca tutti i servizi in Linux
Elenca tutti i servizi in Linux
Elenca report di tutti i servizi
Elenca tutti i rapporti sui servizi

6. Per gestire i servizi eseguire il systemctl comando utilizzando le opzioni più importanti: inizio, fermare, ricomincia, ricaricare, disattivare, abilitare, spettacolo, liste-dipendenze, è abilitato, ecc. seguito dal nome del servizio.

Inoltre, un’altra caratteristica importante che il systemctl comando può anche essere eseguito su un server remoto tramite il servizio SSH su un host specificato utilizzando -H opzione ed eseguire le stesse azioni come localmente.

Ad esempio, vedere il comando e lo screenshot di seguito.

# systemctl -H remote_host start remote_service
Esegui systemctl su Remote Server
Esegui systemctl su Remote Server

Passaggio 2: configurazione dell’indirizzo IP statico su CentOS

7. Prima di iniziare a modificare Scheda di rete file di sistema assicurati che d’ora in poi e fino a quando non imposti l’IP statico, hai accesso fisico o di qualsiasi altro tipo al tuo server, perché questo passaggio richiede la disattivazione dell’interfaccia di rete e delle connessioni.

Anche se può essere fatto senza problemi senza interrompere la connettività e attivare la connessione dopo riavviare. Non c’è modo di testarlo prima riavviare se si dispone di una sola scheda NIC collegata. Tuttavia, ti presenterò l’intero metodo e indicherò i passaggi da evitare nel caso in cui desideri mantenere la tua connettività e testarla in seguito.

8. Ora passa a / etc / sysconfig / network-scripts / path, apri e scegli la tua interfaccia di rete a cui desideri assegnare l’IP statico per la modifica – per ottenere tutti i nomi di NIC per utilizzare ifconfig o il comando IP come mostrato.

# ifconfig
OR
# ip addr
Controlla il nome dell'interfaccia di rete
Controlla il nome dell’interfaccia di rete

9. Successivamente, utilizza il seguente modello di rete per modificare il file e assicurati che il file ONBOOT istruzione è impostata su , BOOTPROTO è impostato per statico o nessuna e non cambiare HWADDR e UUID valori forniti per impostazione predefinita.

# nano /etc/sysconfig/network-scripts/ifcfg-enp0s3

Apporta le seguenti modifiche come mostrato.

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=7546e483-16a0-499e-aaac-b37246b410a5
DEVICE=enp0s3
ONBOOT=yes
        IPADDR=192.168.1.10
        NETMASK=255.255.255.0
        GATEWAY=192.168.1.1
        DNS1=192.168.1.1
        DNS2=8.8.8.8
        DOMAIN=tecmint.lan
Configurare l'indirizzo IP in CentOS 8
Configurare l’indirizzo IP in CentOS 8

10. Dopo aver terminato di modificare il file, chiuderlo e passare a resolv.conf file se desideri che i server DNS siano abilitati a livello di sistema.

# nano /etc/resolv.conf

Qui aggiungi i tuoi server DNS usando server dei nomi dichiarazione.

nameserver 192.168.1.1
nameserver 8.8.8.8

11. Adesso Interfaccia di rete è configurato con un IP statico, l’unica cosa che resta è riavviare la rete o riavviare il sistema e utilizzare ifconfig o IP comando per visualizzare l’indirizzo IP e testare la configurazione utilizzando ping comando.

# systemctl restart NetworkManager

NOTA: Dopo il riavvio, utilizzare il nuovo indirizzo IP statico configurato per eseguire l’accesso remoto con SSH.

# systemctl status NetworkManager
# ifconfig
# ip addr show
Seleziona Nuovo indirizzo IP
Seleziona Nuovo indirizzo IP

Passaggio 3: impostazione del nome host in CentOS

12. Per regolare il nome host del sistema a livello di sistema, apri Nome host e host file situato in /eccetera percorso e modificare entrambi nel modo seguente.

File nome host
# nano /etc/hostname

Qui puoi aggiungere solo il nome del sistema ma è una buona idea aggiungere il file .punto dominio a.

server.tecmint.lan
File host
# nano /etc/hosts

Qui aggiungi lo stesso nome host come sopra sulla riga 127.0.0.1 prima delle istruzioni localhost.localdomain.

127.0.0.1              server.tecmint.lan  localhost.localdomain …
Imposta il nome host in CentOS 7
Imposta il nome host in Linux

In alternativa, puoi impostare il nome host utilizzando il comando hostnamectl come mostrato.

# hostnamectl -set-hostname tecmint.lan

13. Per verificare se il tuo nome host è impostato correttamente, usa il comando hostname.

# hostname -s  # For short name
# hostname -f  # For FQDN mame

Passaggio 4: impostare l’indirizzo IP statico su CentOS utilizzando lo strumento Nmtui

14. NetworkManager Text User Interface Strumento (TUI), nmtui, è uno strumento intuitivo RHEL che fornisce un’interfaccia di testo per configurare la rete controllando Network Manager, che aiuta a modificare le impostazioni di rete avanzate come assegnare indirizzi IP statici alle interfacce di rete, attivare o disattivare una connessione, modificare le connessioni WI-FI, impostare il tuo nome host del sistema o creare interfacce di rete avanzate come InfiniBand, bond, bridge, team o VLAN.

NetworkManager-tui è installato per impostazione predefinita in RHEL / CentOS 7.0, ma se per qualche motivo manca il seguente comando per installarlo.

# yum install NetworkManager-tui

14. Per avviare l’interfaccia utente di testo di Network Manager, eseguire il file nmtui comando e utilizzo TAB o freccia per navigare e premere accedere per selezionare un’opzione. Se desideri modificare o connettere direttamente un’interfaccia specifica, esegui le seguenti opzioni.

# nmtui edit enp0s3
# nmtui connect enp0s3
Configurare l'IP statico in CentOS
Configurare l’IP statico in CentOS

Se vuoi impostare un IP statico puoi anche usare Interfaccia utente testuale di Network Manager come facile alternativa per modificare effettivamente i file delle interfacce di rete, con un numero limitato di opzioni che il metodo ha da offrire, ma assicurati Responsabile del network il servizio è abilitato e avviato sul sistema.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!


Both Linux e BSD (Berkeley Software Distribution) sono gratuiti, open-source e basati su Unix. Entrambi i sistemi utilizzano anche molte delle stesse applicazioni e mirano allo stesso obiettivo: sviluppare il sistema operativo più stabile e affidabile.

Ma, nonostante tutte le somiglianze, si tratta di due sistemi operativi distinti con molte differenze. Tenendo presente questo, abbiamo messo insieme una lettura dettagliata che esamina le 10 differenze chiave tra Linux e BSD per darti una migliore comprensione dei due sistemi.

# 1. Linux vs BSD: Kernel vs. Sistema operativo

Devi capire che Linux è tecnicamente un kernel, mentre BSD è un sistema operativo a tutti gli effetti, che include il proprio kernel. Ma qual è la differenza tra un kernel e un sistema operativo?

In breve, un kernel è una parte del sistema operativo. Un kernel funge semplicemente da interfaccia tra applicazioni e hardware. Tuttavia, il sistema operativo fornisce un’interfaccia che consente agli utenti di interagire con l’hardware.

Il kernel Linux da solo non sarà in grado di fornirti un’esperienza di elaborazione. Questo è il motivo per cui utilizziamo distribuzioni Linux come Ubuntu o Manjaro che si raggruppano insieme ad altri software necessari e una GUI (Graphical User Interface).

D’altra parte, i BSD sono un pacchetto completo che include sia il kernel che il sistema operativo. Ad esempio, FreeBSD viene fornito con il kernel di FreeBSD e il sistema operativo di FreeBSD, entrambi mantenuti come un unico progetto.

Pertanto, se desideri utilizzare FreeBSD, tutto ciò che devi fare è installarlo e sei a posto. A differenza di Linux, dove devi prima andare a caccia di distro, che deciderà l’esperienza utente complessiva.

# 2. Linux vs BSD: licenza

Linux vs BSD: licenze
Linux vs BSD: licenze

Linux è distribuito con licenza GPL (GNU General Public License). Ciò significa che hai libero accesso al kernel Linux e al suo codice sorgente. Tuttavia, se scegli di modificarlo e distribuirlo, dovrai rilasciare il codice sorgente per le tue modifiche.

Al contrario, BSD utilizza la propria licenza BSD. Gli utenti hanno libero accesso al sistema operativo, ma non sono obbligati a rilasciare il codice sorgente se scelgono di modificare e distribuire il codice. Detto questo, gli sviluppatori possono rilasciare il codice sorgente se lo desiderano, ma non ci sono obblighi legali.

Per gli utenti regolari, queste differenze nel termine della licenza non avranno importanza. Alla fine della giornata, entrambi sono gratuiti e open source. Ma ha modellato lo sviluppo di entrambi i sistemi.

La licenza GPL consente agli sviluppatori della comunità Linux di basarsi sul lavoro di altri sviluppatori. Hai distribuzioni come Linux Mint, che è basata su Ubuntu, che è ulteriormente basata su Debian.

Tuttavia, gli sviluppatori BSD hanno la libertà di fare tutto ciò che vogliono con il codice sorgente e alla fine trasformarlo in un progetto closed-source. Ad esempio, FreeBSD è disponibile con la licenza BSD ed è gratuito e open-source. Tuttavia, i sistemi operativi utilizzati su Playstation 4 e Nintendo Switch, basati su FreeBSD, sono proprietari e closed-source.

# 3. Linux vs BSD: controllo sul codice sorgente

Linux vs BSD Controllo sul codice sorgente
Linux vs BSD: controllo sul codice sorgente

Il codice sorgente del kernel Linux è principalmente controllato e mantenuto da Linus Torvalds, il fondatore e creatore di Linux. Deve decidere quali nuove funzionalità includere nella prossima versione di Linux e quali funzionalità (se presenti) vengono rimosse. È lui il ragazzo che chiama i colpi.

D’altro canto, non esiste un “singolo” utente responsabile di BSD ma piuttosto una comunità di utenti, ovvero il “core team” che gestisce l’intero progetto BSD.

Detto questo, vale la pena notare che il sistema operativo BSD originale è attualmente interrotto. Quando usiamo il termine BSD, ci riferiamo ai suoi discendenti come FreeBSD, OpenBSD, NetBSD e simili. Tutti questi sistemi operativi hanno il proprio team principale, che decide la direzione del progetto.

# 4. Linux vs BSD: qual è più “Unix-like”?

C’è un detto nella comunità secondo cui BSD è il risultato di “un gruppo di hacker Unix che cercano di portare il sistema Unix per il PC”, mentre Linux è il risultato di “un gruppo di hacker di PC che cercano di scrivere un nuovo sistema Unix per il PC . ” Queste due righe possono aiutarti a capire meglio la differenza tra BSD e Linux.

Se stai cercando il sistema più simile a Unix, BSD vince la torta. Questo perché BSD è il derivato diretto del tradizionale sistema Unix.

D’altra parte, Linux è vagamente basato su un derivato di Unix – Minix, per essere esatti, e Linus Torvalds scrive la maggior parte del codice.

# 5. Linux vs BSD: il sistema principale

Linux vs BSD: il sistema principale
Linux vs BSD: il sistema principale

Non esiste alcuna parte di Linux che possa essere definita il “nucleo” di Linux. Linux è essenzialmente un conglomerato di molti sistemi più piccoli che si combinano per creare l’esperienza Linux completa.

Molte persone sostengono che il kernel Linux sia in realtà il “cuore” di Linux o del suo sistema di base. Ma detto questo, il kernel non può fare nulla senza alcuna applicazione utile, ed è qui che questo argomento cade a pezzi.

Detto questo, BSD è anche una raccolta di diversi strumenti e software che si combinano per offrire un’esperienza completa. Ma a differenza di Linux, tutti questi strumenti sono sviluppati e confezionati insieme, quindi sono considerati il ​​sistema centrale o di base che compone BSD.

Per esempio, libc, una piccola parte di BSD, è considerato un componente principale di BSD.

# 6. Linux vs BSD: comunità e base utenti

Comunità Linux vs BSD e base utenti
Linux vs BSD: comunità e base utenti

Sia Linux che BSD sono benedetti da una vasta comunità composta da utenti e sviluppatori attivi. Ciò include forum online, subreddit, blog ospitati da fan dei sistemi e molto altro.

Se sei un nuovo utente e entri in uno di questi luoghi con una domanda scottante, puoi essere certo che qualcuno è attivo sulla piattaforma e risponderà entro un paio di minuti a un’ora.

In effetti, la comunità FOSS è così forte che questo software non ha bisogno di un team di supporto dedicato: la maggior parte dei problemi viene affrontata e gestita dai fan.

In quanto tale, anche se vai con Linux o BSD, puoi sapere per certo che stai entrando in una comunità di individui esperti di tecnologia.

Tuttavia, in termini di numeri, Linux ha una comunità molto più ampia.

# 7. Linux vs BSD: disponibilità del software

La disponibilità del software moderno e la sua compatibilità con il sistema operativo influiscono enormemente sulla sua adattabilità e popolarità tra gli utenti quotidiani. Quando si considera quanto sia popolare Linux rispetto a BSD, indica chiaramente quale sistema offre una migliore disponibilità e compatibilità del software.

Linux fornisce un ecosistema semplice e diretto per sviluppatori e utenti per creare e installare il software. Tutte le app sono disponibili in pacchetti binari “precompilati” che l’utente può scaricare e installare sui propri sistemi utilizzando gestori di pacchetti come APT, DNF e simili.

Al contrario, l’installazione del software su BSD è molto più difficile. Prima di tutto, l’utente deve scaricare il codice sorgente del programma che desidera installare da una delle tante porte disponibili. Successivamente, dovranno compilare il codice sorgente sul proprio sistema.

Questo passaggio extra complicato di dover compilare il sorgente rende l’installazione del software una grande seccatura per gli utenti BSD con conseguente mancanza di popolarità generale. Detto questo, alcune librerie di pacchetti binari precompilate per BSD non sono così vaste come quelle di Linux.

# 8. Linux vs BSD: accesso al software più recente

Linux vs BSD Accesso al software più recente
Linux vs BSD: accesso al software più recente

BSD raramente ha accesso ai più recenti software e tecnologie all’avanguardia. Tuttavia, questa non è necessariamente una cosa negativa.

Certo, perderai le nuove caratteristiche e funzionalità introdotte con le nuove tecnologie. Ma allo stesso tempo, dovrai anche gestire più bug ed errori di sistema perché non c’è stato abbastanza tempo per testare a fondo il nuovo software.

In quanto tale, se credi nella filosofia – “se non è rotto, non aggiustarlo”, allora apprezzerai l’approccio lento e costante di BSD per incorporare nuovo software nel suo ecosistema. Ciò rende il sistema complessivo molto più stabile e affidabile, fondamentale se lo si utilizza per carichi di lavoro seri e professionali.

Al contrario, Linux ha tonnellate di distribuzioni, ognuna con il proprio approccio per abbracciare il nuovo software all’avanguardia.

Ad esempio, con Fedora, hai accesso a tutte le ultime versioni di quasi tutti i software FOSS non appena sono disponibili. È rivolto principalmente agli appassionati e agli sviluppatori di Linux.

Considerando che, dall’altra parte dello spettro, abbiamo distribuzioni come OpenSUSE che supporta un lungo ciclo di vita per ogni versione con un focus sulla stabilità e l’affidabilità, piuttosto che sui crampi nelle nuove funzionalità all’avanguardia.

# 9. Linux vs BSD: aggiornamenti del sistema

Linux e BSD gestiscono gli aggiornamenti del sistema in un modo completamente diverso.

A causa di come viene sviluppato BSD, gli utenti possono aggiornare il loro intero sistema operativo alla versione più recente con un singolo comando. Consente inoltre agli utenti di scaricare il codice sorgente per la nuova versione o qualsiasi build si sta cercando e quindi installarli come qualsiasi altra applicazione.

Tuttavia, con Linux, il processo è un po ‘più complicato. Come abbiamo discusso, Linux è una raccolta di software diverso: hai il kernel Linux, in cima al quale c’è il gestore di pacchetti, strumenti e software e una GUI o un ambiente desktop.

È possibile aggiornare tutti questi componenti, compreso il kernel, tramite il sistema di gestione dei pacchetti. Con Linux, puoi aggiornare l’intera installazione, mentre, con BSD, stai solo aggiornando il sistema principale.

Ma con questo detto, ci sono troppi casi in cui gli utenti hanno segnalato problemi durante l’aggiornamento a una versione più recente della loro distribuzione Linux. Ciò accade principalmente a causa dell’incompatibilità tra i diversi componenti, poiché non tutti sono sviluppati sotto lo stesso tetto e seguono programmi di rilascio diversi.

In poche parole, BSD gioca sempre sul sicuro e offre un aggiornamento sicuro e stabile alle versioni più recenti senza intoppi. Ciò è possibile anche con Linux con l’ulteriore vantaggio di aggiornare l’intera installazione del sistema operativo. Tuttavia, a volte può incorrere in errori e arresti anomali del sistema.

# 10. Linux vs BSD: supporto hardware

Supporto hardware Linux vs BSD
Linux vs BSD: supporto hardware

Sia Linux che BSD supportano un’ampia gamma di hardware, ma Linux ha un vantaggio leggermente maggiore in questo reparto.

Il supporto hardware per un sistema operativo o qualsiasi software è direttamente correlato alla sua popolarità. I produttori sono inclini a rendere il loro hardware compatibile con il software se più persone lo usano.

Inoltre, se il software dispone di una comunità di utenti sufficientemente ampia, inclusi gli sviluppatori, possono creare driver e strumenti necessari per renderlo compatibile con altro hardware.

Dato che Linux è più popolare di BSD e ha una comunità più ampia, è chiaro perché ha un supporto hardware migliore.

Se hai in mente i giochi ad alta definizione e desideri la compatibilità con le ultime schede grafiche sul mercato, sei più fortunato a restare fedele a Linux.

Linux vs BSD: quale scegliere?

A questo punto, dovresti avere una conoscenza abbastanza buona delle differenze tra Linux e BSD.

Come puoi vedere, tra i due, Linux è molto più popolare, il che si traduce in altri vantaggi come un migliore supporto hardware, una comunità più grande, più sviluppatori che lavorano sugli aggiornamenti e molto altro ancora.

Ma detto questo, gli utenti regolari difficilmente noteranno molte differenze tra i due sistemi. Come in Linux, con BSD, utilizzerai gli stessi ambienti desktop come GNOME, KDE, XFCE e simili.

Inoltre, anche se il repository software BSD non corrisponde alla vastità di Linux, hai comunque accesso a quasi tutti i software e gli strumenti necessari per i normali carichi di lavoro quotidiani.

In poche parole, BSD si rivolge principalmente agli utenti esperti di tecnologia alla ricerca di un sistema stabile e affidabile per uso professionale. Non è infastidito dall’accesso alle tecnologie all’avanguardia che vengono introdotte sul mercato.

D’altra parte, per gli utenti regolari che cercano un sistema operativo FOSS che funzioni fuori dagli schemi, Linux offre la soluzione più intuitiva e semplificata.

Inoltre, molte delle distribuzioni Linux come Ubuntu e Fedora sono super moderne e abbracciano le ultime tendenze di design e software. Pertanto, gli utenti che desiderano andare avanti con il tempo e non si preoccupano di affrontare bug e singhiozzi occasionali si sentiranno a casa con Linux.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!

GoAccess è un programma di analisi dei log del server web interattivo e in tempo reale che analizza e visualizza rapidamente i log del server web. Si presenta come un open-source e funziona come una riga di comando nei sistemi operativi Unix / Linux. Fornisce al volo brevi e utili report statistici HTTP (server web) per gli amministratori Linux. Si occupa anche di entrambi i file Apache e Ngnix formati di registro del server web.

GoAccess analizza e analizza i formati di registro del server Web forniti nelle opzioni preferite, tra cui CLF (Formato registro comune), W3C formato (IIS) e host virtuali Apache, quindi genera un output dei dati sul terminale.

Dai un’occhiata alla demo live di Goaccess – https://rt.goaccess.io/

Funzionalità di GoAccess

Ha le seguenti caratteristiche.

  1. Statistiche generali, larghezza di banda, ecc.
  2. Visitatori principali, distribuzione del tempo dei visitatori, siti e URL di riferimento e 404 o non trovato.
  3. Host, DNS inverso, posizione IP.
  4. Sistemi operativi, browser e spider.
  5. Codici di stato HTTP
  6. Posizione geografica – Continente / Paese / Città
  7. Metriche per host virtuale
  8. Supporto per HTTP / 2 e IPv6
  9. Capacità di produrre JSON e CSV
  10. Elaborazione del registro incrementale e supporto per set di dati di grandi dimensioni + persistenza dei dati
  11. Diverse combinazioni di colori

Come installo GoAccess in Linux?

Attualmente, la versione più recente di GoAccess v1.4 non è disponibile dai repository dei pacchetti di sistema predefiniti, quindi per installare l’ultima versione stabile, è necessario scaricarla e compilarla manualmente dal codice sorgente nei sistemi Linux come mostrato:

Installa GoAccess da sorgenti in Linux

------------ Install GoAccess on CentOS, RHEL and Fedora ------------ 
# yum install ncurses-devel glib2-devel geoip-devel
# cd /usr/src
# wget https://tar.goaccess.io/goaccess-1.4.tar.gz
# tar -xzvf goaccess-1.4.tar.gz
# cd goaccess-1.4/
# ./configure --enable-utf8 --enable-geoip=legacy
# make
# make install
------------ Install GoAccess on Debian and Ubuntu ------------ 
$ sudo apt install libncursesw5-dev libgeoip-dev apt-transport-https 
$ cd /usr/src
$ wget https://tar.goaccess.io/goaccess-1.4.tar.gz
$ tar -xzvf goaccess-1.4.tar.gz
$ cd goaccess-1.4/
$ sudo ./configure --enable-utf8 --enable-geoip=legacy
$ sudo make
$ sudo make install

Installa GoAccess utilizzando Gestione pacchetti

 

Il modo più semplice e preferito per installare GoAccess su Linux utilizzando il gestore di pacchetti predefinito della rispettiva distribuzione Linux.

Nota: Come ho detto sopra, non tutte le distribuzioni avranno la versione più recente di GoAccess disponibile nei repository predefiniti del sistema.

Su RedHat, CentOS e Fedora
# yum install goaccess
# dnf install goaccess    [From Fedora 23+ versions]
Su sistemi Debian e Ubuntu

GoAccess l’utilità è disponibile da Debian Squeeze 6 e Ubuntu 12.04. Per installare basta eseguire il seguente comando sul terminale.

$ sudo apt-get install goaccess

Nota: Il comando precedente non ti fornirà sempre la versione più recente. Per ottenere l’ultima versione stabile di GoAccess, aggiungi il repository GoAccess Debian e Ubuntu ufficiale come mostrato:

$ echo "deb http://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/goaccess.list
$ wget -O - http://deb.goaccess.io/gnugpg.key | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install goaccess

Come si usa GoAccess?

Dopo aver installato GoAccess sulla macchina Linux, puoi iniziare a utilizzarlo eseguendo il seguente comando. Prima ti chiederà di determinare il formato del log del tuo log di accesso.

Configurare il formato registro GoAccess
Configurare il formato registro GoAccess

Il modo più semplice per ottenere le statistiche del server web utilizza il flag ‘f‘con il nome del file di registro di input come mostrato di seguito. Il comando seguente ti fornirà statistiche generali sui log del tuo server web.

# goaccess -f /var/log/httpd/tecmint.com
# goaccess -f /var/log/nginx/tecmint.com

Il comando precedente offre una panoramica completa delle metriche del server web mostrando i riepiloghi di vari rapporti come pannelli su una visualizzazione scorrevole come mostrato.

Panoramica dei registri di Apache

Visualizza i registri Apache del server Web
Visualizza i registri Apache del server Web

Registri Apache per sistema operativo – Panoramica

Visualizza i registri di Apache per sistema operativo
Visualizza i registri di Apache per sistema operativo

Registri di Apache per larghezza di banda del visitatore – Panoramica

Visualizza l'utilizzo della larghezza di banda dei visitatori di Apache
Visualizza l’utilizzo della larghezza di banda dei visitatori di Apache

Registri Apache tramite browser web – Panoramica

Visualizza l'utilizzo di Apache in base ai browser
Visualizza l’utilizzo di Apache in base ai browser

Come si genera il report HTML di Apache?

Per generare un report HTML dei log del tuo server web Apache, eseguilo semplicemente sul tuo file di weblog.

# goaccess -f /var/log/httpd/access_log > reports.html
Monitorare i registri di Apache utilizzando il browser Web
GoAccess: monitora i registri di Apache utilizzando il browser web

Per ulteriori informazioni e utilizzo, visitare http://goaccess.io/.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!


ioNon è sbagliato affermare che i mini PC hanno tutte le potenzialità del mondo per conquistare il mercato dei computer in breve tempo. Non solo fanno risparmiare molto spazio sulla scrivania del computer, ma funzionano anche in modo molto efficiente dal punto di vista energetico, causando anche meno rumore. Anche se potrebbero essere un po ‘più costosi dei normali PC desktop, ti faranno effettivamente risparmiare un po’ di soldi a lungo termine.

Detto questo, una cosa da notare qui è che la maggior parte di questi mini PC non è potente come i normali computer desktop quando si tratta di potenza di elaborazione, dimensioni della memoria e spazio di archiviazione. Di conseguenza, gli utenti che non hanno intenzione di giocare o di modificare video dovrebbero assolutamente dare una possibilità a questi computer.

I 10 migliori mini PC basati su Linux

I mini PC non sono una novità da quando sono presenti nel mercato dei computer da un po ‘di tempo. Tuttavia, il numero di tali computer che hanno un supporto ottimale per le distribuzioni Linux è ancora relativamente piccolo. Quindi, in questo articolo, faremo tutte le ricerche per te e ti forniremo alcuni dei migliori mini PC basati su Linux disponibili in questo momento.

1. System76 Meerkat

System76-Meerkat
System76 Meerkat

Quando si parla di produttori di computer basati su Linux, il nome di un’azienda ti colpirà sicuramente: System76. Oltre a occuparsi di computer desktop e laptop, la società produce anche un mini PC basato su Linux chiamato Meerkat.

La cosa migliore di questo mini PC è che gli acquirenti hanno la libertà di costruirlo in base al loro budget. Quando si tratta del suo processore, puoi scegliere un processore Intel i3 dual-core (con 4 thread, 4 MB di cache e velocità di elaborazione 2,1-4,1 GHz), un Intel i5 (con 4 core, 8 thread, 6 MB di cache e velocità di elaborazione 1,6-4,2 GHz) o Intel i7 (con 6 core, 12 thread, 12 MB di cache e velocità di elaborazione 1,1-4,7 GHz). Oltre a questo, puoi anche optare per uno spazio di memoria compreso tra 8 e 64 GB.

Per quanto riguarda lo spazio di archiviazione, gli acquirenti hanno la possibilità di scegliere tra SSD / NVMe da 120 GB-8 TB. Da questo, potresti essere in grado di dire che il Meerkat Mini PC di System76 è a dir poco una bestia totale che pesa solo 1,2 libbre. Detto questo, dovresti accontentarti della grafica Intel UHD poiché non ci sono schede grafiche aggiuntive con questo prodotto.

Ciò che rende questo prodotto veramente basato su Linux è il fatto che è disponibile preinstallato con Ubuntu 20.04 LTS (64 bit) o ​​Pop! _OS 20.04 LTS (64 bit). Ora, arrivando al suo prezzo, puoi copiare questo mini PC a partire da $ 549.

Acquista System76 Meerkat

2. MintBox Mini 2 Pro

MintBox-Mini-2-Pro
MintBox Mini 2 Pro

Se un mini PC con Linux Mint preinstallato (più specificamente, Linux Mint 20 “Ulyana” Cinnamon) è quello che stai cercando, allora MintBox Mini 2 Pro è sicuramente un’opzione che dovresti dare un’occhiata. Inoltre, se hai voglia di installare un altro sistema operativo su questo dispositivo (che pesa anche meno di un chilo), puoi farlo anche tu.

Venendo alle specifiche di questo computer, MintBox è alimentato da un processore Intel Celeron J3455 quad-core, 8 GB di RAM e SSD da 120 GB. Quindi, come puoi vedere, ha alcune specifiche di fascia media che potrebbero ancora fare il lavoro. Per quanto riguarda la sua scheda grafica, otterrai la Intel HD Graphics 500 predefinita che è sufficiente per le attività grafiche di base. Tuttavia, non c’è nemmeno una minima possibilità che tu possa eseguire giochi moderni o eseguire l’editing video con esso. Se questo non è un problema per te, puoi ottenere questo mini PC per soli $ 349. Inoltre, se sei a corto di contanti, puoi invece acquistare la sua versione base per soli $ 299.

Acquista MBM2 Pro

3. Slimbook ONE v3

Slimbook-ONE-v3
Slimbook ONE v3

I mini PC non devono sempre avere specifiche di fascia bassa e ONE v3 di Slimbook ne è la prova vivente. Inoltre, è una macchina Linux assoluta in quanto puoi scegliere sistemi operativi come Ubuntu, Manjaro e OpenSUSE per essere preinstallati con esso.

Esistono due versioni di questo dispositivo: la prima è alimentata da un Intel i5-8265U (con 6 MB di cache), mentre l’altra viene fornita con un Intel i7-8565U (con 8 MB di cache). Ciò che rende questa macchina ancora più una bestia è che puoi optare per un massimo di 64 GB di RAM DDR4 e da 120 GB a 1 TB di memoria su unità a stato solido. Tuttavia, una delusione è che le sue attività di elaborazione grafica dipenderanno solo dalla grafica integrata Intel. Oltre a questo, non c’è nulla che ti impedisca di ottenere questo mini PC potente realizzato da Slimbook con un prezzo di partenza di circa $ 465.

Acquista Slimbook ONE v3

4. Penguin D Mini Edition

Penguin-D-Mini-Edition
Penguin D Mini Edition

Un’altra ottima opzione per i fan di Linux è la Penguin D Mini Edition che supporta una moltitudine di distribuzioni basate su Linux, inclusi ma non limitati a OS elementari, CentOS, Fedora, Red Hat Enterprise Linux e Ubuntu. Tuttavia, prima di procedere, vorremmo farti sapere che questa macchina è stata realizzata appositamente per scopi di intrattenimento, quindi è meglio non usarla per alcun lavoro professionale.

Prima di tutto, questa macchina è dotata di un processore Intel Quad-Core J4105 in grado di fornire velocità di elaborazione fino a 2,5 GHz. Per quanto riguarda la sua RAM, ti verranno fornite due opzioni: 8 GB e 16 GB. Puoi anche optare per un’unità a stato solido con spazio di archiviazione compreso tra 120 e 1 TB per il suo disco rigido. Come la maggior parte dei mini PC disponibili, questa macchina non è dotata di una scheda grafica esterna, quindi speriamo che le tue esigenze di elaborazione grafica siano soddisfatte dall’Intel UHD Graphics 600 integrata. Se pensi che la Penguin D Mini Edition valga un colpo, puoi ottenerlo a partire da $ 341.

Acquista Penguin D Mini Edition

5. TUXEDO Nano V8

TUXEDO-Nano-V8
TUXEDO Nano V8

Per i fan di Ubuntu e TUXEDO_OS, TUXEDO Nano V8 si rivelerà un’opzione che sicuramente vale la pena provare. Non solo questa macchina è alimentata dal processore Intel Core i3-7100U o Intel Core i7-8650U, ma puoi anche optare per un massimo di 32 GB di memoria DDR4.

Per quanto riguarda l’archiviazione, questo mini PC viene fornito con un disco rigido, ma puoi comunque optare per un’unità a stato solido che farà caricare i sistemi operativi e altri programmi molto più velocemente. Proprio come le altre opzioni in questo elenco, troverai anche la grafica Intel HD integrata con questo mini PC. Detto questo, è ancora sufficiente per supportare anche due schermi 4K. Ottieni tutto questo e molto altro per un prezzo iniziale di soli $ 475.

Acquista TUXEDO Nano V8

6. Entroware Aura

Entroware-Aura
Entroware Aura

Un altro mini PC le cui specifiche ti impressioneranno sicuramente con Entroware Aura. Oltre ad essere in bundle con Ubuntu 20.04 LTS o Ubuntu MATE 20.04 LTS, questa macchina offre anche agli acquirenti la possibilità di scegliere tra tre diversi processori: Intel Core i3-10110U, Intel Core i5-10210U e Intel Core i7-10710U. Oltre a questo, puoi anche dare alla tua macchina uno spazio di memoria compreso tra 8 e 64 GB di RAM DDR4. Per quanto riguarda le opzioni di archiviazione, la macchina viene fornita con un’unità a stato solido con uno spazio di archiviazione fino a 2 TB.

Puoi massimizzare tutte le specifiche quando acquisti questo mini PC per ottenere prestazioni ottimali. Tuttavia, se scegli di andare con il minimo indispensabile, questa macchina ti costerà circa $ 700.

Acquista Entroware Aura

7. ASUS Chromebox 3

ASUS-Chromebox-3
Chromebox ASUS 3

ChromeOS è anche una distribuzione leggera basata su Linux su cui puoi eseguire facilmente le tue attività di elaborazione quotidiane. Quindi, per coloro che sono disposti a dare una possibilità a ChromeOS, ASUS Chromebox può essere un’opzione praticabile.

Questo mini PC è dotato di un processore Intel Celeron NC356U, 4 GB di RAM DDR4, grafica Intel 4K UHD integrata e unità a stato solido da 32 GB, il che dovrebbe essere un problema poiché ChromeOS memorizza la maggior parte dei dati sul cloud. Con questo, puoi vedere che le sue specifiche non sono poi così male. In effetti, la macchina funzionerà abbastanza bene perché ChromeOS non occupa molte risorse.

Per quanto riguarda le applicazioni, ASUS Chromebox 3 non può eseguire solo Chrome Web Apps ma anche app Android. E ciò che rende ASUS Chromebox ancora migliore è che la macchina non costa un braccio e una gamba. In effetti, puoi ottenerlo per $ 284 da Amazon.

Acquista ASUS Chromebox 3

8. OnLogic CL100

OnLogic CL100
OnLogic CL100

Questo mini PC è alimentato da uno dei migliori sistemi operativi basati su Linux in Ubuntu. A parte questo, vale la pena dare un’occhiata anche alle sue specifiche. Prima di tutto, OnLogic è disponibile in due modelli: uno con Intel Celeron N3160 e l’altro con Pentium N3710. Quando si tratta di RAM e spazio di archiviazione, questa macchina viene fornita con 2 GB a 8 GB di memoria e SSD da 32-512 GB.

Quindi, come probabilmente potresti dire, il mini PC OnLogic CL100 è perfetto per il tuo uso quotidiano con un pizzico di Linux. Inoltre, se hai voglia di cogliere questa macchina, puoi farlo a partire da $ 368.

Acquista OnLogic CL100

9. Olympia v3

Olympia V3
Olympia V3

Se hai un budget adeguato per il tuo mini PC basato su Linux, allora vale davvero la pena guardare questa macchina basata su Endless OS. Non solo ha specifiche davvero impressionanti, ma c’è anche uno sconto speciale dell’1,5% sul suo sito ufficiale per coloro che pagano con bonifico bancario.

Quando si tratta del suo processore, agli acquirenti vengono fornite tre opzioni, tra cui Intel i3-10110U (fino a 4,1 GHz), Intel i5-10210U (fino a 4,2 GHz) e Intel i7-10710U (fino a 4,7 GHz). Per quanto riguarda lo spazio di memoria, puoi optare per 8 GB, 16 GB o 32 GB di RAM DDR4. La macchina viene fornita con un’unità a stato solido da 128 GB, 256 GB, 512 GB o 1 TB per tempi di avvio più rapidi.

Ultimo ma non meno importante, questa bestia di un mini PC viene fornita con l’ultima versione di Ubuntu. Inoltre, se hai intenzione di optare per un’altra distribuzione basata su Linux, puoi anche ottenere questa macchina senza alcun sistema operativo installato. Infine, come accennato in precedenza, l’Olympia v3 potrebbe essere un po ‘duro per le tue tasche poiché il suo modello più economico costa circa $ 640.

Acquista Olympia v3

10. Utilite 2

Utilite-2
Utilite 2

Tutti coloro che stanno esaurendo i soldi e cercano un mini PC basato su Linux dovrebbero saperne di più su questo prodotto dai creatori di MintBox, noto come CompuLab.

Sebbene le specifiche di questa macchina possano essere un po ‘insignificanti per alcuni, sono comunque sufficienti per l’utente medio di computer. Quando si tratta del suo processore, Utilite2 è alimentato da una CPU quad-core Qualcomm Snapdragon 600 che funziona a 1,7 GHz. Inoltre, gli utenti troveranno anche 2 GB di spazio di memoria e eMMC con 32 GB di memoria mSATA opzionale.

Ora arrivando alle sue capacità di elaborazione grafica, Utilite 2 è dotato di GPU Qualcomm Adreno. Un altro fatto interessante di questo mini PC è che, sebbene sia basato su Ubuntu LTS, gli utenti hanno anche la possibilità di eseguire Android su di esso. Infine, anche questo dispositivo informatico non è così costoso, poiché è attualmente disponibile per $ 192 (più $ 37 per SSD).

Acquista Utilite 2

Conclusione

I sistemi operativi Linux e i mini PC vanno di pari passo, come potresti aver notato dal nostro elenco. Inoltre, per risparmiarti la seccatura di installare il sistema operativo da solo, ci siamo assicurati di includere solo quei mini PC in questo elenco, che vengono preinstallati con una distribuzione basata su Linux.

Anche se abbiamo cercato di coprire più terreno possibile, è ancora possibile perdere alcune macchine degne che meritavano un posto. Considerando questo, vorremmo consentire ai nostri lettori di menzionare i loro mini PC basati su Linux preferiti nella sezione commenti qui sotto.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!

Una delle directory più interessanti (e forse anche una delle più importanti) in un sistema Linux è /var/log. Secondo il Filesystem Hierarchy Standard, l’attività della maggior parte dei servizi in esecuzione nel sistema viene scritta in un file all’interno di questa directory o in una delle sue sottodirectory.

Tali file sono noti come registri e sono la chiave per esaminare come funziona il sistema (e come si è comportato in passato). Registri sono anche la prima fonte di informazioni che gli amministratori e gli ingegneri guardano durante la risoluzione dei problemi.

Se guardiamo il contenuto di /var/log su un CentOS / RHEL / Fedora e Debian / Ubuntu (per varietà) vedremo i seguenti file di log e sottodirectory.

Si noti che il risultato potrebbe essere leggermente diverso nel tuo caso a seconda dei servizi in esecuzione sui tuoi sistemi e dal tempo in cui sono stati eseguiti.

In RHEL / CentOS e Fedora

# ls /var/log
File di registro e directory in CentOS 7
File di registro e directory in CentOS 7

In Debian e Ubuntu

# ls /var/log
File di registro e directory in Debian 8
File di registro e directory in Debian 8

In entrambi i casi, possiamo osservare che alcuni dei nomi di registro terminano come previsto in “Log”, mentre altri vengono rinominati utilizzando una data (ad esempio, maillog-20160822 su CentOS) o compresso (considera auth.log.2.gz e mysql.log.1.gz su Debian).

 

Questo non è un comportamento predefinito basato sulla distribuzione scelta ma può essere modificato a piacimento utilizzando le direttive nei file di configurazione, come vedremo in questo articolo.

Se i registri fossero conservati per sempre, finirebbero per riempire il filesystem dove / var / log risiede. Per evitare ciò, l’amministratore di sistema può utilizzare una simpatica utility chiamata logrotate per ripulire i registri su base periodica.

In poche parole, logrotate rinominerà o comprimerà il registro principale quando una condizione viene soddisfatta (più su questo in un minuto) in modo che l’evento successivo venga registrato su un file vuoto.

Inoltre, rimuoverà “vecchio” file di log e manterrà quelli più recenti. Naturalmente, dobbiamo decidere cosa “vecchio” significa e quanto spesso vogliamo che logrotate ripulisca i log per noi.

Installazione di Logrotate in Linux

Installare logrotate, usa semplicemente il tuo gestore di pacchetti:

---------- On Debian and Ubuntu ---------- 
# aptitude update && aptitude install logrotate 

---------- On CentOS, RHEL and Fedora ---------- 
# yum update && yum install logrotate

Vale la pena notare che il file di configurazione (/etc/logrotate.conf) può indicare che altre impostazioni più specifiche possono essere impostate sull’individuo .conf file all’interno /etc/logrotate.d.

Questo sarà il caso se e solo se la seguente riga esiste e non è commentata:

include /etc/logrotate.d

Ci atterremo a questo approccio, poiché ci aiuterà a mantenere le cose in ordine e ad utilizzare il Debian box per i seguenti esempi.

Configurare Logrotate in Linux

Essendo uno strumento molto versatile, logrotate fornisce molte direttive per aiutarci a configurare quando e come i log verranno ruotati e cosa dovrebbe accadere subito dopo.

Inseriamo i seguenti contenuti in /etc/logrotate.d/apache2.conf (nota che molto probabilmente dovrai creare quel file) ed esaminare ogni riga per indicarne lo scopo:

apache2.conf

/var/log/apache2/* {
    weekly
    rotate 3
    size 10M
    compress
    delaycompress
}

La prima riga indica che le direttive all’interno del blocco si applicano a tutti i log all’interno / var / log / apache2:

  • settimanalmente significa che lo strumento tenterà di ruotare i registri su base settimanale. Altri valori possibili sono giornalieri e mensili.
  • ruotare 3 indica che devono essere conservati solo 3 registri ruotati. Pertanto, il file più vecchio verrà rimosso alla quarta esecuzione successiva.
  • dimensione = 10 m imposta la dimensione minima per la rotazione a 10M. In altre parole, ogni registro non verrà ruotato fino a quando non raggiunge i 10 MB.
  • comprimere e delaycompress sono usati per dire che tutti i log ruotati, ad eccezione di quello più recente, devono essere compressi.

Eseguiamo un dry run per vedere cosa farebbe logrotate se fosse effettivamente eseguito ora. Usa il -d opzione seguita dal file di configurazione (puoi effettivamente eseguire logrotate omettendo questa opzione):

# logrotate -d /etc/logrotate.d/apache2.conf

I risultati sono mostrati sotto:

Ruota i registri di Apache con Logrotate
Ruota i registri di Apache con Logrotate

Invece di comprimere i log, potremmo rinominarli dopo il file Data quando sono stati ruotati. Per farlo, useremo il dateext direttiva. Se il nostro formato della data è diverso da quello predefinito aaaammgg, possiamo specificarlo usando formato data.

Nota che possiamo anche impedire che la rotazione avvenga se il log è vuoto con notifempty. Inoltre, diciamo a logrotate di inviare il log ruotato all’amministratore di sistema ([email protected] in questo caso) per il suo riferimento (ciò richiederà la configurazione di un server di posta, che è fuori dallo scopo di questo articolo).

Se vuoi ricevere e-mail su logrotate, puoi configurare il server di posta Postfix come mostrato qui: Installa Postfix Mail Server

Questa volta useremo /etc/logrotate.d/squid.conf solo per ruotare /var/log/squid/access.log:

squid.conf

/var/log/squid/access.log {
    monthly
    create 0644 root root
    rotate 5
    size=1M
    dateext
    dateformat -%d%m%Y
    notifempty
    mail [email protected]
}

Come possiamo vedere nell’immagine qui sotto, questo registro non ha bisogno di essere ruotato. Tuttavia, quando viene soddisfatta la condizione relativa alle dimensioni (dimensione = 1M), il registro ruotato verrà rinominato access.log-25082020 (se il registro è stato ruotato su 25 agosto 2020) e il registro principale (access.log) verrà ricreato con le autorizzazioni di accesso impostate su 0644 e con radice come proprietario e proprietario del gruppo.

Infine, quando il numero di log finalmente raggiunge 6, il registro più vecchio verrà spedito a [email protected].

Ruota i registri di calamari con Logrotate
Ruota i registri di calamari con Logrotate

Supponiamo ora di voler eseguire un comando personalizzato quando ha luogo la rotazione. Per fare ciò, posizionare la riga con tale comando tra le direttive postrotate e endscript.

Ad esempio, supponiamo di voler inviare un’e-mail a root quando uno qualsiasi dei log all’interno / var / log / myservice viene ruotato. Aggiungiamo le linee in rosso a /etc/logrotate.d/squid.conf:

squid.conf

/var/log/myservice/* {
	monthly
	create 0644 root root
	rotate 5
	size=1M
    	postrotate
   		echo "A rotation just took place." | mail root
    	endscript
}

Ultimo, ma non meno importante, è importante notare che le opzioni presenti in /etc/logrotate.d/*.conf sovrascrivere quelli nel file di configurazione principale in caso di conflitti.

Logrotate e Cron

Per impostazione predefinita, l’installazione di logrotate crea un file crontab all’interno /etc/cron.daily di nome logrotate. Come nel caso degli altri file crontab all’interno di questa directory, verrà eseguito quotidianamente a partire da 6:25 se anacron non è installato.

Altrimenti, l’esecuzione inizierà intorno 7:35. Per verificare, guarda la riga contenente cron.daily in entrambe / etc / crontab o / etc / anacrontab.

Sommario

In un sistema che genera diversi log, l’amministrazione di tali file può essere notevolmente semplificata utilizzando logrotate. Come abbiamo spiegato in questo articolo, ruoterà, comprimerà, rimuoverà e invierà automaticamente i registri su base periodica o quando il file raggiunge una determinata dimensione.

Assicurati solo che sia impostato per essere eseguito come cron job e logrotate renderà le cose molto più facili per te. Per maggiori dettagli, fare riferimento alla pagina man.

Hai domande o suggerimenti su questo articolo? Sentiti libero di farcelo sapere utilizzando il modulo di commento qui sotto.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!