Skip to content
2 changes: 1 addition & 1 deletion docs/books/learning_rsync/01_rsync_overview.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ update: 2022年3月8日

![ 安德鲁-特里杰尔 ](images/Andrew_Tridgell.jpg) ![ 韦恩-戴维森 ](images/Wayne_Davison.jpg)

!!! note "注意!"
!!! note "笔记"

Rsync本身只是一个增量备份工具,不具备实时数据同步功能(需要其他程序做补充)。 此外,同步是单向的。 如果您要实现双向同步,需要配合其他工具。**

Expand Down
4 changes: 2 additions & 2 deletions docs/books/learning_rsync/02_rsync_demo01.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ Fedora34-->|pull/下载|RockyLinux8;

## 基于SSH协议的演示

!!! tip "注意!"
!!! tip "提示"

在这里,Rocky Linux 8 和 Fedora 34 都使用root用户登录。 Fedora 34是客户端,Rocky Linux 8是服务器。

Expand Down Expand Up @@ -92,7 +92,7 @@ aabbcc
```
传输成功。

!!! tip "注意"
!!! tip "提示"

如果服务器的SSH端口不是默认的22,您可以使用类似这样的方式指定端口——`rsync -avz -e 'ssh -p [port]'`。

Expand Down
2 changes: 1 addition & 1 deletion docs/books/learning_rsync/03_rsync_demo02.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ update: 2021-11-04
| auth users = li | 启用虚拟用户,定义个虚拟用户叫什么。 需要自行创建 |
| secrets file = /etc/rsyncd_users.db | 用来指定虚拟用户的密码文件位置,必须以.db结尾。 文件的内容格式是"用户名:密码",一行一个 |

!!! tip "注意"
!!! tip "提示"

密码文件的权限必须是<font color=red>600</font>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ Last login: Tue Nov 2 21:42:44 2021 from 192.168.100.5
[testrsync@Rocky ~]$
```

!!! tip "注意"
!!! tip "提示"

服务器的配置文件 **/etc/ssh/sshd_config** 应该打开 <font color=red>PubkeyAuthentication yes</font>

Expand Down
6 changes: 3 additions & 3 deletions docs/books/learning_rsync/06_rsync_inotify.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ inotifywait 主要有以下选项:

## inotifywait和rsync的结合使用

!!! tip "注意"
!!! tip "提示"

我们在Rocky Linux 8服务器上操作,使用SSH协议进行演示。

Expand All @@ -144,12 +144,12 @@ $a | while read directory event file
[root@Rocky ~]# bash /root/rsync_inotify.sh &
```

!!! tip "再次强调"
!!! tip "提示"

使用SSH协议进行数据同步传输时,如果目标机器的SSH服务端口不是22 ,则您可以使用类似这样的方式——
`b="/usr/bin/rsync -avz -e 'ssh -p [port-number]' /rsync/* testfedora@192.168.100.5:/home/testfedora/"`

!!! tip "注意"
!!! tip "提示"

如果您要开机自启动这个脚本的话
`[root@Rocky ~]# echo "bash /root/rsync_inotify.sh &" >> /etc/rc.local`
Expand Down
8 changes: 4 additions & 4 deletions docs/books/learning_rsync/07_rsync_unison_use.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Last login: Wed Nov 3 22:07:18 2021 from 192.168.100.5
[testrsync@Rocky ~]$
```

!!! tip "注意"
!!! tip "提示"

服务器的配置文件 **/etc/ssh/sshd_config** 应该打开 <font color=red>PubkeyAuthentication yes</font>

Expand Down Expand Up @@ -132,16 +132,16 @@ done
[root@fedora ~]# jobs -l
```

!!! tip "注意"
!!! tip "提示"

要双向同步的话,两个机器的脚本必须都需要启动才可以,否则会报错。

!!! tip "注意"
!!! tip "提示"

如果您要开机自启动这个脚本的话
`[root@Rocky ~]# echo "bash /root/unison1.sh &" >> /etc/rc.local`
`[root@Rocky ~]# chmod +x /etc/rc.local`

