For 2021 - online Python 3 training - see ((here)).
Our plans were to retire in summer 2020 and see the world, but Coronavirus has lead us into a lot of lockdown programming in Python 3 and PHP 7.
We can now offer tailored online training - small groups, real tutors - works really well for groups of 4 to 14 delegates. Anywhere in the world; course language English.
Please ask about private 'maintenance' training for Python 2, Tcl, Perl, PHP, Lua, etc.
su or su - ... what is the difference?
If you're wanting to do admin work on a Unix or Linux system, you'll probably need to be logged in as the administrator. However, you're likely to find that you're not allowed to log in as root directly, and that you have to use the su
command. Strictly speaking, "su" stands for "Substitute User" and you can give a user name as a parameter, but the default is to take you to root once you have given the root password.
One of the things that puzzles newcomers is the two flavors of su - "su
" and "su -
". What is the difference?
on its own, you retain the environment of the user that you're transferring from - so the current directory remains the same as does the path to executable files
With su -
, you are given a new root environment - you are taken to root's home directory, and you are given a new environment so that the path to executable files changes to that which has been set up for root
A Rule for newcomers
... ALWAYS use su
WITH the minus. You might find it irritating that it takes you to root's home directory from the directory you want to work in BUT it also (a) ensures that you have all the administrator's commands available in your path and (b) it provides you with a path which is likely to be safer than a user's path - and that's especially the case if a user has called you over and asked you to fix something for him.
Compare these two examples:
[trainee@easterton ~]$ su
[root@easterton trainee]# ls
Your disc has been scrubbed clean!
[trainee@easterton ~]$ su -
[root@easterton ~]# ls
anaconda-ks.cfg install.log install.log.syslog
In this example, our user has added the current directory - that's "." - onto the start of his path and has an executable file called ls
in that directory. Fortunately that was just for a demonstration - the new ls
command just echoed a rather worrisome message.
We cover this subject (and others) on our Introduction to Linux Admin
course which is also available as part of our Deploying LAMP training course
(written 2010-02-17, updated 2010-03-03)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articlesA161 - Web Application Deployment - Users and Groups 
Functions and commands with dangerous names - (2005-08-11) 
File permissions of Linux and Unix systems - (2005-08-31) 
Supporting users on Linux and Unix - (2006-04-13) 
Setting up a new user - Linux or Unix - (2008-03-26) 
User and Group settings for Apache httpd web server - (2008-04-22) 
Looking for files with certain characteristics (Linux / Unix) - (2008-05-22) 
The Longest Possible Day - (2008-08-26) 
sstrwxrwxrwx - Unix and Linux file permissions - (2008-11-23) 
Ruby, Perl, Linux, MySQL - some training notes - (2008-11-23) 
Ask the Tutor - Open Source forum - (2009-03-25) 
Choosing a railway station fairly in PHP - (2009-04-04) 
Always use su with minus. And where do programs come from? - (2009-05-27) 
Mistaken identity? - (2009-07-22) 
Root is root for a reason! - (2009-11-03) 
Linux Web Server - User Roles, User Accounts, and shared administration - (2013-03-16)
Some other Articles
Relating tables with joins in MySQLWhat does a web application look like under Tomcat?Object Oriented Programming in PHPHow is your tax pound spent?su or su - ... what is the difference?Finding what has changed - Linux / UnixCourses - Melksham and elsewhere - until the end of AprilLinux - useful tips including history and file name completionA PHP example that lets your users edit content without HTML knowledgeLondon to and from Melksham by public transport
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page
This is a page archived from The Horse's Mouth at
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).