2024-03-24 02:39:39 +00:00
2023-09-28 21:37:16 +01:00
2023-09-28 21:37:16 +01:00
2023-09-28 21:37:16 +01:00
2024-01-07 19:18:48 +00:00
2024-03-24 02:39:39 +00:00
2024-03-09 10:11:05 +00:00

Linux

comands


# OS information
hostnamectl

#get hostname
hostname

#system update

sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y

ls

List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

#order by date 
ls -t

#order by date reverse
ls -r

source: man

Users

#create
useradd USERNAME
#remove
userdel USERNAME
#useradd -r USERNAME
passwd
passwd USERNAME
groups
groupadd GROUPNAME
groups USERNAME
usermod -a -G GROUPNAME USERNAME

chown [-c|--changes] [-v|--verbose] [-f|--silent|--quiet] [--dereference]
      [-h|--no-dereference] [--preserve-root]
      [--from=currentowner:currentgroup] [--no-preserve-root]
      [-R|--recursive] [--preserve-root] [-H] [-L] [-P]
      {new-owner|--reference=ref-file} file ...

hostame

sudo nano /etc/hostname
#alterar o nome
sudo nano /etc/hosts
#alterar o nome
Static IP
A configuração para um ip estático poderá ser um pouco diferente de destribuição para distribuição mas a lógica é similar

static ip

Debian sudo nano /etc/network/interfaces Exemplo de configuração

# neste exemplo de configuração a place de rede tem o nome enxd0374555c1f8 

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface

allow-hotplug enxd0374555c1f8
iface enxd0374555c1f8 inet static
  address 192.168.0.2
  netmask 255.255.255.0
  gateway 192.168.0.1
  dns-nameservers 89.207.128.252 89.207.130.252
Reiniciar configuração sem reboot de computador
Reiniciar configuração sem reboot de computador
#sudo /etc/init.d/networking restart

Disks

File System & Space Usage

df -h

List physical disks and partition size

lsblk

List partition ids

blkid /dev/sdc1

Partition Manager

fdisk /dev/<DISK NAME>
#Example:
fdisk /dev/sdc

#Partições como mais de 2 TB
sudo parted /dev/sdc
#(parted) mklabel gpt
#alterar para a unidade de medida que desejar
#(parted) unit TB
#ver espaço livre
(parted) print free
#criar partição com espaço livre (exemplo:4 Teras)
mkpart primary ext4 0 4
#Formatar uma partição

mount

Mount partion on boot fstab

nano /etc/fstab

ext4 example

#add line
PARTUUID=<PARTUUID GIVEN blksid>  <FOLDER WHERE TO MOUNT> ext4 defaults,nofail 0 02

Mount fstab partions without reboot

mount -a

smb share

mount -t cifs //ip/share /mnt/backups -o credentials=/path/filename,uid=1000,gid=1000,dir_mode=0755,file_mode=0755

smb share

sshfs username@server:/serverpath /targetfolder

gio

mount samba share

#/home/username/.credentials
#username
#SAMBA
#password
gio mount smb://server/share < /home/username/.credentials

unmount

gio mount -u smb://server/share

File System

ext4

mkfs.ext4 filesys

Example

mkfs.ext4 /dev/sdb1

ext3

mkfs.ext3 filesys

Example

mkfs.ext3 /dev/sdb1
#exFat
mkfs.exfat /dev/sdc1

exFat

mkfs.exfat filesys

mkfs.exfat /dev/sdc1

ntfs

apt-get install ntfs-3g
mkntfs --fast --label Backups /dev/sdc1

space usage

df

df -h

du -h --max-depth=1

Manutenção de discos

Bad Sectors sudo e2fsck -cfpv /dev/sda1 O Exemplo foi com o disco sda1 mas deverá ser subsituido pelo disco desejado

Os parâmetros têm os seguintes significados:

“c” procura por blocos defeituosos e os adiciona à lista

“f” força uma verificação no sistema de arquivos

“p” repara qualquer coisa que possa ser reparada com segurança

“v” está no modo detalhado. você pode ver o progresso do comando

Esse comando pode levar muito tempo para ser executado, até várias horas em uma unidade particularmente grande.

tar

A utilização o comando tar é uma das formas de comprimir no linux

tar -cvf --exclude='.cache' --exclude='Cache'  --exclude='.cache' --exclude='.tmp' --exclude='tmp' /tmp/nomedoficheiro.tar.gz /PATHPARAFICEHIROOUDIRECTORIO

