Το Στέκι των Πληροφορικών

Γενικά => Τεχνική υποστήριξη => Linux => Μήνυμα ξεκίνησε από: alkisg στις 07 Οκτ 2019, 10:02:50 ΜΜ

Τίτλος: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 07 Οκτ 2019, 10:02:50 ΜΜ
Σε αυτό το θέμα θα κρατάω διάφορες σημειώσεις για εντολές που μου φάνηκαν χρήσιμες. Με βολεύει για να τις βρίσκω γρήγορα μέσω google "keywords site:alkisg.mysch.gr", αλλά μπορεί να τις βρει ενδιαφέρουσες και κάποιος άλλος.
Τίτλος: Προώθηση port>1024 σε χαμηλότερη
Αποστολή από: alkisg στις 07 Οκτ 2019, 10:05:44 ΜΜ
Μερικά προγράμματα, π.χ. vnc, xrdp, "ακούν" σε πόρτες > 1024. Σε μερικές περιπτώσεις τις χρειαζόμαστε σε < 1024, που εκεί όμως μπορεί να τρέξει προγράμματα μόνο ο root.

Παράδειγμα, έστω ότι θέλουμε να υποστηρίξουμε κάποιον που έχει εταιρικό firewall που επιτρέπει εξερχόμενες συνδέσεις μόνο σε web (θύρα 80). Τρέχουμε:

Κώδικας (Bash) [Επιλογή]

xvnc4viewer -listen &
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 5500


Οπότε έτσι αυτός μπορεί να συνδεθεί στο VNC μας που ακούει πλέον και τη θύρα 80, με:

Κώδικας (Bash) [Επιλογή]

x11vnc -connect srv1-dide.ioa.sch.gr:80
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 15 Απρ 2022, 01:11:46 ΜΜ
Προσάρτηση αρχείου .vdi εικονικής μηχανής χωρίς δικαιώματα διαχειριστή:
https://www.qemu.org/2021/08/22/fuse-blkexport/

qemu-storage-daemon --blockdev node-name=prot-node,driver=file,filename=gentoo.vdi --blockdev node-name=fmt-node,driver=vdi,file=prot-node --export type=fuse,id=exp0,node-name=fmt-node,mountpoint=mount-point,writable=on


Κλωνοποίηση σε άλλο τύπο με χρήστη του VirtualBox:

vboxmanage clonemedium disk srv.vmdk dst.vmdk --format VMDK --variant Fixed
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 19 Ιουλ 2022, 07:36:12 ΠΜ
Ενημερώσεις απομακρυσμένου συστήματος μέσω ssh όταν ο πάροχος μπλοκάρει την πρόσβαση στα αποθετήρια, ή όταν επικοινωνεί με το δεύτερο σύστημα μόνο μέσω τοπικού δικτύου.
Χρησιμοποιείται ένα δεύτερο σύστημα ως apt proxy.

Κώδικας (Bash) [Επιλογή]
sudo ssh -ND 1234 alkisg@srv1-dide.ioa.sch.gr

και μετά σε άλλη καρτέλα:

Κώδικας (Bash) [Επιλογή]
sudo apt update -o 'Acquire::http::Proxy=socks5h://localhost:1234'
sudo apt full-upgrade -o 'Acquire::http::Proxy=socks5h://localhost:1234'
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 06 Δεκ 2022, 01:42:53 ΜΜ
Port forward θύρας, ώστε π.χ. ο server της Δευτεροβάθμιας να στέλνει σε άλλον server στον LAN την κίνηση για κάποια θύρα:

Κώδικας (Bash) [Επιλογή]
iptables -A PREROUTING -t nat -p tcp -i eth0 --dport 1194 -j DNAT --to-destination 10.161.254.41:1194
iptables -A POSTROUTING -t nat -p tcp -d 10.161.254.41 --dport 1194 -j MASQUERADE
iptables -A PREROUTING -t nat -p udp -i eth0 --dport 1194 -j DNAT --to-destination 10.161.254.41:1194
iptables -A POSTROUTING -t nat -p udp -d 10.161.254.41 --dport 1194 -j MASQUERADE
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 19 Δεκ 2022, 10:23:39 ΠΜ
Στον Επόπτη, αν κάνουμε δεξί κλικ → Εκτέλεση → Άνοιγμα κονσόλας → Διαχειριστή, τοπικά, και κάνουμε apt full-upgrade, τότε εάν υπάρχει νέα έκδοση του πακέτου epoptes-client, το τερματικό κλείνει και τα updates κόβονται στη μέση.

Η παρακάτω εντολή βοηθάει στην παράκαμψη αυτού του προβλήματος:

Κώδικας (Bash) [Επιλογή]
sudo systemd-run socat EXEC:"pkexec env TERM=xterm-256color COLUMNS=95 LINES=50 SHELL=/bin/bash screen -T xterm-256color",pty,stderr openssl-connect:$SERVER:5499,verify=0
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 29 Φεβ 2024, 01:11:10 ΜΜ
Προβολή της εξωτερικής IP:

