No description
Find a file
2025-09-11 15:21:39 +08:00
README.md Aggiorna README.md 2025-09-11 15:21:39 +08:00

Linux comandi alla console

Montare disco rigido

verificare che dischi ci sono

lsblk

per visualizzare ID disco

sudo blkid /dev/<device>

comando generico per montare disco

sudo mount -t <type> /dev/<device> <directory>

se manca creare diectory e poi montare

sudo mkdir -p <directory>
sudo mount -t ext4 /dev/nvme0n1 /home/nvme

verifica se è stato correttamente montato con

lsblk -f

per installarlo sempre anche dopo un reboot prima smontarlo

sudo umount /dev/nvme0n1

poi inserirlo in /etc/fstab

sudo nano /etc/fstab

inserendo

/dev/nvme0n1       /home/nvme ext4    defaults        0       0

quindi ricaricare tutti i dischi

systemctl daemon-reload

Verificare porte utilizzate

verificare la porta 80 in TCP

sudo lsof -i tcp:80 

verificare le porte aperte TCP

sudo lsof -nP -iTCP -sTCP:LISTEN

File compressi con i permessi e gli owner

creare archivio

sudo tar -czvpf <nome>.tar.gz <folder>

verificare le porte aperte TCP

sudo tar -xzvpf <nome>.tar.gz

Options:

-c : Creates archive
-x : Extracts the archive
-f : creates archive with given filename
-t : displays or lists files in archived file
-u : archives and adds to an existing archive file
-v : Displays verbose information
-A : Concatenates the archive files
-z : compresses the tar file using gzip
-j : compresses the tar file using bzip2
-W : Verifies an archive file
-r : updates or adds file or directory in already existing .tar file
-p : with permissions and ownership

RSYNC

rsync [options] source [destination]

se c'è l'accesso con ssh si può sincronizzare su altri server

rsync local_file_path user@remote-host:remote_file_path
rsync user@remote-host:remote_file_path local_file_path

Options:

-r : recursive
-a : archive
-z : compresses reduce transfer time 
-P : display progress
-v : Displays verbose information
-p : with permissions and ownership

Example:

sudo rsync -razPvp calibre orangepi@192.168.1.4:/home/nvme/dockerdata

Grep (ricerca stringa)

per cercare una stringa

grep -rl "string" /path

opzioni usate

-r (or --recursive) option is used to traverse also all sub-directories of /path, whereas
-l (or --files-with-matches) option is used to only print filenames of matching files

Scaricare siti o parte di essi

per scaricare un sito completo

wget -m -A * -pk -e robots=off https://www.decomposerize.com/

wget -p -k  https://www.composeverter.com/

per scaricare una dir di un sito

wget -rkpN -np -e robots=off -l1 https://brouter.de/brouter/profiles2/

sed per sostituire e per inserire

-i per sostituire il file stesso

per sostituire

sed -i 's/vite dev/vite dev --host 0.0.0.0 --port 8111/g' package.json
sed -i 's/<string out>/<string in>/g' <file>

per inserire righe dopo una stringa usando un file

sed -i '/link rel/r icon' src/app.html
sed -i '/<sting>/r <file da ins>' <file da mod>

per inserire riga e copiare in un altro file

sudo sed -i '/<string> /a <string2>' <file_in> > <file_ou>

es per inserire 2 spazi a inizio riga "\ \ "

sudo sed -i '/endresult=$(tail /a \ \ endresult=$((endresult+2048*512))' pishrink.sh > pishrink1.sh

Dimensione di un folder

l'opzione s anche con tutte le sub directory

du -hs <folder>

Debian 12 repository

le repositories sono sul file

/etc/apt/sources.list

oppure nel file del folder

/etc/apt/sources.list.d/

Debian 12 inserire un user come sudoer

editare il file

su
nano /etc/sudoers

inserire alla fine l'autorizzazione a "username"

username ALL=(ALL) NOPASSWD:ALL

oppure se installato usare

usermod -aG sudo username