Linux Commands
- RPM Version Info:
rpm -qa foo
- Shutdown X11:
init 3
- Reboot the System:
init 6
- Mount a CDROM:
mount /dev/cdrom
- Unmount a CDROM:
umount /dev/cdrom
- List Start Up Scripts:
chkconfig --list
- Turn On Start Up Script:
chkconfig service start
- Turn Off Start Up Script:
chkconfig service off
- Get the kernel version by typing
uname -r
- Format USB Device to Vfat
mkfs.vfat -F 32 /dev/sda1
- How to create tarball's assuming your directory is called foo:</pre>
tar -cvzf foo.tar.gz /dir/foo
- Add user to Virtual Postfix Database:
postmap virtual
- Enable RAID1 Mirroring ndas:
ndasadmin enable -s 1 -o w 2
- Reload Postfix:
postfix reload
- Produces Postfix Queue List:
postqueue -p
- Also Produces Postfix Queue List:
mailq
- Flush Postfix Queues:
postqueue -f
- Read all postfix config:
postconf
- Remote Desktop for Windows (toggle -f on or off for fullscreen):
rdesktop -g 1152x768 -a 24 -b -f mail
- Unzip bz2 files:
bzip2 -cd files.tar.bz2 | tar xvf -
- Show program install path:
which {program}
- Removes mail from mail queue
postsuper -d {queue id}>
- Displays Hardware info from BIOS (must have installed dmidecode installed)
dmidecode
- To get a Network list of current IP/Hostname's, type the following on the command line:
dig axfr hosthame
- or to sort by IP type:
dig axfr hostname |grep IN | egrep A |sort -n -k 5 -k 7 -t .
- Type the following to setup rpmq to find true kernel version
alias rpmq='rpm --qf '\''%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n'\'' -q'
- Type the following to determine the kernel version
rpmq kernel
- List all PCI Devices:
lspci
- Reload named:
rndc reload
- Create Database:
create database {DATABASE NAME};
- Create Database Privileges:
grant all privileges on {DATABASE NAME}.* to {DATABASE USER}@localhost identified by '{DATABASE PASSWORD}';
- Set Privileges:
flush privileges;
- Netstat TCP/UDP IP,PORTS
netstat -tunlp
- Create QEMU Disk Images:
qemu-img create -f qcow {name}.img 3G
- Install OS on QEMU Drive Image via CD-ROM
qemu -cdrom /dev/cdrom -hda {name}.img -m {memsize} -boot d
- Install OS on QEMU Drive Image via IMAGE
qemu -cdrom {name}.iso -hda {name}.img -m {memsize} -boot d
- Run QEMU Disk Images with Sound (Blaster16):
qemu -hda {name}.img -m {memsize} -soundhw es1370 -localtime
- Move seamless between host and guest
qemu -hda {name}.img -m {memsize} -soundhw es1370 -localtime -usb -usbdevice tablet
- Resize AVI Files (--export_asr 3 is widescreen and --export_asr 2 is fullscreen)
transcode -i INPUT.avi -y ffmpeg,ffmpeg -F mpeg4 -Z 320x,fast --export_asr 2 -o OUTPUT.avi -E 44100,16,2 -b 256
- Start NetworkManager GUI Applet
nm-applet &
- Set Password for MySQL Root
mysqladmin -u root password new-password
- Remove User account and Home dir
userdel -r {username}
- Mount an ISO image
mount -o loop -t iso9660 filename.iso /mnt/iso
- Create random passwords
head /dev/urandom | strings
- Show partions on a drive
sfdisk -l
- You want to download all the GIFs from an HTTP directory. The command doesn't work since HTTP retrieval does not support globbing. In that case, use:
wget -r -l1 --no-parent -A.gif http://host/dir/
- How to rsync
rsync -r -a -v -e "ssh -l {username}" --delete {remote machine}:/dir /dir
- How to check memory
ps -eo pid,ppid,rss,vsize,pcpu,pmem,cmd -ww --sort=pid
- How to search and replace recursively within files
find . -type f -exec sed -i s/search/replace/g {} +
- How to convert Flac to MP3
for file in *.flac; do flac -cd "$file" | lame -h - "${file%.flac}.mp3"; done
- How to check 3ware Hardware RAID status:
tw_cli /c0 show
- Dirvish Vault first init
dirvish -vault ''vaultname'' --init
- CIFS mount:
mount -o username=username,password=1234,uid=username,gid=groupname,iocharset=utf8,file_mode=0777,dir_mode=0777,noperm //host/disk /mnt/NAS/
- How to install all development tools:
PRE Fedora 18: yum groups install "Development Tools"
POST Fedora 18: yum groupinstall development-libs development-tools gnome-software-development
apt-get install build-essential
- How to enable ndadmin slot:
ndasadmin enable -s 1 -o w
- How to install Debian Kernel headers:
apt-get install linux-headers-$(uname -r)
- How to find the largest file/directory human readable from your current directory:
du -hsx * | sort -rh | head -10
- How to list all installed PERL modules:
perl -MFile::Find=find -MFile::Spec::Functions -Tlwe 'find { wanted => sub { print canonpath $_ if /\.pm\z/ }, no_chdir => 1 }, @INC'
- GLOBAL REPLACE in the files (change call to mall in all *.kumac files):
awk '{gsub("call", "mall", $0); print > FILENAME}' *.kumac
- The fastest way to scan all your computers/network subnet for open ports ever:
nmap -T5 192.168.1.0/24
- Convert virtual image files:
ovftool --lax input.ovf output.vmx
- How to extract CPIO file:
cpio -id < filename
- How to remove all symbolic link:
find -type l -delete
- How to find device or partition block size:
blockdev --getbsz partition
- How to convert KVM to VMWARE:
qemu-img convert -O vmdk filename.qcow2 filename.vmdk
- List UUID of all disks:
ls /dev/disk/by-uuid -lt
- Add CDROM to apt:
apt-cdrom add
- Rebuild software RAID:
mdadm --assemble --scan
- Time stamp on history command:
HISTTIMEFORMAT="%d/%m/%y %T " && history<pre>
- Remount read/write:
mount -o remount, rw /
- Find port number of running application:
lsof -Pan -p {PID} -i
- WAN IP Address from commandline:
curl -s ifconfig.co
- Burn CD/DVD commandline:
growisofs -dvd-compat -Z /dev/cdrom=filename.iso
- Bandwidth Test Commandline:
curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -
- Fix E353: Nothing in register "
echo set clipboard=unnamed >> ~/.vimrc
- Find Out Which Process Is Listening Upon a Port:
netstat -tulpn
- Replace all spaces in files within a directory with an underscore:
for f in *\ *; do mv "$f" "${f// /_}"; done
- Disk usage of all directories including hidden:
du -sch .[!.]* *
- Check process by CPU and PID:
ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10
- Create simple HTTP server from present working directory:
python -m SimpleHTTPServer
- Resize img file
qemu-img resize test.img 2G
- a wk vertical to horizontal
awk 'ORS=" "' filename
- Re-read partition table after modifications (SD or USB):
partprobe /dev/sdX
- Find with max depth of 3 directories:
find -maxdepth 3
- Find SCSI/SATA devices
lsscsi
- ecm uncompress multiple files:
for i in *; do ecm-uncompress "$i"; done
- Force downgrade of package:
apt-get install apt=1.4.8 libapt-pkg5.0=1.4.8 apt-utils=1.4.8 libapt-inst2.0:amd64=1.4.8
- Find package dependencies from repo:
debfoster -d package
- List video drivers used. Search for "configuration":
dlshw -c video
- List all listening network ports:
netstat -ntpl
- Check TCP ports using netcat:
nc -w 5 -zv {ipaddress} {port}
- Check UPD ports using netcat:
nc -u -w 5 -zv {ipaddress} {port}
- Show Debian/Ubuntu release information:
lsb_release -a
- Reinstall GRUB on drives after OS is running:
dpkg-reconfigure grub-pc
- Cut example to get full names of users from passwd:
cut -d':' -f5 /etc/passwd
- Deletes any trailing whitespace at the end of each line:
:%s/\s\+$//e
- Check UDP port is open/closed:
map -sU -p port ip
- Unlink all symbolic links in dir:
find . -type l -exec unlink {} \;
- See process in memory:
ps wwu -C process
- See process tree of all processes on system:
ps axjf
- Sort processes memory from highest to lowest:
ps -o pid,user,%mem,command axf | sort -b -k3 -r
- Sort processes CPU from highest to lowest:
ps -o pid,user,%cpu,command axf | sort -b -k3 -r
- Display uncommented lines in a file:
cat {filename} | egrep -v "(^#.*|^$)"
- List all process running on port number
lsof -i :8080
- Show the time and date when Linux was first installed
ls -lact --full-time /etc |tail
- Show SSL Cert information
curl --insecure -v https://www.google.com 2>&1 | awk 'BEGIN { cert=0 } /^\* Server certificate:/ { cert=1 } /^\*/ { if (cert) print }'
- Find largest files by size
sudo find / -xdev -type f -size +100M -exec ls -hla {} \; | sort -nk 5
- Display SSL Cert expiry date.
openssl x509 -enddate -noout -in file.pem
- Extract and reverse engineer .bin or .img files. Or any other binary:
binwalk --dd='.*' file.bin
- Extract compressed file system:
7z x filename
- Unzip multiple files with spaces in name:
find . -name "*.zip" -exec sh -c 'unzip -n "{}" | head -n 7' \;
- Remove files past a certain day (Example 5 is five days):
find /path/to/files/* -mtime +5 -exec rm {} \;
- You can use the command below to probe the port 22:
sudo lsof -i :22
- Print history without line numbers or date:
fc -l -n 1 | sed 's/^\s*//'
- Set the "immutable" attribute to make a file non-writable:
chattr +i {filename}
- Set the "unimmutable" attribute to make a file writable:
chattr -i {filename}
- Check webserver a host is using:
wget -q -O- --save-headers domainname.com | grep '^[Ss]erver:' | awk '{print $2}'
- Look at errors in specific services in systemd:
journalctl -xe -u {service name}
- Convert vertical text to horizontal:
tr '\n' ' ' <file.txt
- Find and sort files by disk space
du -sch $(ls -A) 2> /dev/null | sort -rh