!!! tip "注意"
!!! tip "提示"

如果您要停止这个脚本的对应进程,可以在 `htop` 命令中找到它然后 **kill** 即可
2 changes: 1 addition & 1 deletion docs/guides/containers/lxd_web_servers.it.md
Original file line number Diff line number Diff line change
Expand Up @@ -548,7 +548,7 @@ Una volta effettuato l'accesso, è sufficiente installare *Apache* in modo sempl
dnf install httpd
```

Ora, si potrebbe seguire la nostra guida [Impostazione Apache Multi-Sito](.../web/apache-sites-enabled.md) da qui in avanti, ma in realtà è un po' eccessivo per i nostri scopi. Di solito non si vuole configurare Apache per più siti web in un ambiente containerizzato come questo. Il punto centrale dei container è la separazione delle operazioni, dopotutto.
Ora, si potrebbe seguire la nostra guida [Impostazione Apache Multi-Sito](../web/apache-sites-enabled.md) da qui in avanti, ma in realtà è un po' eccessivo per i nostri scopi. Di solito non si vuole configurare Apache per più siti web in un ambiente containerizzato come questo. Il punto centrale dei container è la separazione delle operazioni, dopotutto.

Inoltre, i certificati SSL andranno sul server proxy, quindi manterremo le cose semplici.

Expand Down
178 changes: 178 additions & 0 deletions docs/guides/editors/nvchad.it.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,178 @@
---
title: NvChad
author: Franco Colussi
contributors: Steven Spencer
tags:
- nvchad
- coding
---

## Usare Neovim come IDE

Nvchad è un progetto creato allo scopo di fornire, attraverso una configurazione personalizzata di Neovim, un punto di partenza su cui costruire il proprio IDE (Integrated Development Environment) con uno sforzo minimo.

La configurazione è scritta in Lua, un linguaggio di programmazione molto veloce che permette a NvChad di avere tempi di avvio e di esecuzione molto rapidi per comandi e digitazioni. Questo è reso possibile anche dalla tecnica `Lazy loading` utilizzata per i plugin che permette ai plugin di caricarsi solo quando necessario.

L'interfaccia risulta essere molto pulita e piacevole.

Come tengono a precisare gli sviluppatori di NvChad il progetto vuole essere solo una base sulla quale costruire il proprio IDE personale. La successiva personalizzazione viene effettuata attraverso l'uso di plugin.

![NvChad UI](images/nvchad_rocky.png)

### Caratteristiche Principali

- **Progettato per essere veloce.** Dalla scelta del linguaggio di programmazione alle tecniche di caricamento dei componenti, tutto è progettato per ridurre al minimo il tempo di esecuzione.

- **Interfaccia accattivante.** Pur essendo un'applicazione _cli_ l'interfaccia risulta moderna e bella graficamente, inoltre tutti i componenti si adattano perfettamente alla UI.

- **Estremamente configurabile.** Grazie alla modularità derivata dalla base utilizzata (NeoVim) l'editor può essere adattato perfettamente alle proprie esigenze. Si tenga in considerazione però che quando si parla di personalizzazione ci si riferisce alle funzionalità non all'aspetto dell'interfaccia.

- **Meccanismo automatico di aggiornamento.** L'editor è fornito con un meccanismo (attraverso l'uso di _git_) che permette l'aggiornamento con un semplice comando ``<escape>uu`\`.

- **Powered by Lua.** La configurazione di NvChad è scritta interamente in _lua_ e questo gli permette di integrarsi perfettamente nella configurazione di Neovim sfruttando tutte le potenzialità dell'editor su cui è basata.

- **Numerosi temi integrati.** La configurazione include già un gran numero di temi da usare, tenendo sempre presente che stiamo parlando di un'applicazione _cli_ , i temi possono essere selezionati con la chiave `<escape>th`.

![Temi NvChad](images/nvchad_themes.png)

## Installare NvChad

### Pre-requisiti

- Una macchina che esegue Rocky Linux, la guida è stata scritta utilizzando Rocky Linux 9, ma anche la versione 8.6 dovrebbe essere supportata.
- Neovim 0.7.2, questa è la versione minima richiesta. EPEL fornisce una versione obsoleta ma la versione richiesta può essere installata dal pacchetto precompilato.
- Un carattere Nerd per il tuo terminale, questo ti permette di avere caratteri che rappresentano varie icone (cartelle, attività, ecc.). L'installazione sarà trattata alla fine del presente documento.
- Una conoscenza di base di Vim, questo è forse il requisito più importante in quanto tutte le operazioni sono eseguite dalla statusline __ sotto forma di comandi testuali, va notato che NvChad implementa già alcune funzionalità che coinvolgono l'integrazione del mouse, ma la conoscenza di base dei comandi è essenziale.

#### Semi-opzionale

- ripgrep, questo componente è considerato opzionale ma per avere la piena funzionalità di `:Telescope` è fortemente raccomandato.

## Installazione di Neovim

### Installazione da EPEL

Prima di passare all'installazione di NvChad dobbiamo assicurarci di avere un'installazione di Neovim disponibile. Se non è già installato è possibile installarlo dal repository EPEL, anche se la versione fornita non soddisfa i requisiti minimi.

Per installare il rilascio Neovim fornito da EPEL, abbiamo bisogno del repository installato:

```bash
dnf install epel-release
```

E digitiamo il seguente comando per installare l'applicazione:

```bash
dnf install neovim
```

### Installazione da Pacchetto Precompilato

Al fine di soddisfare i requisiti minimi di NvChad, è possibile installare il pacchetto precompilato fornito da Neovim. Questo risolve il problema della versione fornita da EPEL (attualmente 0.7.0.1) che non soddisfa il requisito minimo.

Per poter utilizzare tutte le caratteristiche della nuova versione dobbiamo ancora soddisfare le dipendenze richieste da Neovim, quindi se decidiamo di rimuovere o non installare la versione datata dobbiamo fornire _il nostro_ `nvim` con le dipendenze manualmente. I pacchetti richiesti possono essere installati con:

```bash
dnf install compat-lua-libs libtermkey libtree-sitter libvterm luajit luajit2.1-luv msgpack unibilium xsel git
```

In primo luogo scariciamo l'archivio compresso per la nostra architettura (linux64), da questo indirizzo:

```text
https://github.com/neovim/neovim/releases
```

Il file da scaricare è `nvim-linux64.tar. z`, per verificare l'integrità dell'archivio scariciamo anche il file `nvim-linux64. ar.gz.sha256sum`, una volta scaricato abbiamo bisogno di verificarne l'integrità e scompattarlo da qualche parte nella nostra `home directory`. La soluzione proposta è quella di scompattarlo in `~/.local/share/`, supponendo di averlo scaricato in _/home/user/downloads/_ dovremo eseguire i seguenti comandi:

```bash
sha256sum -c /home/user/downloads/nvim-linux64.tar.gz.sha256sum
nvim-linux64.tar.gz: OK

