Linux - mwicat/personal GitHub Wiki

Show process memory

ps -eo pmem,comm,pid,maj_flt,min_flt,rss,vsz --sort -rss | numfmt --header --to=iec --field 4-5 | numfmt --header --from-unit=1024 --to=iec --field 6-7

Check VM vs physical

sudo apt install dmidecode
dmidecode

System info

apt-get install smartmontools
smartctl -a /dev/sda
lscpu
dmesg | grep NIC

Resize partition

parted -s /dev/vdb "resizepart 1 -1" quit
e2fsck -f /dev/vdb1
resize2fs /dev/vdb1

Extend physical partition

pvresize /dev/sda

Create bootable usb

sudo umount /dev/sdb
sudo dd if=/path/to/ubuntu.iso of=/dev/sdb bs=1M

Create bootable windows usb

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install woeusb
woeusbgui

Watch filesystem changes

sudo pip install watchdog
watchmedo auto-restart --directory=./ --pattern=*.py --recursive -- celery worker --app=worker.app --concurrency=1 --loglevel=INFO

Record desktop

sudo add-apt-repository ppa:peek-developers/stable
sudo apt update
sudo apt install peek

Full text search

apt-get install codesearch
cindex /path/dir
csearch 'my pattern'

Add utility user

adduser --gecos '' --disabled-password --no-create-home --home /nonexistent --shell /usr/sbin/nologin user1

Limit user to sftp

https://www.howtoforge.com/restricting-users-to-sftp-plus-setting-up-chrooted-ssh-sftp-debian-squeeze

/etc/ssh/sshd_config:

Subsystem sftp internal-sftp
Match User falko
    ChrootDirectory /home
    AllowTCPForwarding no
    X11Forwarding no
    ForceCommand internal-sftp
/etc/init.d/ssh restart

Add user and group #1

sudo addgroup filetransfer
sudo adduser username
sudo usermod -G filetransfer username

Add user and group #2

sudo addgroup filetransfer
sudo useradd -s /bin/bash -G filetransfer username

Add user to group

gpasswd -a user group

Process limits

list

cat /proc/`pgrep -f org.apache.spark.deploy.worker.Worker`/limits

set

ulimit -n 10240

Available memory

free -mk

Sudo

Retain PATH variable

Defaults        exempt_group=admin
Defaults        env_keep=PATH

Repos

ppa:foobnix-player/foobnix ppa:jd-team/jdownloader Packages

aptitude thunderbird vlc mplayer smplayer gparted vim-gtk emacs23 emacs23-el ipython screen htop openssh-server python-setuptools openjdk-6-jdk gimp wireshark ettercap-gtk nmap socat iptraf mc autossh pidgin pv irssi debootstrap schroot curl wireshark build-essential gcc mercurial bzr cvs git-core subversion pdftk nautilus-open-terminal

Sun Java

sudo add-apt-repository "deb http://archive.canonical.com/ natty partner"

update-alternatives —config java update-alternatives —config javac

Browser

python-webkit-dev

python /usr/share/doc/python-webkit/examples/browser.py "$@"

Copy to clipboard

xclip -sel clip < ~/.ssh/id_rsa.pub

Write ISO on pendrive

sudo apt-get install unetbootin

Boot options to ignore ide drives

http://www.opensourcery.com/blog/chad-granum/disable-ide-linux-install-newer-sata-laptop

hda=none hdb=none hdc=none hdd=none ide0=0x168,0x36e,10

Dual monitor

xrandr --auto --output LVDS --right-of HDMI-0

Compression

pv -c 0.tch | 7za a dummy -mx=7 -si -tbzip2 -so | pv -c > shard.tar.bz2

Repack archive

pv -c archive.gz | 7z x -si -tgzip -so | 7za a dummy -mx=7 -si -tbzip2 -so | pv -c > archive.bz2

Show executable scripts

find -type f -perm -o+rx

Decrypt disk

sudo apt-get install cryptsetup
sudo cryptsetup luksOpen /dev/sda1 my_encrypted_volume
sudo mkdir /media/my_device
sudo mount /dev/mapper/my_encrypted_volume /media/my_device

umount:

sudo umount /media/my_device sudo cryptsetup luksClose my_encrypted_volum


### Encrypt disk

sudo apt-get install cryptsetup sudo cryptsetup --verify-passphrase --hash=sha256 --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat /dev/sda7 sudo cryptsetup luksOpen /dev/sda7 home sudo mkfs.ext4 /dev/mapper/home


/etc/fstab:
```/dev/mapper/home   /home           ext4     defaults    1       2```

/etc/crypttab:
```home                /dev/sda7         none         luks```

### Locate encrypted home

```bash
export LOCATE_PATH="$HOME/var/mlocate.db"
alias updatedb2="updatedb -l 0 -o $HOME/var/mlocate.db -U $HOME"

Mount bin

sudo apt-get install iat
iat source.bin target.iso

Wine

sudo dpkg --add-architecture i386
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bonic main'
sudo add-apt-repository ppa:cybermax-dexter/sdl2-backport  # for ubuntu < 19
sudo apt update
sudo apt install --install-recommends wine-stable

OOM killer

echo 1 | sudo tee /proc/sys/vm/oom_kill_allocating_task
echo 1 | sudo tee -a /etc/sysctl.conf