#Caso seja necessário paralelismo
tar -I pigz -cvf - /fileserver/media/music/*

#Se for necessário limitar o tamanho do ficheiro compresso (dividindo em multiplos ficheiros)
tar -I pigz -cvf - /sourcefolder/* | split --bytes=8GB - /tmp/file.tar.gz

SSH

para executar comandos por ssh que usem o display do servidor, começar por executar:

export DISPLAY=:0 screen Para mais informações como manter o comando a executar mesmo que termine a sessão de ssh consultar:Screen

sem password criar chaves (publica e privada) no cliente

ssh-keygen -t ecdsa -b 521
Se for necessário controlar o nome do ficheiro

#substituir ~/.ssh/id_ecdsa/mf-key-ecdsa com o path de destino e o nome pretendido
# o directório tem que existir, por isso se não existir:
# mkdir ~/ssh/id_ecdsa
ssh-keygen -t ecdsa -b 521 -f ~/.ssh/mf-key-ecdsa
copiar a chave para o servidor

ssh-copy-id -i ~/.ssh//mf-key-ecdsa.pub example_user@192.0.2.4
testar o ssh para ver se funcionou (ou seja não pede a password)

ssh example_user@192.0.2.4
se pedir a password e indicar algo semelhante a It is required that your private key files are NOT accessible by others. será necessario rever as permissões do ficheiro indicado na informação Exemplo:

chmod g-rwx,o-rwx ~/.ssh/mf-key-ecdsa
Para adicionar o chave existente no ssh-agent (só necessario se a chave privada for copiada de outro sitio)

eval ssh-agent ssh-add pathenomedoficheiro

Caso o servidor de SSH seja em windows e necessario alterara segraunça do authorized_keys

get-acl c:\ProgramData\ssh\ssh_host_dsa_key | set-acl C:\Users[username].ssh\authorized_keys

Benchmarking

Discos sudo apt install hdparm sudo hdparm -Tt /dev/sdc

themes

shell

  • zsh
sudo apt install zsh
chsh -s /bin/zsh $whoami
sudo apt-get install fonts-powerline

#source https://ohmyz.sh/#install
ssh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

#~/home/.zshrc
#ZSH_THEME="agnoster"

terminal

  • guake
apt install guake
# ~/.config/autostart/guake.desktop
[Desktop Entry]
Name=guake
GenericName=guake auto start
Comment=
Exec=guake --hide
Terminal=false
Type=Application
X-GNOME-Autostart-enabled=true
  • terminator
apt install terminator

Backups

tar -cvpzf "/vault/.backups/devices/homeserver/tar/backup_$(date +"%Y%m%d%H%M%S").tar.gz \
--exclude=/proc \
--exclude=/tmp \
--exclude=/mnt \
--exclude=/dev \
--exclude=/sys \
--exclude=/run \
--exclude=/media \
--one-file-system \
/

#!/bin/bash
gio mount ftp://ftp.backups@backupsrv01.dev.lan < ~/.credentials/ftp.backups@backupsrv01.dev.lan

DATE=$(date +%d-%m-%Y)
BACKUP_DIR="/run/user/1000/gvfs/ftp:host=backupsrv01.dev.lan,user=ftp.backups/mf.brutus.dev.lan"

#To backup 2daygeek's home directory
tar -zcvpf $BACKUP_DIR/home-mf_$DATE.tar.gz --exclude="**/.tmp/*" --exclude="**/Downloads/*" --exclude="**/.cache/*" --exclude="**/Trash/*" --exclude="**/cache/*"  /home/mf

#To delete files older than 10 days
find $BACKUP_DIR/* -mtime +10 -exec rm {} \;

gio mount -u ftp://ftp.backups@backupsrv01.dev.lan

disable touh screen

sudo apt-get -y install xinput
xinput

Run xinput to list out the input devices. Your touchscreen should show as one of the "pointers".

xinput disable "NTRG0001:01 1B96:1B05" (your device ID may differ than mine)

Add this to your ~/.profile or such to do automatically upon login xinput disable "NTRG0001:01 1B96:1B05"

Source: https://askubuntu.com/questions/759335/how-to-disable-a-touchscreen-on-surface-pro-3

disable suspend blackscreen

# /etc/lightdm/lightdm.conf
[Seat:*]
xserver-command=X -s 0 dpms

lightdm auto login

# /etc/lightdm/lightdm.conf
[SeatDefaults]
autologin-user=public
autologin-user-timeout=5
# Uncomment the following, if running Unity
#greeter-session=unity-greeter

btop

Setup

Debian & Ubuntu

apt update && apt install btop -y

lspci

Displays information about each PCI bus on your system. This includes information about the devices connected to the PCI subsystem.

lspci [options]

Option Description
-v Verbose
lspci -v

gnome files / nautilus

https://www.maketecheasier.com/useful-nautlius-tweaks-linux/

Description
No description provided
Readme 178 KiB