| Руслан Валиев ( @ 2006-10-15 22:37:00 |
| Entry tags: | commands, solaris |
Вдогонку к предыдущему посту: немного отсортированной рутины
Debugging
cat -v -t -e [file]
Show non-printing characters
dumpadm -d swap
Configure swap device as dump device
ld -l <libname without 'lib'>
Check if you have a particular library
truss -f -p <pid of a shell>
Using multiple windows, this can be used to trace setuid/setgid programs
truss executable
Trace doing of given command (useful debugging)
Disk Commands
/bin/mount -F hsfs -o ro /dev/sr0 /cdrom
Mount an ISO 9660 CDROM
/usr/bin/iostat -E
Command to display drives statistics
du -ad /var | sort -nr
Report the the disk used in /var in reverse order
du -k .
Report disk usage in Kilobytes
du -sk * | sort -nr | head
Shows the top ten largest files/directories
du -sk *|sort -k1,1n
Reports total disk space used in Kilobytes in present directory
du -sk .
Report total disk usage in Kilobytes
fdformat -d -U
Format diskette
newfs -Nv /dev/rdsk/c0t0d0s1
To view the superfblocks available
prtvtoc /dev/rdsk/c0t0d0s2
Disk geometry and partitioning info
prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c0t1d0s2
Copy partition table from one disk to another
quot -af
How much space is used by users in kilobytes
volrmmount -i floppy
Mount a floppy or other media easily by its nickname.
Driver Parameters
ndd /dev/ip ip_forwarding
Show the ip_forwarding variable in the kernel
ndd /dev/ip ip_forwarding 1
Set the ip_forwarding variable in the kernel
ndd /dev/ip \?
Show all IP variables set in the kernel
File Manipulation
dos2unix | -ascii
Converts DOS file formats to Unix
fold -w 180
To break lines to have maximum char
split [-linecount] [file]
Split files into pieces
[vi] : %s/existing/new/g
Search and Replace text in vi
[vi] :set list
Show non-printing characters in vi
[vi] :set nu
Set line numbers in vi
[vi] :set ts=[num]
Set tab stops in vi
File System
/sbin/uadmin x x
Syncs File Systems and Reboots systems fast
awk ' END {print NR}' file_name
Display the Number of lines in a file
cat /dev/null > filename
Zero's out the file without breaking pipe
dd if=/dev/rdsk/... of=/dev/rdsk/... bs=4096
Make a mirror image of your boot disk
df -k | grep dg| awk '{print $6}' |xargs -n 1 umount
Unmount all file systems in disk group dg
fsck -F ufs -o b=97472 /dev/rdsk/c0t0d0s0
Check and repair a UFS filesystem on c0t0d0s0, using an alternate superblock
fsck -F ufs -y /dev/rdsk/c0t0d0s0
Check a UFS filesystem on c0t0d0s0, repair any problems without prompting.
fsck -F ufs /dev/rdsk/c0t0d0s0
Check a UFS filesystem on c0t0d0s0
gzip -d -c tarball.tgz | (cd /[dir];tar xf - ) &
Unpacking tarballs to diff location
gzip -dc file1.tar.gz | tar xf -
Unpack .tar.gz files in place
ln [-fhns] <source file> <destination file>
Creating hard links and soft links
ls -al | awk '$3 == "oracle" || $3 == "root" {print $9}'
List all file names by testing owner
ls -l | sort +4n
List files by size
ls -la | awk '{ print $5," ",$9 }' | sort -rn
File sizes of current directory
ls -lR | awk '{total +=$5};END {print "Total size: " total/1024/1024 "MB" }'
Recursive directory size calculations in MB
mkisofs -l -L -r -o [image-name].iso [directory]
Create an ISO image of a directory
mount -F ufs -o rw,remount /
Used to remount root to make it writeable
mount -o remount,logging /spare
Re-mount the ro file system rw and turn on ufs logging
mount -f pcfs /dev/dsk/c0d0p1 /export/dos
mount DOS fdisk partition from Solaris
mv [filename]{,.new_suffix}
Renaming file
pax -rw . /newdir
Efficient alternative for copying directories
prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c0t1d0s2
Cloning Partitiontables
tar cf - . | (cd /newdir ; tar xf -)
Recursively copy files and their permissions
tar cvf filename.tar
Create a tape (tar) archive
tar xvf filename.tar
Extract a tape (tar) archive
X=$(wc -l < filename); echo $X
Count number of lines in a file into a variable (ksh)
zcat < patch_file.tar.Z | tar xvf -
Extract the patch_file that is a compressed tar file
zcat [cpio file] | cpio -itmv
Show the contents of a compressed cpio
File Transfer
find . -depth | cpio -pdmv /path/tobe/copied/to
Fast alternative to cp -pr
find . -follow | cpio -pdumL /path/tobe/copied/to
Copy with symbolic links to be followed
get filename.suffix | "tar xf -"
Undocumented Feature of FTP
ssh cd /some/directory \&\& tar cf - | ssh cd /some/direstory \&\& tar xvf -
Move any file(s) without actually touching them
put " | tar cf - ." filename.tar
Undocumented Feature of FTP
sendport
FTP command for transferring large numbers of files within the same control session
General
/bin/printf '%d\n' '0x
Converts hexadecimal number to decimal.
/usr/bin/catman -w
Create windex databases for man page directories
FQ_FILENAME=<fully_qualified_file_name>;
Extract directory from fully-qualified file name.
mailx -H -u <username>
List out mail headers for specified user
ps -ef | grep -i $@
Access common commands quicker
set filec
Set file-completion for csh
uuencode [filename] [filename] | mailx -s "Subject" [user to mail]
Send files as attachments
xauth -f /home/${LOGNAME} extract - ${DISPLAY} | xauth merge -
Allow root to xdisplay after su
Hardware
cfgadm
Verify reconfigurable hardware resources
m64config -depth 8|24
Sets the screen depth of your M64 graphics accelerator
m64config -prconf
Print M64 hardware configuration
m64config -res 'video_mode'
Change the resolution of your M64 graphics accelerator
prtpicl -v | grep sync-speed
Discover SCSI sync speed
Kernel
/usr/sbin/modinfo
Display kernel module information
/usr/sbin/modload <module>
Load a kernel module
/usr/sbin/modunload -i <module id>
Unload a kernel module
/usr/sbin/sysdef
Show system kernal tunable details
nm -x /dev/ksyms | grep OBJ | more
Tuneable kernel parameters
Memory
pagesize -a
Available page sizes for Solaris 9
prtconf | grep Mem
Display Memory Size of the local machine.
Network Information
arp -a
Ethernet address arp table
arp -d myhost
Delete an ethernet address arp table entry
lsof -iTCP@10.20.2.9
Display open files for internet address
ndd /dev/arp arp_cache_report
Prints ARP table in cache with IP and MAC address
netstat -a | grep EST | wc -l
Displays number active established connections to the localhost
netstat -a | more
Show the state of all the sockets on a machine
netstat -i
Show the state of the interfaces used for TCP/IP traffice
netstat -k hme0
Undocumented netstat command
netstat -np
Similar to arp -a without name resolution
netstat -r
Show the state of the network routing table for TCP/IP traffic
netstat -rn
Displays routing information but bypasses hostname lookup.
snoop -S -ta [machine]
Snoop for network packets and get size and time stamp entries.
traceroute <ipaddress>
Follow the route to the ipaddress
Network Tuning
/sbin/ifconfig hme0:1 inet 10.210.xx.xxx netmask 255.255.0.0 broadcast 10.210.xxx.xxx
Virtual Interfaces
/sbin/ifconfig hme0:1 up
Bring virtual interface up
/usr/sbin/ndd -set /dev/hme adv_100fdx_cap 1
Nailling to 100Mbps
ifconfig eth0 10.1.1.1 netmask 255.255.255.255
Add an Interface
ifconfig eth0 mtu 1500
Change MTU of interface
ndd -set /dev/ip ip_addrs_per_if 1-8192
To set more than 256 virtual ip addresses.
ndd -set /dev/tcp tcp_recv_hiwat 65535
Increase TCP-receivebuffers on Sol2.5.1 systems with 100BaseTx
ndd -set /dev/tcp tcp_xmit_hiwat 65535
Increase TCP-transmitbuffers on Sol2.5.1 systems with 100BaseTx
Processes
/usr/proc/bin/ptree <pid>
Print the parent/child process 'tree' of a process
/usr/proc/bin/pwdx <pid>
Print the working directory of a process
/usr/ucb/ps -aux | more
Displays CPU % usage for each process in ascending order
/usr/ucb/ps -auxww | grep <process name>
Gives the full listing of the process (long listing)
fuser -uc /var
Processes that are running from /var
ipcs
Report inter-process communication facilities status
kill -HUP `ps -ef | grep [p]roccess | awk '{print $2}'`
HUP any related process in one step
lsof -i TCP:25
Mapping port with process
pfiles <pid>
Shows processes' current open files
pkill -n <name>
Kill a process by name
prstat -a
An alternative for top command
ps -edf -o pcpu,pid,user,args
Nicely formatted 'ps'
ps -ef | grep -i
Creates list of running PID by
ps -ef | grep -i
Creates list of running PID by
ps -ef | grep
Find and kill all instances of a given process
ps -ef | more
Show all processes running
ps -ef | grep -v "0:00"|more
Gives you a list of any process with CPU time more than 0:00
ps -eo pid,args
List processes in simplified format
ps -fu oracle | grep pmon
See which instances of Oracle are running
top -b 1
Returns the process utilizing the most cpu and quits
Resource Management
/usr/bin/ldd [filename]
List the dynamic dependencies of executable files
/usr/proc/bin/pmap pid
Report address space map a process occupies
All Solaris Commands
Comparision of Shell commands (PDF)
Cool Commands
coolcommands.com
DOS to UNIX command translation
Man Pages: System Administration Commands (Solaris 10)
Man Pages: System Administration Commands (Solaris 9)
Man Pages: User Commands (Solaris 10)
Man Pages: User Commands (Solaris 9)
Tips on good shell programming practices
Trapping Special Characters in the Korn Shell
Universal Command Guide for Operating Systems