System Commands
| shutdown | bring the system down | shutdown -h now -h = Halt or poweroff after shutdownshutdown -r now -r : Reboot after shutdownshutdown -r -F now -F : Force fsck after reboot. |
| halt | stop the system. | halt |
| reboot | reboot the system. | reboot |
| init | init 1 #change to single usermode | |
| uptime | Tell how long the system has been running. | uptime |
| runlevel | find the previous and current system runlevel. | runlevel |
| printenv | print all or part of environment | printenv |
| env | run a program in a modified environment | env |
| hostname | show or set the system’s host name | hostname – show the system’s host name hostname NEWHOSTNASME – set the system’s host name |
| uname | print system information | uname -a – print all information |
| locale | Get locale-specific information. | localelocale -a |grep -i ja <- -a : –all-locales |
Process Management
| ps | report a snapshot of the current processes. | ps aux |grep httpd ← Check httpd rocess ps aux | grep XXX | awk ‘{print $2}’ | xargs kill -9 ps auxwf ps auxwf |grep XXX |
| pgrep | look up processes based on name and other attributes | pgrep -f ‘bash’ pgrep -lf ‘bash’ ← output with process name pgrep -f ‘bash’ | xargs kill |
| pstree | display a tree of processes | pstree -a |
| pidof | find the process ID of a running program | pidof httpd /bin/kill $(/sbin/pidof qmail-popup) |
| kill | send a signal to a process | kill -9 PID ← (-9 or -KILL = force-quit) |
| pkill | signal processes based on name and other attributes | pkill -f ‘bash’ pkill -u user1 pkill java pkill -f jar |
| killall | kill processes by name | killall vi killall -i vi ← -i = Interactively killall -HUP kterm |
| killproc | ||
| lsof | list open files | lsof -i lsof -i -P ← no port names lsof -i :80,443 ← Which process is using Port 80,443 |
| Ctrl + C | Stop running process | |
| Ctrl + Z | Suspend running process | Move Running Process to Background 1. ctrl + z 2. jobs 3. bg 4. disown %JOBID |
| jobs | The first form lists the active jobs. | jobs -l ← List job |
| fg | Resume jobspec in the foreground | |
| bg | Resume each suspended job jobspec in the background | |
| nohup | run a command immune to hangups, with output to a non-tty | nohup command.sh & |
| disown | disown %jobid | |
| nice | run a program with modified scheduling priority | nice -n 19 test.sh nice -n 19 ionice -c 3 CMD nice -n 19 ionice -c 2 -n 7 COMMAND |
| renice | alter priority of running processes | renice 19 -p PID you can check the nice whith “top” or “ps alx”. |
| ionice | sets or gets process io scheduling class and priority | ionice -p PID ← check ionice -c 3 -p PID nice -n 19 ionice -c 2 -n 7 COMMAND |
Schedule
| crontab | maintain crontab files | crontab -l ← -l = list user’s crontab crontab -u USER -l crontab -e ← -e = edit user’s crontab crontab -u USER -e |
| at | queue jobs for later execution | echo “/sbin/shutdown -h now” |at 21:00 02/30/2009 at -t 200902302100 |
| atq | lists the user’s pending jobs | atq |
| atrm | delete jobs for later execution | atrm JOBID |
| watch | execute a program periodically, showing output fullscreen | watch ntpq -p ← By default, the program is run every 2 seconds watch -n 1 ntpq -p ← 1 seconds interval -d : highlight the differences between successive updates |
etc
| alias | Alias with no arguments or with the -p option prints the list of aliases When arguments are supplied, an alias is defined for each name whose value is given. | alias ← check all alias alias ls=’ls -la –color=auto’ alias grep=’grep –color’ |
| unalias | Remove each name from the list of defined aliases. If -a is supplied, all alias definitions are removed. | unalias COMMAND |
| ntpdate | set the date and time via NTP | ntpdate -b -u IP -b : Force the time (step mode) -u : If you are running ntpd, “-u” must be added. |
| chronyc | command-line interface for chronyd | chronyc sources chronyc sources -v |
| ntpq | standard NTP query program | ntpq -p -p : Print a list of the peers known to the server watch -n 1 ntpq -p |
| hwclock | query and set the hardware clock (RTC) | hwclock (-r) ← Read the Hardware Clock and print the time on standard output. hwclock -w ← Set the Hardware Clock to the current System Time. hwclock -s ← Set the System Time from the Hardware Clock. |
| man | an interface to the on-line reference manuals | man COMMAND |
| whatis | display manual page descriptions | whatis KEYWORD whatis cat whatis vi |
| history | GNU History Library | history |lesshistory 5 ← lists only the last 5 lines. HISTSIZE=1000 HISTTIMEFORMAT=“%Y/%m/%d %H:%M:%S ” |
| which | locate a command | which ls |
| time | time a simple command or give resource usage | time sleep 5 |
| strace | trace system calls and signals | strace -t php test.php strace -t -o test.txt php test.php -t : each line of the trace with the time of day. |
| ltrace | A library call tracer | lltrace -o test.txt wget http://example.com/ ltrace -p PID ltrace -p 3365 |
| script | make typescript of terminal session | script -afq $LOG |
Files and Directories Commands
File Commands
| ls | list directory contents | ls -ltrh ← -r : reverse order while sorting -h : with -l, print sizes in human readable format ls -ltrh |less |
| cp | copy files and directories | cp -p SRC DES cp -pi /etc/hosts{,.`date ‘+%Y%m%d’`} cp -pr SRC/ DES/ ← -r,-R : copy directories recursively cp -p SRC DES ← -f, –force |
| mv | move (rename) files | mv file1 file2 mv dir1 dir2 mv file1 file2 file3 DIR |
| rename | renames multiple files | rename .htm .html *.htm ← frm .htm to .html rename “” test *.txt ← add test rename test “” *.txt ← delete test |
| rm | remove files or directories | rm -rf TARGET ← -r,-R : remove directories |
| touch | change file timestamps | touch file1 touch -d “2017/10/20 13:00:00” file1 |
| ln | make links between files | ln -s SRC DES |
| unlink | unlink DES | |
| wc | print newline, word, and byte counts for each file | wc -l ← -l, –lines = print the line counts |
| tree | list contents of directories in a tree-like format | tree -Dpuga /etc |
| col | filter reverse line feeds from input | man ifconfig | col -bfx > test.txt |
Directory Commands
| pwd | print name of current/working directory | pwd |
| cd | Change the current directory | cd ← go to home directory cd ~/ ← go to home directory cd .. ← go to parent directory |
| pushd | Adds a directory to the top of the directory stack | pushd /var/log pushd `pwd` pushd +2 ← check pushd directory with dirs -v and go to No.2pushd +3 ← check pushd directory with dirs -v and go to No.3 |
| popd | Removes entries from the directory stack. | popd |
| dirs | displays the list of currently remembered directories. | dirs -v |
| mkdir | make directories | mkdir -p /tmp/test1/test2/ ← make parent directories as needed mkdir -m 700 /home/user01/.ssh |
| rmdir | remove empty directories If you want to delete directory, you must use “rm -r DIR”. | rmdir DIR |
Commands to Access File Contents
| more | file perusal filter for crt viewing | |
| less | opposite of more | crontab -l |less |
| view | Start in read-only mode. | |
| cat | concatenate files and print on the standard output | cat /dev/null > access.log |
| tail | output the last part of files | tail -n 50 aaa.txt ← output the last N lines |
| head | output the first part of files | head -n 100 aaa.txt ← -n , –lines head * |more ← View the beginning of the file in the directory. |
| diff | compare files line by line | diff –suppress-common-lines –side-by-side File1 File2 diff /etc/test{,.`date ‘+%Y%m%d’`} diff -r dir1 dir2 ← When comparing directories, recursively compare |
| sdiff | side-by-side merge of file differences | sdiff -s File1 File2 ← -s : Do not print common lines. sdiff -s -w 200 File1 File2 |
| colordiff | ||
| vimdiff | vimdiff file1 file2 vim -d file1 file2 |
Searching
| grep | print lines matching a pattern | grep WORD FILE |less grep -Ev “^#|^$” xxx.txt grep -Ev “^$|^#|^\s*#” file.txt grep “” ifcfg-eth* ← check filename and contents grep -r PATTERN –include=”*.txt” DIRECTORY ← -r : recursive |
| egrep | egrep is the same as grep -E | egrep “aaa|bbb” file |
| find , xargs | search for files in a directory hierarchy | find . -name “*txt*” find /dir -type f -name “*.log*” -mtime +7 -exec rm -rf {} \; ← “-mtime +7” is 7 days ago |
File Compression
| tar | The GNU version of the tar archiving utility tar warn the order of target and destination. | tar zcvf test.tar.gz Dir ← Create, Verbose, File tar ztvf test.tar.gz ← Test, Verbose, File tar zxvf test.tar.gz ← eXtract, Verbose, File tar jcvf test.tar.bz2 DIR ← Create, Verbose, File tar jxvf test.tar.bz2 tar zcvf /tmp/user01.tar.gz user01 tar zxvf user01.tar.gz -C /home |
| gzip gunzip | compress or expand files | gzip file1 gunzip file1.gz gzip access_log.2011-[0][5-8]*.txt ←wild card |
| compress uncompress | package and compress (archive) files | compress file1 uncompress file1.Z |
| bzip2 bunzip2 bz2cat | a block-sorting file compressor | bzip2 file1 bunzip2 file1.gz2 bz2cat file1.gz2 |
| zip unzip | package and compress (archive) files | zip file.zip file1 file2 zip -l file.zip ← -l = list for check unzip file.zip unzip -t file.zip ← -t = test |
| lha | lha a file.lzh file1 file2 lha t file.lzh lha x file.lzh | |
| gzcat | gzcat file.gz gzcat file.Z | |
| zcat | zcat file.Z | |
| zless | file perusal filter for crt viewing of compressed text | zless file.gz |
| zgrep | search possibly compressed files for a regular expression | zgrep PATTERN file.gz |
| zegrep | search possibly compressed files for a regular expression | zegrep “new” test.txt.gz |
| zdiff | compare compressed files | zdiff file1.gz file2.gz |
Character
| lv | a Powerful Multilingual File Viewer / Grep | |
| qkc | ||
| nkf | Network Kanji Filter | |
| iconv | Convert encoding of given files from one encoding to another | iconv -f utf-8 -t sjis test.utf8 > test.sjis |
User Administration
User
| useradd | create a new user or update default new user information | useradd -u UID -g GROUP -G GROUP1,GROUP2 -s /bin/bash -d HOME_DIR LOGIN |
| whoami | print effective userid | whoami |
| w | Show who is logged on and what they are doing. | w |
| who | show who is logged on | who who –all |
| userdel | delete a user account and related files | userdel -r USER ← (-r, –remove : Files in the user’s home directory will be removed) |
| vipw | edit the password, group, shadow-password or shadow-group file | vipw ← edit /etc/passwd vipw -s ← edit /etc/shadow |
| passwd | change user password | echo “password01” | passwd –stdin user01 passwd -S user1 ← check about the status of the password passwd -l user01 ← Lock the user passwd -u user01 ← Unlock |
| chpasswd | update passwords in batch mode | echo user01:password | chpasswd echo ‘USER:PASS’ > tmp.txt ; chpasswd < tmp.txt ; rm -f tmp.txt |
| mkpasswd | ||
| chage | change user password expiry information | chage -l USER ← check chage -M 90 USER ← the password expires day set 90days |
| usermod | modify a user account | usermod -g GROUP USER usermod -g GROUP -G SUBGROUP USER usermod -G SUBGROUP USER usermod -G SUBGROUP1,SUBGROUP2 USER usermod -G “” USER usermod -l USER_NAME_NEW USERNAME_OLD ← change username usermod -d HOME_DIR_NEW USER_NAME ← change home directory usermod -u UID USER ← change UID |
| gpasswd | gpasswd -a USER sudo ← add USER to GROUP gpasswd -r USER sudo ← remove USER from GROUP | |
| chsh | change login shell | chsh -l ← = cat /etc/shells chsh -s /bin/bash ← changing shell chsh -s /bin/bash user01 |
| getent | get entries from Name Service Switch libraries | getent passwd ← you can check LDAP Users getent group getent shadow |
| pam_tally2 | The login counter (tallying) module | pam_tally2 -u USER ← check pam_tally2 -u USER –reset ← reset |
Group
| groups | print the groups a user is in | groups groups USERNAME |
| groupadd | create a new group | groupadd -g GID GROUP groupadd -g 1100 dev |
| groupdel | delete a group | groupdel GROUP |
| groupmod | change USER’s GID | groupmod -g GID GROUP groupmod -g 1501 testgroup1 find / -gid OLDGID -print ← Check the OLD GID |
| chgrp | change the Group of the file | chgrp -R GROUP FILE |
| vigr | edit the password, group, shadow-password or shadow-group file |
File Permissions
| chmod | change file mode bits | chmod 777 TARGET chmod u+s PROGRAM ← add SSUID(Set User ID) |
| chown | change file owner and group | chown USER FILE chown USER:GROUP FILE chown -R USER:GROUP DIR ← -R : operate on files and directories recursively |
Etc
| finger | user information lookup program | finger finger user01 finger -l user01 |
| su | change user ID or become superuser | su – ← change root user sudo su – USER -s /bin/bash su – user1 -c “ssh user1@192.168.0.xx ls -lh /tmp” >> aaa.txt |
| sudo | execute a command as another user | sudo -u USER COMMAND sudo sh -c ‘echo “test” >> /tmp/test.txt’ |
| id | print real and effective user and group IDs | id USERNAME |
| last | show listing of last logged in users | last last -5 ← last 5 logged in users last USER |
| lastlog | reports the most recent login of all users or of a given user | lastlog |
| umask | set file mode creation mask | umask ← check umask 022 ← default 666-022=644(rw-r–r–) umask 002 ← 666-002=664(rw-rw-r–) umask 000 ← 666-000=666(rw-rw-rw-) |
Network
Network
| ip | show / manipulate routing, devices, policy routing and tunnels | ip a ← print ip address ip addr ← print ip address ip r ← Show IP Routing ip route ← Show IP Routing |
| ss | another utility to investigate sockets | ss -lt ← TCP Listening Port ss -ltp ← Process Name with Listening TCP ss -anu |
| ifconfig | configure a network interface | ifconfig ← check ip ifconfig -a ← -a : display all interfaces ifconfig eth0 up ifconfig eth0 down |
| ifdown | take a network interface down | ifdown eth0 ifdown eth0 && ifup eth0 |
| ifup | bring a network interface up | ifup eth0 ifdown eth0 && ifup eth0 |
| route | show / manipulate the IP routing table | route ← show the IP routing table route -n ← show the IP routing table route add -net 192.168.10.0 netmask 255.255.255.0 gw 10.50.0.1 route add -host 192.168.0.100 gw 192.168.1.100 route del -net 192.168.10.0 netmask 255.255.255.0 |
| traceroute | print the route packets trace to network host | traceroute -n 192.168.0.10 traceroute -T -p 80 192.168.0.10 ← (-T = TCP) traceroute -U -p 53 192.168.0.10 ← DNS (-U = UDP) |
| tracepath | traces path to a network host discovering MTU along this path | tracepath -n 192.168.0.10 ← UDP *tracepath don’t use TCP. |
| mtr | a network diagnostic tool | mtr -rwb xx.xx.xx.xx -c 10 -T -P 443 |
| ethtool | Display or change ethernet card settings | ethtool eth0 |
| mii-tool | view, manipulate media-independent interface status | mii-tool eth0 mii-tool -vv eth0 |
| arp | manipulate the system ARP cache | arp -a ← (-a : Shows the entries of the specified hosts.) arp -d 192.168.xx.xx ← delete arp |
| nmcli | line tool for controlling NetworkManager |
DNS
| dig | DNS lookup utility | dig -h ←helpdig [@global-server] [domain] [q-type]dig @8.8.8.8 google.com any dig @8.8.8.8 -x 74.125.235.101 dig google.com mx dig +trace google.com dig +trace -x 173.252.120.6 |
| nslookup | query Internet name servers interactively | nslookup -type=any google.com 8.8.8.8 nslookup google.com 8.8.8.8 nslookup -type=txt google.com |
| host | DNS lookup utility | host ← helphost [-t type] [server]host gmail.com host x.x.x.x host -t any google.com 8.8.8.8 host -t mx gmail.com 8.8.8.8 host -t soa gmail.com -t = specifies the query type |
| whois | client for the whois service | whois google.com |
| nscd | name service cache daemon | nscd –help nscd -i hosts ← chache clear nscd -g ← Print current configuration statistics |
Connection
| telnet | user interface to the TELNET protocol | telnet IP PORT |
| ssh popular | OpenSSH SSH client (remote login program) | ssh USER@IP ssh xx.xx.xx.xx “hostname; netstat -rn |grep 10.110.0” ssh xx.xx.xx.xx sudo /sbin/reboot |
| scp | secure copy (remote file copy program) the link file copyed as the real file. | scp test.tar.gz user1@192.168.0.10:/tmp scp -rp /home/user1 user1@192.168.0.10:/home scp -rp /tmp/test1/ user1@192.168.0.10:/tmp/test2/ |
| rsync popular | a fast, versatile, remote (and local) file-copying tool the link file copyed as the link file. rsync -avz –delete /home/user1/ /tmp/user1.bk/ ← rsync “/” is very important. rsync -e ssh -avz –delete /home/user1/ user2@192.168.0.2:/home/backup/server1/home/user1/ rsync -e ssh -avz –-bwlimit=1250 FILE user@192.168.0.2:/DIR/ # 1Mbps = 125KBps | |
| ssh-keygen | authentication key generation, management and conversion | ssh-keygen -t rsa ← generate rsa key pair ssh-keygen -t rsa -b 4096 -C “” -N “” -f id_rsa ssh-keygen -R HOST ← Removes all keys belonging to hostname from a known_hosts file. |
Check
| ping | send ICMP ECHO_REQUEST to network hosts | ping -c 5 -s 1500 192.168.0.1 ping -i 0.5 192.168.0.1 # -i : interval |
| nmap | Network exploration tool and security / port scanner | nmap google.com ← Check TCP nmap -Pn -sT -p 22 xx.xx.xx.xx ← check Firewall nmap -Pn -sT -p 443 x.x.x.x -max-rtt-timeout 0.1 nmap -PN -p 22 HOST nmap -p 443 www.google.com |
| nc netcat | Concatenate and redirect sockets | nc 192.168.0.10 80 22 ← check TCP nc -u 192.168.0.100 53 ← check UDP nc -vz 192.168.0.10 1-1023 ← portscan |
| nping | nping –tcp -p PORT HOST nping -c 1 –tcp -p PORT HOST | |
| httping | measure the latency and throughput of a webserver | |
| http_ping | ||
| hping , hping3 | ||
| fping | fping -g 192.168.0.0/24 |
HTTP
| curl popular | transfer a URL | curl -O http://example.com/images/test.jpg curl -I http://www.example.com/ ← Only Header curl -i http://www.example.com/ ← Header and Body curl –proxy http://proxy.example.com:8080 http://example.com/ |
| wget | The non-interactive network downloader. | wget http://google.com/ wget -e http_proxy=xx.xx.xx.xx:8080 http://example.com/ wget -e https_proxy=xx.xx.xx.xx:8080 https://example.com/ wget -S –spider http://example.com/ ← Only Header |
FTP
| ftp | ARPANET file transfer program | |
| lftp | Sophisticated file transfer program |
SNMP
| snmpwalk | retrieve a subtree of management values using SNMP GETNEXT requests | snmpwalk -v 2c -c public localhost sysname snmpwalk -v 2c -c public localhost .1.3.6.1.2.1 |
| snmpget | communicates with a network entity using SNMP GET requests | snmpget -v 2c 192.168.0.10 -c public .1.3.6.1.4.1.2021.11.50.0 |
| snmptranslate | translate MIB OID names between numeric and textual forms | snmptranslate -Tp | less |
| snmpnetstat | display networking status and configuration information from a network entity via SNMP | snmpnetstat -v 2c -c public -Can localhost snmpnetstat -v 2c -c public -Ci localhost snmpnetstat -v 2c -c public -Cs localhost |
Shell Script
Shell
| date | print or set the system date and time | date –date ’10day ago’ +”%Y%m%d” → 20061030 date +”%Y%m%d” → 20061030 date +”%H:%M” → 12:47 cp -p FILE FILE.`date +%Y%m%d` cp -p FILE FILE.`date -d ‘1day ago’ +%Y%m%d` |
| tr | translate or delete characters | |
| cut | remove sections from each line of files | echo abcdef |cut -c 3- echo abcdef |cut -c 2-4 |
| sort | sort lines of text files | sort -t: +1 -n sample.txt |
| uniq | report or omit repeated lines | cat access_log.1 | awk {‘print $4’} |awk -F: {‘print $1$2$3’} | sort |uniq -c |
| logger | a shell command interface to the syslog(3) system log module | logger “test test” |
| basename | strip directory and suffix from filenames | SHELLNAME=`/usr/bin/basename $0` SHELLNAME=`/usr/bin/basename $0 .sh` |
| dirname | strip last component from file name | DIR=`dirname ${0}` |
| paste | merge lines of files | paste -d, test1.txt test2.txt |
| awk | echo “1 2 3 4 5” | awk ‘{ print $1 “,” $3 }’ echo “1 2 : 3 4 : 5” | awk -F: ‘{ print $2 }’ | |
| sed | sed -e ‘s/xxx/XXX/g’ input.txt > output.txt sed -i “s/IPADDR=192.168.0.10/IPADDR=192.168.0.11/g” ifcfg-eth0 | |
| mail mailx | send and receive Internet mail echo test | mail -s “test” -S “smtp=smtp://xx.xx.xx.xx:25” test@example.com cat test.txt | mail -s “test” -S “smtp=smtp://xx.xx.xx.xx:25” test@example.com | |
| while | while : ; do uptime ; sleep 1 ; done while : ; do uptime >> /tmp/tmp.txt ; sleep 1 ; done while : ; do ps aux |grep httpd |wc -l ; sleep 1 ; done | |
| for | for i in 127.0.0.1 192.168.10.1; do ping -c 2 $i; done | |
| sleep | sleep 1 | |
| usleep | sleep some number of microseconds | usleep 1000000 ← 1,000,000 = 1sec usleep 100000 ← 100,000 = 0.1sec usleep 10000 ← 10,000 = 0.01sec |
Hardware
Hardware
| dmesg | print or control the kernel ring buffer | dmesg |
| lspci | list all PCI devices | lspci |
| nproc | print the number of processing units available | nproc grep -c processor /proc/cpuinfo getconf _NPROCESSORS_ONLN |
Module
| lsmod | show the status of modules in the Linux Kernel | lsmod |
| modinfo | show information about a Linux Kernel module | modinfo MODULENAME modinfo bnx2 |
| insmod | insert a module into the Linux Kernel | |
| rmmod | remove a module from the Linux Kernel | |
| modprobe | add and remove modules from the Linux Kernel |
Disk Utilities
HDD
| du | estimate file space usage | du -sh * du -h –max-depth=1 |
| fuser | identify processes using files or sockets | fuser -mv /mnt/test ← check fuser -mvk /mnt/test ←(-k : Kill processes) |
| chroot | run command or interactive shell with special root directory | |
| hdparm | get/set hard disk parameters | |
| dumpe2fs | dump ext2/ext3/ext4 filesystem information | |
| badblocks | search a device for bad blocks |
Partition
| df | report file system disk space usage | df -h ← (-h : print sizes in human readable format) df -BG ← Bigabyte Unite df -BM ← Megabyte Unite |
| sfdisk | partition table manipulator for Linux | sfdisk -l ←(-l : List the partitions of a device.) |
| fdisk | manipulate disk partition table | fdisk -l ← ( -l : List the partition tables) fdisk -l /dev/sdb fdisk -l -o +UUID |
| gdisk | Interactive GUID partition table (GPT) manipulator | |
| parted | a partition manipulation program | parted -l ← check partitions parted /dev/mapper/mpath0 |
| lsblk | list block devices | lsblk |
| e2label | Change the label on an ext2/ext3/ext4 filesystem |
Swap
| mkswap | set up a Linux swap area | |
| swapon | enable devices and files for paging and swapping | swapon -s ← Check swapon -a swapon /dev/xvda3 |
| swapoff | disable devices and files for paging and swapping | swapoff -a |
File Systems
| mkfs | build a Linux filesystem #you must umount the device before mkfs. | mkfs -t xfs /dev/sdb1 mkfs -t ext3 /dev/sdb1 mkfs -t ext4 /dev/sdb1 |
| mkfs.xfs mkfs.ext4 mkfs.ext3 | #you must umount the device before mkfs. | mkfs.ext4 /dev/sdb1 mkfs.ext3 /dev/sdb1 |
| mkfs2fs | create an ext2/ext3/ext4 filesyste #you must umount the device before mkfs. | mke2fs /dev/sdb1 ← ext2 mke2fs -j /dev/sdb1 ← ext3 |
| xfs_info | xfs_info /dev/sda1 | |
| tune2fs | adjust tunable filesystem parameters on ext2/ext3/ext4 filesystems | tune2fs -l /dev/mapper/mpath0 ← -l : List the contents of the filesystem superblock. tune2fs -l /dev/mapper/mpath0 |egrep “count|interval” tune2fs -i 0 -c 0 /dev/mapper/mpath0 ← -i : interval, -c : mount count |
| fsck | check and repair a Linux filesystem you must umount the device before fsck. for example single usermode and umount. ‘shutdown -r -F now’ is force fsck after reboot. | fsck -p /dev/sda1 ← -p : Automatically repair (“preen”) the file system. |
| fsck.ext4 | check and repair a Linux filesystem | |
| e2fsck | check a Linux ext2/ext3/ext4 file system | |
| resize2fs | ext2/ext3/ext4 file system resizer | resize2fs /dev/testvg/lvol0 |
Data
| dd | convert and copy a file | dd if=/dev/zero of=test_10M bs=1M count=10 dd if=/dev/zero of=test_100M bs=1M count=100 dd if=/dev/zero of=test_1G bs=1M count=1000 dd if=/dev/zero of=temp.bin bs=1 count=0 seek=1G ← sparse file |
| sync | flush file system buffers | |
| shred | overwrite a file to hide its contents, and optionally delete it |
mount
| mount | mount a filesystem | mount /mnt/test /dev/sda1 mount -o remount /dev/sda1 mount -t cifs //xx.xx.xx.xx/test /mnt/test -o username=guest,password= |
| umount | unmount file systems | umount /mnt/test umount -f /mnt/test (-f : Force unmount(in case of an unreachable NFS system)) umount -l /mnt/test (-l : Lazy unmount.Detach the filesystem from the filesystem hierarchy now ) |
LVM
References : LVM – How to Use LVM in Linux
LVM
| lvm | LVM2 tools |
PV (Physical Volume)
| pvs | report information about physical volumes | |
| pvdisplay | display attributes of a physical volume | pvdisplay pvdisplay -C |
| pvcreate | initialize a disk or partition for use by LVM | pvcreate /dev/mapper/mpath0p1 pvcreate /dev/mapper/mpath0p1 /dev/mapper/mpath1p1 |
| pvremove | remove a physical volume | pvremove /dev/mapper/mpath0p1 |
| pvscan | scan all disks for physical volumes |
VG (Volume Group)
| vgs | report information about volume groups | vgs -o +vg_tags ← check tag |
| vgdisplay | display attributes of volume groups | vgdisplay vgdisplay -C |
| vgcreate | create a volume group | vgcreate vgdata1 /dev/hdb1 /dev/hdc1 |
| vgremove | remove a volume group | vgremove vg01 |
| vgscan | scan all disks for volume groups and rebuild caches | |
| vgchange | change attributes of a volume group | vgchange -a y ← activate vgchange -a n ← deactivate vgchange -a y vg01 vgchange -a n vg01 Check : lvdisplay VGDATA |grep Status vgchange –addtag $(uname -n) VG_TEST vgchange –deltag $(uname -n) VG_TEST |
| vgextend | add physical volumes to a volume group | vgextend vg01 /dev/hdd1 |
| vgrename | rename a volume group | vgrename oldvg newvg |
LV (Logical Volume)
| lvs | report information about logical volumes | |
| lvdisplay | display attributes of a logical volume | lvdisplay lvdisplay -C lvdisplay /dev/mapper/VGDATA-lv00 |
| lvcreate | create a logical volume in an existing volume group | lvcreate -l PENUMBER vgdata lvcreate -L 150G vgdata |
| lvremove | remove a logical volume | lvremove /dev/testvg/lvol0 |
| lvscan | scan (all disks) for logical volumes | |
| lvresize | resize a logical volume | lvresize -L +5G /dev/vg0/home |
| lvextend | extend the size of a logical volume | lvextend -L +5G /dev/vg0/home lvextend -l +100%FREE /dev/mapper/Array00-lv00 |
| lvreduce | reduce the size of a logical volume | |
| lvrename | rename a logical volume | lvrename /dev/vgdata/lvol0 /dev/vgdata/lvol1 |
Performance
Performance
| top | display Linux processes | top -b -n 4 -d 5 ← interval 5sec , 4 times |
| sar | Collect, report, or save system activity information. | sar -f /var/log/sa/sa16 sar (cpu,io) sar -r (memory) sar -q (Loadaverage) |
| vmstat LIKE | Report virtual memory statistics | vmstat 1 ← interval 1sec (cpu, io, memory, swap) vmstat 1 5 ← interval 1sec, 5 times (cpu, io, memory, swap) |
| iostat | Report Central Processing Unit (CPU) statistics and input/output statistics for devices and partitions. | iostat -xtk 1 (cpu, io) ← interval 1sec |
| mpstat | Report processors related statistics. | mpstat -P ALL |
| uptime | Tell how long the system has been running. | while : ; do uptime ; sleep 1 ; done while : ; do uptime » /tmp/tmp.txt ; sleep 1 ; done |
| w | Show who is logged on and what they are doing. | |
| free | Display amount of free and used memory in the system | free -m ← show output in MB |
| tcpdump | dump traffic on a network | tcpdump -n port 80 -i any tcpdump -n not arp and not port 123 and not port 22 tcpdump host 192.168.0.10 -n -w /tmp/20110615.pcap tcpdump -r /tmp/20110615.pcap ← -r : Read packets from file |
| netstat | Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships | netstat -anp (-a : Show both listening and non-listening sockets.) netstat -rn (-r : Display the kernel routing tables.) |
| iotop | simple top-like I/O monitor | iotop -b -n 4 -d 15 ← interval 15sec , 4 times |
| dstat LIKE | versatile tool for generating system resource statistics | dstat -taf |
Load Test
| fio |
Software
Software
| make | GNU make utility to maintain groups of programs | |
| patch | apply a diff file to an original | patch -p1 -N < ../xxx.patch |
| ldd | print shared library dependencies | ldd BINARY |
| yum popular | an interactive, rpm based, package manager | yum repolist ← check enabled repository yum search STRINGS yum info PACKAGE ← check rpm version etc yum install PACKAGE yum –disablerepo=* –enablerepo=test-repo repolist |
| rpm | RPM Package Manager | rpm -ivh PACKAGE.rpm ← install rpm -e PACAGE.rpm ← uninstall rpm -qa –last |
| apt | ||
| dpkg | ||
| alien | alien -d package-x.x.x.rpm alien -r package-x.x.x.deb | |
| update-alternatives | update-alternatives –config mta | |
| rhn_register | rhn_register –nox –proxy=http://192.168.0.10:9999 |
etc
X Window System
| startx | initialize an X session | startx |
| xhost | server access control program for X | xhost + ← Access is granted to everyone |
| xauth | X authority file utility |
TUI
| ntsysv | simple interface for configuring runlevels | |
| authconfig-tui | an interface for configuring system authentication resources | |
| system-config-securitylevel | ||
| system-config-network-tui |
etc
| md5sum | compute and check MD5 message digest | find . -type f -exec md5sum {} \; > /tmp/md5.out ← check all files |
| gpg | OpenPGP encryption and signing tool | |
| screen | ||
| kermit |