MikeCairns.net

UNIX/Linux

Solaris Cheat Sheet

echo Solaris Cheat Sheet
echo this Cheat Sheet contains quick copy paste stuff for Sun's Solaris OS
echo caveat ... some of the stuff has been copied from my Linux Cheat Sheet
echo and you know Linux is not Unix ; )
 
 
echo record the current session via script
script -a /export/home/yogeorgi/SCRIPTSLOGS/`date +%Y%m%d%H%M%S`_script.log
 
 
echo /usr/bin is for normal user executables, /usr/sbin is for superuser executables, /usr/sfw is for external software (like gnu one), but provided with bundle of OS, /usr/ccs is for development utilities, usually not need for daily tasks like make, lex, yacc, sccs
 
 
 
 
echo where I have been lately ?
history | grep cd
 
echo take the last 5 commands for faster execution to the temp execution script
 
tail -n 5 /root/.bash_history >> /var/run.sh
 
echo I saw the command cd /to/some/suching/dir/which/was/very/long/to/type
so I redid it and saved my fingers
!345
 
history >history.txt ---- echo the last 1000 commands into a history.txt file
 
echo send that file to myself
 
cat history.txt | mail -s "test file sending" -c mail1@com
yordan.georgiev(boom)gmail.com
 
echo remove all trealing spaces from the history file works for TextPad
 
^([ ]*)([0-9]*)(.*)$
 
\3 --- replace with the pure commands
 
history | gawk -F1 'BEGIN {FS=" "};{print $2 , $3}' | less
 
echo display the history withouth the line numbers ...
 
history | perl -i -pe 's/^([ ]*)([0-9]*)(.*)$/$3/gi'
 
 
 
 
 
vi fileName anotherFile
 
echo how to deal with command outputs
command | filtercommand > command_output.txt 2>errors_from_command.txt
 
echo Hint after the less filter pressing s will prompt you for saving the
output to a file ...
 
echo  find all files and folders containing the word linux and pipe it to
the less for easier viewing
 
find / -name "linux" | less
 
echo  find the files having os somewhere in their names and only those having linux
find . -name '*os*' | grep linux | less
 
echo find all xml type of files and display only the rows having wordToFindInRow
find . -name '*.xml' -exec cat {} \;| grep wordToFindInRow | less
 
echo The ultimate "find in files"
find / -name '*bash*' -exec grep -nH tty {} \;
 
echo  or even faster , be aware of "funny file names xargs -0
find / -name '*bak' | xargs grep -nH tty
 
echo find and replace recursively
find . -name '*.html' -print0 | xargs -0 perl -pi -e 's/foo/bar/g'
 
echo putty , bash shortcuts
Ctrl + A --- Go to the beginning of the line you are currently typing on
Ctrl + E --- Go to the end of the line you are currently typing on
 
echo how-to mount an usb stick
echo remember to change the path other wise you will get the device is busy errror
 
mkdir /mnt/usbflash
mount /dev/sdb1 -t vfat /mnt/usbflash
 
umount /mnt/usbflash
 
 
 
head -n 20 tooLongFile -- display the first 20 lines of the file
 
echo change the uggly prompt
 
vi /etc/bashrc
 
echo get a nice prompt
PS1="\u@\h \t \w\n\\$ "
 
echo how to restart a process initiated at startup
/etc/rc.d/init.d/sendmail start | stop | status | restart
 
echo see all the rules associated with the firewall
 
iptables -L -v
 
gunzip *file.zip
 
tar -xvf file.tar
 
To access the server download winscp.exe:
 
echo start winscp with a stored session from Win box
cmd /c start /max winscp oracle@192.168.255.12
 
echo To start remote session click on the putty screen , configure putty
settings to pull full screen with alt + Enter
 
echo right click on the title bar , settings , change the font , copy
paste from and to the terminal window text
 
echo how to ensure the sshd daemon is running
 
ps -ef | grep sshd
 
 
echo User and group management
 