Κώδικας (Bash) [Επιλογή]
# Μέσω DNS resolution:
nslookup myip.opendns.com resolver1.opendns.com
host -4 myip.opendns.com resolver1.opendns.com

# Μέσω http request:
wget https://alkisg.mysch.gr/ip/ -qO-
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 29 Μαρ 2024, 01:01:20 ΜΜ
Αναζήτηση τοπικών DHCP servers:

Κώδικας (Bash) [Επιλογή]
sudo /usr/lib/klibc/bin/ipconfig -n enp2s0
ή
sudo nmap --script broadcast-dhcp-discover
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 01 Απρ 2024, 12:39:13 ΜΜ
Καλή εντολή για έλεγχο ποιότητας σύνδεσης:

Κώδικας (Bash) [Επιλογή]
ping -c 1000 -f -i 0.002 destination
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 13 Μαΐου 2024, 11:34:29 ΠΜ
Για factory reset Motorola G:
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 15 Μαΐου 2024, 07:46:30 ΜΜ
Κρυπτογράφηση δίσκου ανά χρήστη (δηλαδή ούτε ο administrator δεν μπορεί να διαβάσει τα αρχεία των χρηστών), με αυτόματο ξεκλείδωμα κατά το login και υποστήριξη ZFS snapshots:

https://docs.oracle.com/cd/E88353_01/html/E37853/pam-zfs-key-7.html
To avoid adding `homes=home` in PAM config, use the default rpool/home:

Κώδικας (Bash) [Επιλογή]
apt install zfsutils-linux libpam-zfs
zpool create -m none rpool nvme0n1p7 -f
zfs create -o mountpoint=/home rpool/home
zfs create -o encryption=on -o canmount=noauto -o keylocation=prompt -o keyformat=passphrase rpool/home/alkisg

Leave /home/alkisg owned by root and mode 755; modify the permissions inside the ZFS dataset.
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 09 Ιουλ 2024, 09:21:22 ΠΜ
Λήψη περιεχομένων δυναμικής σελίδας σε Google Chrome:

https://zapier.com/blog/full-page-screenshots-in-chrome/#custom-dimensions
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 12 Νοε 2024, 10:20:42 ΠΜ

Πλήρες μπλοκάρισμα Internet των clients, μέσω του Επόπτη:

sudo ip r add default via 127.0.0.1⁩

Επαναφορά:

sudo ip r del default via 127.0.0.1⁩
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 02 Δεκ 2024, 10:20:15 ΠΜ
Microbit plugdev group:

https://askubuntu.com/questions/1317548/webusb-doesnt-work-connecting-to-microbit
https://gitlab.com/ts.sch.gr/lins2bot/-/issues/3
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 11 Μαρ 2025, 12:14:54 ΜΜ
Εγκατάσταση arduino-ide για όλους τους χρήστες (στο περίπου):

Κώδικας (Bash) [Επιλογή]
sudo wget https://downloads.arduino.cc/arduino-ide/arduino-ide_2.3.4_Linux_64bit.AppImage -O /usr/local/bin/arduino-ide
sudo chmod +x /usr/local/bin/arduino-ide
# Run it as the user to get access to the menu and icon files
arduino-ide --no-sandbox
# Copy the folder to bypass fuse permissions
cp -r /tmp/.mount_ard* /tmp/arduino-ide
sudo cp /tmp/arduino-ide/arduino-ide.desktop /usr/local/share/applications/
sudo sed 's/AppRun/arduino-ide/' -i /usr/local/share/applications/arduino-ide.desktop
sudo mkdir -p /usr/local/share/icons/hicolor/256x256/apps/
sudo cp /tmp/arduino-ide/arduino-ide.png /usr/local/share/icons/hicolor/256x256/apps/
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: mandarinos στις 12 Μαρ 2025, 08:57:54 ΠΜ
Δεν αρκεί. Θέλει και να το κάνεις να "δεί" (μόνιμα) τη θύρα usb, αλλοιώς δεν θα δουλέψει. Ως εξής:

sudo usermod -a -G dialout username

(Όπου username = το όνομα του χρήστη σου.)

(Μετά, θα χρειαστεί και reboot· αλλά νομίζω ένα απλό logout/login αρκεί. Η πλήρης αναφορά, εδώ: https://docs.arduino.cc/software/ide-v1/tutorials/Linux/.)

Δεν γνωρίζω, όμως, αν αυτή η εντολή πρέπει να δίνεται ανά χρήστη, ή υπάρχει τρόπος να δοθεί μιά κι έξω, system-wide.
Τίτλος: Απ: Προσωπικές σημειώσεις
Αποστολή από: alkisg στις 12 Μαρ 2025, 09:01:53 ΠΜ
Η πρόσβαση στις συσκευές λύνεται κεντρικά μέσω udev, δεν χρειάζεται αλλαγή groups, δες την προηγούμενη σημείωσή μου λίγο παραπάνω.

Για να δούμε τι θα κάνει το ΙΤΥΕ... Αν βρει κάποιους από την Πάτρα για κεντρική υποστήριξη τότε έχει νόημα να έχουμε Linux στα σχολεία και να δίνουμε λύσεις για τέτοια...