tar xvzf /home/user/downloads/nvim-linux64.tar.gz
mv /home/user/downloads/nvim-linux64 ~/.local/share/nvim-linux64
```

A questo punto non rimane che creare un link simbolico in `~/.local/bin/` per il nostro _nvim_.

```bash
cd ~/.local/bin/
ln -sf ~/.local/share/nvim-linux64/bin/nvim nvim
```

Per essere sicuri controlliamo la versione fornita dal comando `nvim -v`, che dovrebbe ora mostrare:

```txt
nvim -v
NVIM v0.7.2
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by runner@fv-az164-457

Features: +acl +iconv +tui
See ":help feature-compile"

system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/share/nvim"

Run :checkhealth for more info
```

## Installazione di NvChad

Ora che abbiamo installato l'editor di base possiamo passare all'installazione di NvChad. Questo in realtà non è una vera installazione, ma piuttosto la scrittura di una configurazione personalizzata di Neovim. Questo è scritto nella cartella `.config` dell'utente.

Per farlo basta eseguire il comando seguente da quasiasi posizione all'interno della propria _home directory_:

``` bash
git clone https://github.com/NvChad/NvChad ~/.config/nvim --depth 1 && nvim
```

Il comando esegue un clone della configurazione NvChad ospitata su GitHub nella cartella utente `~/.config/nvim`, se la cartella è già presente, viene sostituita dalla cartella NvChad.

Per completare la configurazione è necessario aprire un terminale e avviare un'istanza di `nvim`, in questo primo avvio i plugin che fanno parte della configurazione predefinita saranno installati e configurati e una volta finito si avrà l'IDE pronto per l'editing.

![Temi NvChad](images/nvchad_init.png)

## Installazione dei Caratteri Nerd

Nerd Fonts è una raccolta di font modificati rivolta agli sviluppatori con un gran numero di glifi (icone). In particolare, "font iconici" come Font Awesome, Devics, Octicons ecc sono utilizzati per aggiungere glifi extra.

Nerd Fonts prende i caratteri di programmazione più popolari e li modifica aggiungendo un gruppo di glifi. È disponibile anche un font patcher se il font desiderato non è già stato modificato. Nel sito è disponibile anche una comoda anteprima che consente di visualizzare come il font dovrebbe apparire nell'editor. Per ulteriori informazioni, consultare [Nerd Fonts](https://www.nerdfonts.com/).

I caratteri sono disponibili per il download su:

```text
https://www.nerdfonts.com/font-downloads
```

La procedura di installazione dei font su Rocky Linux consiste nel salvare da qualche parte i font che si vogliono aggiungere per poi installarli con il comando `fc-cache`, la procedura non è una vera e propria installazione quanto piuttosto una registrazione dei nuovi font nel sistema.

Per questa guida utilizzeremo il carattere `Sauce Code Pro Nerd`.

Scarica il pacchetto con:

```bash
https://github.com/ryanoasis/nerd-fonts/releases/download/v2.1.0/SourceCodePro.zip
```

Scompattiamo il contenuto della cartella e copiiamo i caratteri in `~/.local/share/fonts/` con:

```bash
mkdir ~/.local/share/fonts
unzip SourceCodePro.zip -d ~/.local/share/fonts/
fc-cache ~/.local/share/fonts
```

A questo punto il _font nerd_ dovrebbe essere disponibile alla selezione, per selezionarlo bisogna fare riferimento al desktop utilizzato.

![Gestore Caratteri](images/font_nerd_view.png)

Per cambiare il carattere nell'emulatore di terminale se stai usando il desktop predefinito Rocky Linux (Gnome) devi solo aprire `gnome-terminal` andare su Preferenze e impostare il carattere Nerd per il tuo profilo.

Il font del terminale dovrebbe cambiare e NvChad dovrebbe avere un aspetto migliore.

![NvChad Final](images/nvchad_final.png)

## Conclusione

Come avete visto, NvChad modifica l'eccellente editor Nvim, per creare un ambiente di sviluppo specifico alle esigenze dell'utente. Per questo motivo, il presente documento si limita a scalfire la superficie. Una ricerca tra i plugin disponibili *vi permetterà* di capire come poter modificare Nvim per adattarlo meglio alle vostre esigenze.
6 changes: 3 additions & 3 deletions docs/guides/security/ssh_public_private_keys.pl.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ tags:
- keygen
---

# Zabezpieczenie kluczy SSH i pliku authorized_keys
# Klucze Publiczne i Prywatne SSH

## Wymagania

Expand Down Expand Up @@ -96,8 +96,8 @@ Kiedy już zweryfikujemy pomyśłnie nowy sposób logowania się, możemy bezpie

`rm id_rsa.pub`

## Proces generowania kluczy
## Zabezpieczenie kluczy SSH i pliku authorized_keys

Upewnijmy isę że na każdym z serwerów zostaną ustawione następujące prawa dostępu:
Upewnijmy się że na każdym z serwerów zostaną ustawione następujące prawa dostępu:

`chmod 700 .ssh/` `chmod 600 .ssh/authorized_keys`