useradd -p winscppass -r winscp -d /home/winscp --- to add a user with
specifig home directory name and pass
 
luserdel winscp --- delete the user
 
gpasswd: administer the /etc/group file
groupadd: Create a new group
groupmod: Modify a group
groupdel: Delete a new group
 
useradd: Create a new user or update default new user information
usermod: Modify a user account
userdel: Delete a user account and related files
 
 
echo how to kill process interactively
 
killall -v -i sshd
 
echo disk usage of users under the /home directory
 
du --max-depth=1 /home | sort -n -r
 
 
 
echo the most efficent way to search your history is to hit Ctrl R and
type the start of the command. It will autocomplete as soon as there’s
a match to a history entry, then you just hit enter. If you want to
complete the command (add more stuff to it ) use the right arrow to
escape from the quick search box ...
 
How to install Perl modules
 
gzip -dc yourmodule.tar.gz | tar -xof -
 
perl Makefile.PL
 
make test
 
make install
 
How to see better which file were opened , which directories were visited
 
type always the fullpath after the vi - use the $PWD env variable to
open files in the current directory , thus after opening the file
after:
 
vi /$PWD , press tab to complete the name of the current directory ,
type the name of the file
 
thus after
 
history | grep vi
 
 
 
the full list of opened files is viwed .
 
of course the same could be seen from the /home/username/.viinfo file /files
 
where to set the colors for the terminal (if you are lucky to have one
with colors; )
 
/etc/DIR_COLORS
 
open a file containing "sh" in its name bellow the "/usr/lib" directory
 
:r !find /usr/lib -name *sh*
 
go over the file and gf
 
uname -a --- which version of Linux I am using
 
rmp -qa --- show all installed packages
 
passwd [username] --- change the password for the specified user (own password)
 
 
 
How to copy paste text in the putty window from client to server -
click the right button of your pointing device
 
How to copy paste text from the putty window from server to client -
right-click the window title and select copy all to Clipboard.
 
To restart a service
 
service sshd restart
 
service --status-all --- show the status of all services
 
 
 
chown -R root:nortel Directory
 
echo perform action recursively on a set of files
 
find . -name '*.pl' -exec perl -wc {} \;
 
$ for file in *
> do cp $file $file.bak
> done
 
$ for file in `ls -R` ; do cp $file $file.bak; done
 
 
echo make Bash append rather than overwrite the history on disk:
shopt -s histappend
 
echo henever displaying the prompt, write the previous line to disk:
PROMPT_COMMAND='history -a'
 
 
 
gpm -- general "cut and paste" server
 
sh ScriptWithALotOfErrorMessages.sh | tee -a whereToSaveIt.log
 
echo run first the following command
 
$ script -a The_Log_File_To_Append_as_well_as_display_diagnostig_messages.log
 
echo than run the script
 
sh ScriptWithALotOfErrorMessages.sh
 
tr '\t' ',' < FileWithTabs > fileWithCommas
 
df -k --- disk usage
 
echo Allow access to the box from only one ip address
 
IPTables=/sbin/iptables
$ IPTables -A INPUT -s <Insert other Origin ip here> -p tcp
--source-port xxx -j ACCEPT
$ IPTables -A OUTPUT -d < Insert other Origin ip here > -p tcp
--destination-port xxx-j ACCEPT
 
echo has the root logged in over an unencrypted network ?
 
echo  last | grep “^root “ | egrep –v “reboot|console” | more
 
echo start command in the background
command1 &
 
echo start another one
command2 &
 
echo bring the command in the foreground
fg %1
 
echo create a backup file based on the timestamp on bash
 
cp fileName.ext fileName.ext.`date +%Y%m%d%H%M%S`.bak
 
 
echo which box I am workign currently
uname -a
echo who am I on this machine
id
echo the current time is( in yyyy.mm.dd HH:MM:SS format )
echo `date +%Y.%m.%d. --- %H.%M.%S`

Archives

All entries, chronologically...