System information |
| Command | Description |
| # arch | show architecture of machine(1) [man] |
| # cal 2007 | show the timetable of 2007 [man] |
| # cat /proc/cpuinfo | show information CPU info [man] |
| # cat /proc/interrupts | show interrupts [man] |
| # cat /proc/meminfo | verify memory use [man] |
| # cat /proc/swaps | show file(s) swap [man] |
| # cat /proc/version | show version of the kernel [man] |
| # cat /proc/net/dev | show network adpters and statistics [man] |
| # cat /proc/mounts | show mounted file system(s) [man] |
| # clock -w | save date changes on BIOS [man] |
| # date | show system date [man] |
| # date 041217002007.00 | set date and time - MonthDayhoursMinutesYear.Seconds [man] |
| # dmidecode -q | show hardware system components - (SMBIOS / DMI) [man] |
| # hdparm -i /dev/hda | displays the characteristics of a hard-disk [man] |
| # hdparm -tT /dev/sda | perform test reading on a hard-disk [man] |
| # lspci -tv | display PCI devices [man] |
| # lsusb -tv | show USB devices [man] |
| # uname -m | show architecture of machine(2) [man] |
| # uname -r | show used kernel version [man] |
|
| « TOP « |
|
Shutdown, Restart and Logout of a system |
| Command | Description |
| # init 0 | shutdown system(2) [man] |
| # logout | leaving session [man] |
| # reboot | reboot(2) [man] |
| # shutdown -h now | shutdown system(1) [man] |
| # shutdown -h 16:30 & | planned shutdown of the system [man] |
| # shutdown -c | cancel a planned shutdown of the system [man] |
| # shutdown -r now | reboot(1) [man] |
| # telinit 0 | shutdown system(3) [man] |
|
| « TOP « |
|
Files and Directory |
| Command | Description |
| # cd /home | enter to directory '/ home' [man] |
| # cd .. | go back one level [man] |
| # cd ../.. | go back two levels [man] |
| # cd | go to home directory [man] |
| # cd ~user1 | go to home directory [man] |
| # cd - | go to previous directory [man] |
| # cp file1 file2 | copying a file [man] |
| # cp dir/* . | copy all files of a directory within the current work directory [man] |
| # cp -a /tmp/dir1 . | copy a directory within the current work directory [man] |
| # cp -a dir1 dir2 | copy a directory [man] |
| # cp file file1 | outputs the mime type of the file as text [man] |
| # iconv -l | lists known encodings [man] |
| # iconv -f fromEncoding -t toEncoding inputFile > outputFile | converting the coding of characters from one format to another [man] |
| # find . -maxdepth 1 -name *.jpg -print -exec convert | batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick) [man] |
| # ln -s file1 lnk1 | create a symbolic link to file or directory [man] |
| # ln file1 lnk1 | create a physical link to file or directory [man] |
| # ls | view files of directory [man] |
| # ls -F | view files of directory [man] |
| # ls -l | show details of files and directory [man] |
| # ls -a | show hidden files [man] |
| # ls *[0-9]* | show files and directory containing numbers [man] |
| # lstree | show files and directories in a tree starting from root(2) [man] |
| # mkdir dir1 | create a directory called 'dir1' [man] |
| # mkdir dir1 dir2 | create two directories simultaneously [man] |
| # mkdir -p /tmp/dir1/dir2 | create a directory tree [man] |
| # mv dir1 new_dir | rename / move a file or directory [man] |
| # pwd | show the path of work directory [man] |
| # rm -f file1 | delete file called 'file1' [man] |
| # rm -rf dir1 | remove a directory called 'dir1' and contents recursively [man] |
| # rm -rf dir1 dir2 | remove two directories and their contents recursively [man] |
| # rmdir dir1 | delete directory called 'dir1' [man] |
| # touch -t 0712250000 file1 | modify timestamp of a file or directory - (YYMMDDhhmm) [man] |
| # tree | show files and directories in a tree starting from root(1) [man] |
|
| « TOP « |
|
File search |
| Command | Description |
| # find / -name file1 | search file and directory into root filesystem from '/' [man] |
| # find / -user user1 | search files and directories belonging to 'user1' [man] |
| # find /home/user1 -name \*.bin | search files with '. bin' extension within directory '/ home/user1' [man] |
| # find /usr/bin -type f -atime +100 | search binary files are not used in the last 100 days [man] |
| # find /usr/bin -type f -mtime -10 | search files created or changed within 10 days [man] |
| # find / -name *.rpm -exec chmod 755 '{}' \; | search files with '.rpm' extension and modify permits [man] |
| # find / -xdev -name \*.rpm | search files with '.rpm' extension ignoring removable partitions as cdrom, pen-drive, etc.… [man] |
| # locate \*.ps | find files with the '.ps' extension - first run 'updatedb' command [man] |
| # whereis halt | show location of a binary file, source or man [man] |
| # which halt | show full path to a binary / executable [man] |
|
| « TOP « |
|
Mounting a Filesystem |
| Command | Description |
| # fuser -km /mnt/hda2 | force umount when the device is busy [man] |
| # mount /dev/hda2 /mnt/hda2 | mount disk called hda2 - verify existence of the directory '/ mnt/hda2' [man] |
| # mount /dev/fd0 /mnt/floppy | mount a floppy disk [man] |
| # mount /dev/cdrom /mnt/cdrom | mount a cdrom / dvdrom [man] |
| # mount /dev/hdc /mnt/cdrecorder | mount a cdrw / dvdrom [man] |
| # mount /dev/hdb /mnt/cdrecorder | mount a cdrw / dvdrom [man] |
| # mount -o loop file.iso /mnt/cdrom | mount a file or iso image [man] |
| # mount -t vfat /dev/hda5 /mnt/hda5 | mount a Windows FAT32 file system [man] |
| # mount /dev/sda1 /mnt/usbdisk | mount a usb pen-drive or flash-drive [man] |
| # mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share | mount a windows network share [man] |
| # umount /dev/hda2 | unmount disk called hda2 - exit from mount point '/ mnt/hda2' first [man] |
| # umount -n /mnt/hda2 | run umount without writing the file /etc/mtab - useful when the file is read-only or the hard disk is full [man] |
|
| « TOP « |
|
Disk Space |
| Command | Description |
| # df -h | show list of partitions mounted [man] |
| # dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n | show the used space by installed deb packages, sorting by size (debian, ubuntu and alike) [man] |
| # du -sh dir1 | estimate space used by directory 'dir1' [man] |
| # du -sk * | sort -rn | show size of the files and directories sorted by size [man] |
| # ls -lSr |more | show size of the files and directories ordered by size [man] |
| # rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n | show space used by rpm packages installed sorted by size (fedora, redhat and like) [man] |
|
| « TOP « |
|
Users and Groups |
| Command | Description |
| # chage -E 2005-12-31 user1 | set deadline for user password [man] |
| # groupadd [group] | create a new group [man] |
| # groupdel [group] | delete a group [man] |
| # groupmod -n moon sun | rename a group from moon to sun [man] |
| # grpck | check correct syntax and file format of '/etc/group' and groups existence [man] |
| # newgrp - [group] | log into a new group to change default group of newly created files [man] |
| # passwd | change password [man] |
| # passwd user1 | change a user password (only by root) [man] |
| # pwck | check correct syntax and file format of '/etc/passwd' and users existence [man] |
| # useradd -c "User Linux" -g admin -d /home/user1 -s /bin/bash user1 | create a new user "user1" belongs "admin" group [man] |
| # useradd user1 | create a new user [man] |
| # userdel -r user1 | delete a user ( '-r' eliminates home directory) [man] |
| # usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 | change user attributes [man] |
|
| « TOP « |
|
Permits on Files |
| Command | Description |
| # chgrp group1 file1 | change group of files [man] |
| # chmod ugo+rwx directory1 | set permissions reading (r), write (w) and (x) access to users owner (u) group (g) and others (o) [man] |
| # chmod go-rwx directory1 | remove permits reading (r), write (w) and (x) access to users group (g) and others (or [man] |
| # chmod u+s /bin/file1 | set SUID bit on a binary file - the user that running that file gets same privileges as owner [man] |
| # chmod u-s /bin/file1 | disable SUID bit on a binary file [man] |
| # chmod g+s /home/public | set SGID bit on a directory - similar to SUID but for directory [man] |
| # chmod g-s /home/public | disable SGID bit on a directory [man] |
| # chmod o+t /home/public | set STIKY bit on a directory - allows files deletion only to legitimate owners [man] |
| # chmod o-t /home/public | disable STIKY bit on a directory [man] |
| # chown user1 file1 | change owner of a file [man] |
| # chown -R user1 directory1 | change user owner of a directory and all the files and directories contained inside [man] |
| # chown user1:group1 file1 | change user and group ownership of a file [man] |
| # find / -perm -u+s | view all files on the system with SUID configured [man] |
| # ls -lh | show permits on files [man] |
| # ls /tmp | pr -T5 -W$COLUMNS | divide terminal into 5 columns [man] |
|
| « TOP « |
|
Special Attributes on files |
| Command | Description |
| # chattr +a file1 | allows write opening of a file only append mode [man] |
| # chattr +c file1 | allows that a file is compressed / decompressed automatically by the kernel [man] |
| # chattr +d file1 | makes sure that the program ignores Dump the files during backup [man] |
| # chattr +i file1 | makes it an immutable file, which can not be removed, altered, renamed or linked [man] |
| # chattr +s file1 | allows a file to be deleted safely [man] |
| # chattr +S file1 | makes sure that if a file is modified changes are written in synchronous mode as with sync [man] |
| # chattr +u file1 | allows you to recover the contents of a file even if it is canceled [man] |
| # lsattr | show specials attributes [man] |
|
| « TOP « |
|
Archives and compressed files |
| Command | Description |
| # bunzip2 file1.bz2 | decompress a file called 'file1.bz2' [man] |
| # bzip2 file1 | compress a file called 'file1' [man] |
| # gunzip file1.gz | decompress a file called 'file1.gz' [man] |
| # gzip file1 | compress a file called 'file1' [man] |
| # gzip -9 file1 | compress with maximum compression [man] |
| # rar a file1.rar test_file | create an archive rar called 'file1.rar' [man] |
| # rar a file1.rar file1 file2 dir1 | compress 'file1', 'file2' and 'dir1' simultaneously [man] |
| # rar x file1.rar | decompress rar archive [man] |
| # tar -cvf archive.tar file1 | create a uncompressed tarball [man] |
| # tar -cvf archive.tar file1 file2 dir1 | create an archive containing 'file1', 'file2' and 'dir1' [man] |
| # tar -tf archive.tar | show contents of an archive [man] |
| # tar -xvf archive.tar | extract a tarball [man] |
| # tar -xvf archive.tar -C /tmp | extract a tarball into / tmp [man] |
| # tar -cvfj archive.tar.bz2 dir1 | create a tarball compressed into bzip2 [man] |
| # tar -xvfj archive.tar.bz2 | decompress a compressed tar archive in bzip2 [man] |
| # tar -cvfz archive.tar.gz dir1 | create a tarball compressed into gzip [man] |
| # tar -xvfz archive.tar.gz | decompress a compressed tar archive in gzip [man] |
| # unrar x file1.rar | decompress rar archive [man] |
| # unzip file1.zip | decompress a zip archive [man] |
| # zip file1.zip file1 | create an archive compressed in zip [man] |
| # zip -r file1.zip file1 file2 dir1 | compress in zip several files and directories simultaneously [man] |
|
| « TOP « |
|
RPM Packages ( Fedora, Red Hat and like) |
| Command | Description |
| # rpm -ivh [package.rpm] | install a rpm package [man] |
| # rpm -ivh --nodeeps [package.rpm] | install a rpm package ignoring dependencies requests [man] |
| # rpm -U [package.rpm] | upgrade a rpm package without changing configuration files [man] |
| # rpm -F [package.rpm] | upgrade a rpm package only if it is already installed [man] |
| # rpm -e [package] | remove a rpm package [man] |
| # rpm -qa | show all rpm packages installed on the system [man] |
| # rpm -qa | grep httpd | show all rpm packages with the name "httpd" [man] |
| # rpm -qi [package] | obtain information on a specific package installed [man] |
| # rpm -qg "System Environment/Daemons" | show rpm packages of a group software [man] |
| # rpm -ql [package] | show list of files provided by a rpm package installed [man] |
| # rpm -qc [package] | show list of configuration files provided by a rpm package installed [man] |
| # rpm -q [package] --whatrequires | show list of dependencies required for a rpm packet [man] |
| # rpm -q [package] --whatprovides | show capability provided by a rpm package [man] |
| # rpm -q [package] --scripts | show scripts started during installation / removal [man] |
| # rpm -q [package] --changelog | show history of revisions of a rpm package [man] |
| # rpm -qf /etc/httpd/conf/httpd.conf | verify which rpm package belongs to a given file [man] |
| # rpm -qp [package.rpm] -l | show list of files provided by a rpm package not yet installed [man] |
| # rpm --import /media/cdrom/RPM-GPG-KEY | import public-key digital signature [man] |
| # rpm --checksig [package.rpm] | verify the integrity of a rpm package [man] |
| # rpm -qa gpg-pubkey | verify integrity of all rpm packages installed [man] |
| # rpm -V [package] | check file size, permissions, type, owner, group, MD5 checksum and last modification [man] |
| # rpm -Va | check all rpm packages installed on the system - use with caution [man] |
| # rpm -Vp [package.rpm] | verify a rpm package not yet installed [man] |
| # rpm -ivh /usr/src/redhat/RPMS/`arch`/[package.rpm] | install a package built from a rpm source [man] |
| # rpm2cpio [package.rpm] | cpio --extract --make-directories *bin* | extract executable file from a rpm package [man] |
| # rpmbuild --rebuild [package.src.rpm] | build a rpm package from a rpm source [man] |
|
| « TOP « |
|
YUM packages tool (Fedora, RedHat and alike) |
| Command | Description |
| # yum -y install [package] | download and install a rpm package [man] |
| # yum localinstall [package.rpm] | That will install an RPM, and try to resolve all the dependencies for you using your repositories. [man] |
| # yum -y update | update all rpm packages installed on the system [man] |
| # yum update [package] | upgrade a rpm package [man] |
| # yum remove [package] | remove a rpm package [man] |
| # yum list | list all packages installed on the system [man] |
| # yum search [package] | find a package on rpm repository [man] |
| # yum clean [package] | clean up rpm cache erasing downloaded packages [man] |
| # yum clean headers | remove all files headers that the system uses to resolve dependency [man] |
| # yum clean all | remove from the cache packages and headers files [man] |
|
| « TOP « |
|
DEB packages (Debian, Ubuntu and like) |
| Command | Description |
| # dpkg -i [package.deb] | install / upgrade a deb package [man] |
| # dpkg -r [package] | remove a deb package from the system [man] |
| # dpkg -l | show all deb packages installed on the system [man] |
| # dpkg -l | grep httpd | show all deb packages with the name "httpd" [man] |
| # dpkg -s [package] | obtain information on a specific package installed on system [man] |
| # dpkg -L [package] | show list of files provided by a package installed on system [man] |
| # dpkg --contents [package.deb] | show list of files provided by a package not yet installed [man] |
| # dpkg -S /bin/ping | verify which package belongs to a given file [man] |
|
| « TOP « |
|
APT packages tool (Debian, Ubuntu and alike) |
| Command | Description |
| # apt-cache search [package] | returns list of packages which corresponds string "searched-packages" [man] |
| # apt-cdrom install [package] | install / upgrade a deb package from cdrom [man] |
| # apt-get install [package] | install / upgrade a deb package [man] |
| # apt-get update | update the package list [man] |
| # apt-get upgrade | upgrade all of the installed packages [man] |
| # apt-get remove [package] | remove a deb package from system [man] |
| # apt-get check | verify correct resolution of dependencies [man] |
| # apt-get clean | clean up cache from packages downloaded [man] |
|
| « TOP « |
|
Pacman packages tool (Arch, Frugalware and alike) |
| Command | Description |
| # pacman -S name | Install package 'name' with dependencies [man] |
| # pacman -R name | Delete package 'name' and all files of it [man] |
|
| « TOP « |
|
View file content |
| Command | Description |
| # cat file1 | view the contents of a file starting from the first row [man] |
| # head -2 file1 | view first two lines of a file [man] |
| # less file1 | similar to 'more' command but which allows backward movement in the file as well as forward movement [man] |
| # more file1 | view content of a file along [man] |
| # tac file1 | view the contents of a file starting from the last line [man] |
| # tail -2 file1 | view last two lines of a file [man] |
| # tail -f /var/log/messages | view in real time what is added to a file [man] |
|
| « TOP « |
|
Text Manipulation |
| Command | Description |
| # cat example.txt | awk 'NR%2==1' | remove all even lines from example.txt [man] |
| # echo a b c | awk '{print $1}' | view the first column of a line [man] |
| # echo a b c | awk '{print $1,$3}' | view the first and third column of a line [man] |
| # cat -n file1 | number row of a file [man] |
| # comm -1 file1 file2 | compare contents of two files by deleting only unique lines from 'file1' [man] |
| # comm -2 file1 file2 | compare contents of two files by deleting only unique lines from 'file2' [man] |
| # comm -3 file1 file2 | compare contents of two files by deleting only the lines that appear on both files [man] |
| # diff file1 file2 | find differences between two files [man] |
| # grep Aug /var/log/messages | look up words "Aug" on file '/var/log/messages' [man] |
| # grep ^Aug /var/log/messages | look up words that begin with "Aug" on file '/var/log/messages' [man] |
| # grep [0-9] /var/log/messages | select from file '/var/log/messages' all lines that contain numbers [man] |
| # grep Aug -R /var/log/* | search string "Aug" at directory '/var/log' and below [man] |
| # paste file1 file2 | merging contents of two files for columns [man] |
| # paste -d '+' file1 file2 | merging contents of two files for columns with '+' delimiter on the center [man] |
| # sdiff file1 file2 | find differences between two files and merge interactively alike "diff" [man] |
| # sed 's/string1/string2/g' example.txt | replace "string1" with "string2" in example.txt [man] |
| # sed '/^$/d' example.txt | remove all blank lines from example.txt [man] |
| # sed '/ *#/d; /^$/d' example.txt | remove comments and blank lines from example.txt [man] |
| # sed -e '1d' exampe.txt | eliminates the first line from file example.txt [man] |
| # sed -n '/string1/p' | view only lines that contain the word "string1" [man] |
| # sed -e 's/ *$//' example.txt | remove empty characters at the end of each row [man] |
| # sed -e 's/string1//g' example.txt | remove only the word "string1" from text and leave intact all [man] |
| # sed -n '1,5p' example.txt | print from 1th to 5th row of example.txt [man] |
| # sed -n '5p;5q' example.txt | print row number 5 of example.txt [man] |
| # sed -e 's/00*/0/g' example.txt | replace more zeros with a single zero [man] |
| # sort file1 file2 | sort contents of two files [man] |
| # sort file1 file2 | uniq | sort contents of two files omitting lines repeated [man] |
| # sort file1 file2 | uniq -u | sort contents of two files by viewing only unique line [man] |
| # sort file1 file2 | uniq -d | sort contents of two files by viewing only duplicate line [man] |
| # echo 'word' | tr '[:lower:]' '[:upper:]' | convert from lower case in upper case [man] |
|
| « TOP « |
|
Character set and Format file conversion |
| Command | Description |
| # dos2unix filedos.txt fileunix.txt | convert a text file format from MSDOS to UNIX [man] |
| # recode ..HTML < page.txt > page.html | convert a text file to html [man] |
| # recode -l | more | show all available formats conversion [man] |
| # unix2dos fileunix.txt filedos.txt | convert a text file format from UNIX to MSDOS [man] |
|
| « TOP « |
|
Filesystem Analysis |
| Command | Description |
| # badblocks -v /dev/hda1 | check bad blocks on disk hda1 [man] |
| # dosfsck /dev/hda1 | repair / check integrity of dos filesystems on disk hda1 [man] |
| # e2fsck /dev/hda1 | repair / check integrity of ext2 filesystem on disk hda1 [man] |
| # e2fsck -j /dev/hda1 | repair / check integrity of ext3 filesystem on disk hda1 [man] |
| # fsck /dev/hda1 | repair / check integrity of linux filesystem on disk hda1 [man] |
| # fsck.ext2 /dev/hda1 | repair / check integrity of ext2 filesystem on disk hda1 [man] |
| # fsck.ext3 /dev/hda1 | repair / check integrity of ext3 filesystem on disk hda1 [man] |
| # fsck.vfat /dev/hda1 | repair / check integrity of fat filesystem on disk hda1 [man] |
| # fsck.msdos /dev/hda1 | repair / check integrity of dos filesystem on disk hda1 [man] |
|
| « TOP « |
|
Format a Filesystem |
| Command | Description |
| # fdformat -n /dev/fd0 | format a floppy disk [man] |
| # mke2fs /dev/hda1 | create a filesystem type linux ext2 on hda1 partition [man] |
| # mke2fs -j /dev/hda1 | create a filesystem type linux ext3 (journal) on hda1 partition [man] |
| # mkfs /dev/hda1 | create a filesystem type linux on hda1 partition [man] |
| # mkfs -t vfat 32 -F /dev/hda1 | create a FAT32 filesystem [man] |
| # mkswap /dev/hda3 | create a swap filesystem [man] |
|
| « TOP « |
|
Filesystem SWAP |
| Command | Description |
| # mkswap /dev/hda3 | create a swap filesystem [man] |
| # swapon /dev/hda3 | activating a new swap partition [man] |
| # swapon /dev/hda2 /dev/hdb3 | activate two swap partitions [man] |
|
| « TOP « |
|
Backup |
| Command | Description |
| # find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 | find all files with '.log' extention and make an bzip archive [man] |
| # find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents | find and copy all files with '.txt' extention from a directory to another [man] |
| # dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' | make a backup of a local hard disk on remote host via ssh [man] |
| # dd if=/dev/sda of=/tmp/file1 | backup content of the harddrive to a file [man] |
| # dd if=/dev/hda of=/dev/fd0 bs=512 count=1 | make a copy of MBR (Master Boot Record) to floppy [man] |
| # dd if=/dev/fd0 of=/dev/hda bs=512 count=1 | restore MBR from backup copy saved to floppy [man] |
| # dump -0aj -f /tmp/home0.bak /home | make a full backup of directory '/home' [man] |
| # dump -1aj -f /tmp/home0.bak /home | make a incremental backup of directory '/home' [man] |
| # restore -if /tmp/home0.bak | restoring a backup interactively [man] |
| # rsync -rogpav --delete /home /tmp | synchronization between directories [man] |
| # rsync -rogpav -e ssh --delete /home ip_address:/tmp | rsync via SSH tunnel [man] |
| # rsync -az -e ssh --delete ip_addr:/home/public /home/local | synchronize a local directory with a remote directory via ssh and compression [man] |
| # rsync -az -e ssh --delete /home/local ip_addr:/home/public | synchronize a remote directory with a local directory via ssh and compression [man] |
| # tar -Puf backup.tar /home/user | make a incremental backup of directory '/home/user' [man] |
| # ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' | copy content of a directory on remote directory via ssh [man] |
| # ( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' | copy a local directory on remote directory via ssh [man] |
| # tar cf - . | (cd /tmp/backup ; tar xf - ) | local copy preserving permits and links from a directory to another [man] |
|
| « TOP « |
|
CDROM |
| Command | Description |
| # cd-paranoia -B | rip audio tracks from a CD to wav files [man] |
| # cd-paranoia -- | rip first three audio tracks from a CD to wav files [man] |
| # cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force | clean a rewritable cdrom [man] |
| # cdrecord -v dev=/dev/cdrom cd.iso | burn an ISO image [man] |
| # gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - | burn a compressed ISO image [man] |
| # cdrecord --scanbus | scan bus to identify the channel scsi [man] |
| # dd if=/dev/hdc | md5sum | perform an md5sum on a device, like a CD [man] |
| # mkisofs /dev/cdrom > cd.iso | create an iso image of cdrom on disk [man] |
| # mkisofs /dev/cdrom | gzip > cd_iso.gz | create a compressed iso image of cdrom on disk [man] |
| # mkisofs -J -allow-leading-dots -R -V | create an iso image of a directory [man] |
| # mount -o loop cd.iso /mnt/iso | mount an ISO image [man] |
|
| « TOP « |
|
Networking (LAN / WiFi) |
| Command | Description |
| # dhclient eth0 | active interface 'eth0' in dhcp mode [man] |
| # ethtool eth0 | show network statistics of eth0 [man] |
| # host www.example.com | lookup hostname to resolve name to ip address and viceversa [man] |
| # hostname | show hostname of system [man] |
| # ifconfig eth0 | show configuration of an ethernet network card [man] |
| # ifconfig eth0 192.168.1.1 netmask 255.255.255.0 | configure IP Address [man] |
| # ifconfig eth0 promisc | configure 'eth0' in promiscuous mode to gather packets (sniffing) [man] |
| # ifdown eth0 | disable an interface 'eth0' [man] |
| # ifup eth0 | activate an interface 'eth0' [man] |
| # ip link show | show link status of all network interfaces [man] |
| # iwconfig eth1 | show wireless networks [man] |
| # iwlist scan | wifi scanning to display the wireless connections available [man] |
| # mii-tool eth0 | show link status of 'eth0' [man] |
| # netstat -tup | show all active network connections and their PID [man] |
| # netstat -tupl | show all network services listening on the system and their PID [man] |
| # netstat -rn | show routing table alike "route -n" [man] |
| # nslookup www.example.com | lookup hostname to resolve name to ip address and viceversa [man] |
| # route -n | show routing table [man] |
| # route add -net 0/0 gw IP_Gateway | configure default gateway [man] |
| # route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 | configure static route to reach network '192.168.0.0/16' [man] |
| # route del 0/0 gw IP_gateway | remove static route [man] |
| # echo "1" > /proc/sys/net/ipv4/ip_forward | activate ip routing [man] |
| # tcpdump tcp port 80 | show all HTTP traffic [man] |
| # whois www.example.com | lookup on Whois database [man] |
|
| « TOP « |
|
Microsoft Windows networks (samba) |
| Command | Description |
| # mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share | mount a windows network share [man] |
| # nbtscan ip_addr | netbios name resolution [man] |
| # nmblookup -A ip_addr | netbios name resolution [man] |
| # smbclient -L ip_addr/hostname | show remote shares of a windows host [man] |
| # smbget -Rr smb://ip_addr/share | like wget can download files from a host windows via smb [man] |
|
| « TOP « |
|
IPTABLES (firewall) |
| Command | Description |
| # iptables -t filter -L | show all chains of filtering table [man] |
| # iptables -t nat -L | show all chains of nat table [man] |
| # iptables -t filter -F | clear all rules from filtering table [man] |
| # iptables -t nat -F | clear all rules from table nat [man] |
| # iptables -t filter -X | delete any chains created by user [man] |
| # iptables -t filter -A INPUT -p tcp --dport telnet -j ACCEPT | allow telnet connections to input [man] |
| # iptables -t filter -A OUTPUT -p tcp --dport http -j DROP | block HTTP connections to output [man] |
| # iptables -t filter -A FORWARD -p tcp --dport pop3 -j ACCEPT | allow POP3 connections to forward chain [man] |
| # iptables -t filter -A INPUT -j LOG --log-prefix | Logging on input chain [man] |
| # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | configure a PAT (Port Address Traslation) on eth0 masking outbound packets [man] |
| # iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 22 -j DNAT --to-destination 10.0.0.2:22 | redirect packets addressed to a host to another host [man] |
|
| « TOP « |
|
Monitoring and debugging |
| Command | Description |
| # free -m | displays status of RAM in megabytes [man] |
| # kill -9 process_id | force closure of the process and finish it [man] |
| # kill -1 process_id | force a process to reload configuration [man] |
| # last reboot | show history reboot [man] |
| # lsmod | display kernel loaded [man] |
| # lsof -p process_id | display a list of files opened by processes [man] |
| # lsof /home/user1 | displays a list of open files in a given path system [man] |
| # ps -eafw | displays linux tasks [man] |
| # ps -e -o pid,args --forest | displays linux tasks in a hierarchical mode [man] |
| # pstree | Shows a tree system processes [man] |
| # smartctl -A /dev/hda | monitoring reliability of a hard-disk through SMART [man] |
| # smartctl -i /dev/hda | check if SMART is active on a hard-disk [man] |
| # strace -c ls >/dev/null | display system calls made and received by a process [man] |
| # strace -f -e open ls >/dev/null | display library calls [man] |
| # tail /var/log/dmesg | show events inherent to the process of booting kernel [man] |
| # tail /var/log/messages | show system events [man] |
| # top | display linux tasks using most cpu [man] |
| # watch -n1 'cat /proc/interrupts' | display interrupts in real-time [man] |
|
| « TOP « |
|
Other useful commands |
| Command | Description |
| # alias hh='history' | set an alias for a command - hh = history [man] |
| # apropos ...keyword | display a list of commands that pertain to keywords of a program , useful when you know what your program does, but you don't know the name of the command [man] |
| # chsh | change shell command [man] |
| # chsh --list-shells | nice command to know if you have to remote into another box [man] |
| # gpg -c file1 | encrypt a file with GNU Privacy Guard [man] |
| # gpg file1.gpg | decrypt a file with GNU Privacy Guard [man] |
| # ldd /usr/bin/ssh | show shared libraries required by ssh program [man] |
| # man ping | display the on-line manual pages for example on ping command - use '-k' option to find any related commands [man] |
| # mkbootdisk --device /dev/fd0 `uname -r` | create a boot floppy [man] |
| # wget -r www.example.com | download an entire web site [man] |
| # wget -c www.example.com/file.iso | download a file with the ability to stop the download and resume later [man] |
| # echo 'wget -c www.example.com/files.iso' | at 09:00 | start a download at any given time [man] |
| # whatis ...keyword | displays description of what a program does [man] |
| # who -a | show who is logged on, and print: time of last system boot, dead processes, system login processes, active processes spawned by init, current runlevel, last system clock change [man] |
|