General Linux Commands
Just a small collection of commands that I will add to as I find them…..
Getting around + File commands
cd – changes to your home directory
rm -rf – removes a directory without prompting. USE WITH CAUTION!!!!!!
cd /home/someguy – changes directory to /home/someguy
cd .. – moves up one directory
pwd – shows the current directory your in
mkdir somedir – creates a new directory call somedir
ls – lists the directory and files. ls -al shows hidden files and shows the permissions on the listed files too
cp one two – copies file one to file two
mv one two – renames one to two and obviosuly moves it if another directory is specified.
touch somefile – creates a file called somefile
vi somefile – opens somefile with the vi editor
cat somefile – outputs the contents of somefile into the shell
tail somefile – outputs the last 10 lines of somefile by default -n changes this where n is the number of lines required. tail -f somefile I have found very useful too, it shows the contents of a file as it grows. Handy for log files and seeing whats going on.
ln -s file linkedfile – creates a symbolic link from file to linkedfile. E.g when installing the flash plugin for FF.
wget http://somehost/somefile – Will download somefile to the local machine. http is only used as an example!
rm -r dir – Removes a directory while prompting
rm somefile – removes somefile while prompting
ssh user@somehost – connect to somehost as user
scp somefile user@somehost:/somedir/dir – will copy somefile from the local machine to somehost using user and to the location specified. Prompts for password if required.
ssh -p $ user@somehost – connect to somehost on port ‘$’ as user
ssh-copy-id user@somehost – adds the local systems key for user on somehost so you can login without password prompting in future. The command doesnt seem to allow for the use of a non default port(22) as far as I can see 🙁 It may be required to run ssh-keygen before this command.
ssh-keygen – generates a public/private key pair for ssh
chmod OCTAL ‘file or directory’ – Changes the permissions on the file or directory with the supplied OCTAL. The permissions are split into three categories owner, group and world. The three octal digits are ordered like that ie digit one is the owners permissions, digit two the group and digit three worlds. The permissions you want to set can be summarised as a single digit by adding the sum of the values shown below.
- READ – 4 (r)
- WRITE – 2 (w)
- EXECUTE – 1 (x)
chmod -R 666 somefolder/ – will change the permissions of somefolder, every sub directory and file in them to 666. chown -R would change the owner of a directory and sub directories/files
E.g chmod 777 somefile – Gives read, write and execute for everyone.
chmod 630 somefile – Gives read & write permissions to owner, write and execute to group and no permissions at all to world.
chown root:staff ‘file or directory’ – Changes the owner of the file or directory to root and its group to staff. The group part of this command isnt mandatory. Both chmod and chown can use the -R option to apply changes to subfolers if required
tar cf somefile.tar files – Create a tar called somefile.tar containing the files named
gzip somefile – Compress somefile with gzip and rename it to somefile.gz
tar czf somefile.tar.gz files – Create a tar called somefile.tar.gz containing the files named and use Gzip compression
tar cjf somefile.tar.bz2 files – Create a tar called somefile.tar.bz2 containing the files named and use Bzip2
tar xzf somefile.tar.gz – Extract a tar called somefile.tar.gz with Gzip
tar cjf somefile.tar.bz2 – Extract a tar called somefile.tar.bz2 with Bzip2
tar xf somefile.tar – Extract the somefile.tar
gzip -d somefile.gz – Extract files from somefile.gz
unzip somefile.zip – Extract files from somefile.zip
ping somehost – pings the host. Can Be domain name or IP address. using -b will allow pings to broadcasts. -c allows the ping count to be set the defualt is infinate. ping –help will show the full list of features.
whois somedomain – Gets the whois info and displays it to the shell.
dig somedomain – Gets the dns info and displays it to the shell. -x can be used to reverse lookups
netstat -a – lists all listening/active ports.
netstat -a | grep tftp – will output all the ports if any tftp is using. Usefull to see if a program is running etc
traceroute somehost – Performs a trace route…..
rpm -Uvh package.rpm – Installs the package.
yum install somepackage – Gets somepackage and installs is
yum clean all – Cleans yum up if you’re having problems has been useful after yum crashed.
ps -A – Shows all processes currently running
top – shows a task manager type output.
free – shows memory and swap usage
date – displays the date and time
cal – shows this months clander
uptime – shows uptime….
man somecommand – shows the manual for somecommand
df – shows disk usage
du – shows directory usage
finger someuser – Shows info about someuser
kill pid – kills the selected process -9 might be required sometimes
killall someprocess – kills all processes name someprocess
history – shows a list of your past commands
service someservice status – will make someservice into the staus selected eg. service httpd start would start apache. if you enter the command without selecting a status it will list the available ones for that service.
chkconfig someservice status – makes someservice start (or not) on boot e.g chkconfig postfix on would start postfix with every boot.