Re: [opensuse] odd /usr/bin thing
Bill Anderson wrote:
Aaron Kulkis wrote:
Bill Anderson wrote:
Bob S wrote:
Hello SuSE users,
While searching for files in /usr/bin I noticed something that seems odd to me. There is a folder in there named X11. It is a link to the same folder. If you open it, it shows the exact same thing as /usr/bin. You can continue opening the X11 directory until you have a /usr/bin//X11/X11/X11/X11 file open on ad-infitum. They all show the exact same files and megabytes. What is this? Can somebody explain the purpose?
Bob S
Not sure of the reason, but it only impacts on the logical path pwd -L. The physical path (pwd -P) remains as /usr/bin. The impact is to have all X11 binaries appear in /usr/bin instead of /usr/bin/X11. Like many symbolic links, it makes the applications happy even when the underlying structure changes. For those of us who use UNIX, we are used to /bin being a symbolic link to /usr/bin,
since when? there are several programs which have always been in /bin because they are needed in runlevel 0 and run level S, neither of which have /usr mounted, but which are not administrative only, (and thus do NOT reside in /sbin or /usr/sbin). Since the early 1990s, /bin has been a symbolic link to /usr/bin. If you go to runlevel S, you will find that there are a minimal number of utilities in /usr/bin. These are hidden if you have a separate mount for /usr. The intent was for /usr to be a static directory.
I think you're on drugs: akulkis@kulkix:/> ls -al / total 112 drwxr-xr-x 23 root root 4096 2007-12-18 15:26 . drwxr-xr-x 23 root root 4096 2007-12-18 15:26 .. drwx------ 2 root root 4096 2007-01-09 05:54 .gnupg lrwxrwxrwx 1 root root 6 2007-04-23 12:24 K00ntp -> ../ntp lrwxrwxrwx 1 root root 6 2007-04-23 12:24 S99ntp -> ../ntp drwxr-xr-x 2 root root 4096 2006-12-27 11:39 bin drwxr-xr-x 3 root root 4096 2006-12-27 11:39 boot drwxr-xr-x 11 root root 7880 2008-01-07 01:32 dev drwxr-xr-x 120 root root 8192 2008-01-07 05:34 etc drwxr-xr-x 31 root root 4096 2007-12-15 20:17 home drwxr-xr-x 11 root root 4096 2006-12-27 11:39 lib lrwxrwxrwx 1 root root 11 2006-12-26 10:58 local -> /home/local drwx------ 2 root root 16384 2006-12-26 08:38 lost+found drwxr-xr-x 6 root root 4096 2008-01-07 05:31 media drwxr-xr-x 3 root root 4096 2007-07-15 12:36 mnt drwxr-xr-x 17 root root 4096 2008-01-05 00:12 opt dr-xr-xr-x 290 root root 0 2008-01-07 01:22 proc drwx------ 25 root root 4096 2008-01-07 01:32 root drwxr-xr-x 3 root root 8192 2006-12-27 11:43 sbin drwxr-xr-x 5 root root 4096 2006-12-26 09:31 srv drwxr-xr-x 2 root root 4096 2006-04-22 22:25 subdomain drwxr-xr-x 11 root root 0 2008-01-07 01:22 sys drwxrwxrwt 133 root root 16384 2008-01-07 15:00 tmp drwxr-xr-x 12 root root 151 2006-12-26 09:02 usr drwxr-xr-x 15 root root 4096 2006-12-27 11:35 var drwxr-xr-x 3 root root 4096 2006-12-26 08:38 windows akulkis@kulkix:/>
examples being: cp, chown, dd, grep, awk, cat, chmod, chgrp, date, kill, ln, ls, mount, umount, rm, rmdir, sed, stty, tar, shells (sh/ksh/csh/tcsh/bash), false, true, uname, ed, ex, vi
I think you need to get on a Unix box, and check out the actual structure. Linux has never followed this path, and holds to the old Unix structure. I have been working with Unix since 1978, and have been through a number of file structure changes.
Which Unix vendors made this change?
The point is that symbolic links are used to for backwards compatibility.
Yes, I realize that.
As a side light, a number of the utilities that you mention are now shell built-ins, which take precedence over the equivalent command. For example, pwd is a built-in that has the -L and -P options for ksh and bash.
Primarily because forking off a shell, then execing a new executable, just to print the name of the working directory is a waste, and belongs in the shell. /bin/pwd was basically a patch for a deficiency in the early versions of sh and ksh. Csh and tcsh have always had $cwd (current working directory) > The /usr/bin command does not have these options, and exists for
Bourne shell compatibility. You might also note that under Linux it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash.
Now I know you're on drugs: akulkis@kulkix:/> which sh /bin/sh akulkis@kulkix:/> which ksh /usr/bin/ksh akulkis@kulkix:/> which bash /bin/bash akulkis@kulkix:/> ls -al `which sh` lrwxrwxrwx 1 root root 4 2006-12-26 08:43 /bin/sh -> bash akulkis@kulkix:/> ls -al `which ksh` lrwxrwxrwx 1 root root 12 2006-12-27 11:39 /usr/bin/ksh -> /lib/ast/ksh akulkis@kulkix:/> ls -al `which bash` -rwxr-xr-x 1 root root 501804 2006-04-22 21:46 /bin/bash akulkis@kulkix:/>
Most people are not aware that the default behavior for ksh and bash is to show the logical path, so that cd .. behaves as expected. It is the shell that tracks the logical path. The system calls still refer to the physical path, as does /bin/pwd. For those interested in understanding this behavior try cd -P /usr/tmp and then do the pwd command. The shell built-in for cd also support the -P and -L options.
Bill Anderson WW7BA
-- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 The Monday 2008-01-07 at 15:09 -0500, Aaron Kulkis wrote:
Bill Anderson wrote:
Bourne shell compatibility. You might also note that under Linux it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash.
No, not really: cer@nimrodel:~> l /bin/sh /usr/bin/sh lrwxrwxrwx 1 root root 4 2007-11-03 02:13 /bin/sh -> bash* lrwxrwxrwx 1 root root 9 2007-11-03 02:13 /usr/bin/sh -> /bin/bash* cer@nimrodel:~> l /bin/ksh /usr/bin/ksh lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /bin/ksh -> /lib/ast/bin/ksh* lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /usr/bin/ksh -> /lib/ast/bin/ksh* cer@nimrodel:~> l /bin/bash /usr/bin/bash ls: cannot access /usr/bin/bash: No such file or directory - -rwxr-xr-x 1 root root 604040 2007-09-22 00:16 /bin/bash* - -- Cheers, Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQFHg10StTMYHG2NR9URAhEnAJwKeM6sdsJx1+spcppKgqECvMC2rgCfTAoh fqATzV/gUxbc04g+249rlYY= =+i37 -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
The Monday 2008-01-07 at 15:09 -0500, Aaron Kulkis wrote:
Bill Anderson wrote:
Bourne shell compatibility. You might also note that under Linux it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash.
No, not really:
cer@nimrodel:~> l /bin/sh /usr/bin/sh lrwxrwxrwx 1 root root 4 2007-11-03 02:13 /bin/sh -> bash* lrwxrwxrwx 1 root root 9 2007-11-03 02:13 /usr/bin/sh -> /bin/bash*
cer@nimrodel:~> l /bin/ksh /usr/bin/ksh lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /bin/ksh -> /lib/ast/bin/ksh* lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /usr/bin/ksh -> /lib/ast/bin/ksh*
cer@nimrodel:~> l /bin/bash /usr/bin/bash ls: cannot access /usr/bin/bash: No such file or directory - -rwxr-xr-x 1 root root 604040 2007-09-22 00:16 /bin/bash*
- -- Cheers, Carlos E. R. My original comment about /bin being linked to /usr/bin applied only to Solaris, AIX, and HPUX. Yet, all the examples of why I am wrong are from Linux. If you were on a Unix system, there would not be a /lib/ast/ksh, as KornShell is in /usr/bin. The other difference you will notice is
Carlos E. R. wrote: that AIX now has bsh for Bourne Shell. Those who use Unix also notice the emphasis on hard links in Unix versus symbolic links in Linux. Bill Anderson WW7BA -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 The Tuesday 2008-01-08 at 06:35 -0700, Bill Anderson wrote:
Bill Anderson wrote:
Bourne shell compatibility. You might also note that under Linux it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash.
No, not really:
cer@nimrodel:~> l /bin/sh /usr/bin/sh lrwxrwxrwx 1 root root 4 2007-11-03 02:13 /bin/sh -> bash* lrwxrwxrwx 1 root root 9 2007-11-03 02:13 /usr/bin/sh -> /bin/bash*
cer@nimrodel:~> l /bin/ksh /usr/bin/ksh lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /bin/ksh -> /lib/ast/bin/ksh* lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /usr/bin/ksh -> /lib/ast/bin/ksh*
cer@nimrodel:~> l /bin/bash /usr/bin/bash ls: cannot access /usr/bin/bash: No such file or directory - -rwxr-xr-x 1 root root 604040 2007-09-22 00:16 /bin/bash*
My original comment about /bin being linked to /usr/bin applied only to Solaris, AIX, and HPUX. Yet, all the examples of why I am wrong are from Linux. If you were on a Unix system, there would not be a /lib/ast/ksh, as KornShell is in /usr/bin. The other difference you will notice is that AIX now has bsh for Bourne Shell. Those who use Unix also notice the emphasis on hard links in Unix versus symbolic links in Linux.
You said: ]>>>> Bourne shell compatibility. You might also note that under Linux ]>>>> it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash. Notice you speak in this paragraph about Linux, and that's the one I was comenting about. Also, notice that symbolic links are needed to cross partitions: that's why they are preferred sometimes (specially for files in /usr) - -- Cheers, Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQFHg36PtTMYHG2NR9URArzPAKCWFTJRgelgnmOADKSmFsgONrsl+gCferTq wHIgFzXl1EiIEeflwjV3jts= =PUeG -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
The Tuesday 2008-01-08 at 06:35 -0700, Bill Anderson wrote:
Bill Anderson wrote:
Bourne shell compatibility. You might also note that under Linux > > it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash.
No, not really:
cer@nimrodel:~> l /bin/sh /usr/bin/sh lrwxrwxrwx 1 root root 4 2007-11-03 02:13 /bin/sh -> bash* lrwxrwxrwx 1 root root 9 2007-11-03 02:13 /usr/bin/sh -> /bin/bash*
cer@nimrodel:~> l /bin/ksh /usr/bin/ksh lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /bin/ksh -> /lib/ast/bin/ksh* lrwxrwxrwx 1 root root 16 2007-11-03 16:07 /usr/bin/ksh -> /lib/ast/bin/ksh*
cer@nimrodel:~> l /bin/bash /usr/bin/bash ls: cannot access /usr/bin/bash: No such file or directory - -rwxr-xr-x 1 root root 604040 2007-09-22 00:16 /bin/bash*
My original comment about /bin being linked to /usr/bin applied only to Solaris, AIX, and HPUX. Yet, all the examples of why I am wrong are from Linux. If you were on a Unix system, there would not be a /lib/ast/ksh, as KornShell is in /usr/bin. The other difference you will notice is that AIX now has bsh for Bourne Shell. Those who use Unix also notice the emphasis on hard links in Unix versus symbolic links in Linux.
You said:
]>>>> Bourne shell compatibility. You might also note that under Linux ]>>>> it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash.
Notice you speak in this paragraph about Linux, and that's the one I was comenting about. I just used the results of the which command. Although, I prefer the whence command of ksh.
Also, notice that symbolic links are needed to cross partitions: that's why they are preferred sometimes (specially for files in /usr) I know. You forget that I have been in this game for awhile. I remember when symbolic links were added to Unix. In Version 7 Unix, circa 1978,
Carlos E. R. wrote: there were no symbolic links.
- -- Cheers, Carlos E. R.
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux)
iD8DBQFHg36PtTMYHG2NR9URArzPAKCWFTJRgelgnmOADKSmFsgONrsl+gCferTq wHIgFzXl1EiIEeflwjV3jts= =PUeG -----END PGP SIGNATURE-----
-- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Tuesday 08 January 2008 08:04, Bill Anderson wrote:
...
I know. You forget that I have been in this game for awhile. I remember when symbolic links were added to Unix. In Version 7 Unix, circa 1978, there were no symbolic links.
True. They first appeared Berkeley's adaptation of AT&T's Unix for the VAX in the early 80s. Randall Schulz -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Aaron Kulkis wrote:
Bill Anderson wrote:
Aaron Kulkis wrote:
Bill Anderson wrote:
Bob S wrote:
Hello SuSE users,
While searching for files in /usr/bin I noticed something that seems odd to me. There is a folder in there named X11. It is a link to the same folder. If you open it, it shows the exact same thing as /usr/bin. You can continue opening the X11 directory until you have a /usr/bin//X11/X11/X11/X11 file open on ad-infitum. They all show the exact same files and megabytes. What is this? Can somebody explain the purpose?
Bob S
Not sure of the reason, but it only impacts on the logical path pwd -L. The physical path (pwd -P) remains as /usr/bin. The impact is to have all X11 binaries appear in /usr/bin instead of /usr/bin/X11. Like many symbolic links, it makes the applications happy even when the underlying structure changes. For those of us who use UNIX, we are used to /bin being a symbolic link to /usr/bin,
since when? there are several programs which have always been in /bin because they are needed in runlevel 0 and run level S, neither of which have /usr mounted, but which are not administrative only, (and thus do NOT reside in /sbin or /usr/sbin). Since the early 1990s, /bin has been a symbolic link to /usr/bin. If you go to runlevel S, you will find that there are a minimal number of utilities in /usr/bin. These are hidden if you have a separate mount for /usr. The intent was for /usr to be a static directory.
I think you're on drugs:
akulkis@kulkix:/> ls -al / total 112 drwxr-xr-x 23 root root 4096 2007-12-18 15:26 . drwxr-xr-x 23 root root 4096 2007-12-18 15:26 .. drwx------ 2 root root 4096 2007-01-09 05:54 .gnupg lrwxrwxrwx 1 root root 6 2007-04-23 12:24 K00ntp -> ../ntp lrwxrwxrwx 1 root root 6 2007-04-23 12:24 S99ntp -> ../ntp drwxr-xr-x 2 root root 4096 2006-12-27 11:39 bin drwxr-xr-x 3 root root 4096 2006-12-27 11:39 boot drwxr-xr-x 11 root root 7880 2008-01-07 01:32 dev drwxr-xr-x 120 root root 8192 2008-01-07 05:34 etc drwxr-xr-x 31 root root 4096 2007-12-15 20:17 home drwxr-xr-x 11 root root 4096 2006-12-27 11:39 lib lrwxrwxrwx 1 root root 11 2006-12-26 10:58 local -> /home/local drwx------ 2 root root 16384 2006-12-26 08:38 lost+found drwxr-xr-x 6 root root 4096 2008-01-07 05:31 media drwxr-xr-x 3 root root 4096 2007-07-15 12:36 mnt drwxr-xr-x 17 root root 4096 2008-01-05 00:12 opt dr-xr-xr-x 290 root root 0 2008-01-07 01:22 proc drwx------ 25 root root 4096 2008-01-07 01:32 root drwxr-xr-x 3 root root 8192 2006-12-27 11:43 sbin drwxr-xr-x 5 root root 4096 2006-12-26 09:31 srv drwxr-xr-x 2 root root 4096 2006-04-22 22:25 subdomain drwxr-xr-x 11 root root 0 2008-01-07 01:22 sys drwxrwxrwt 133 root root 16384 2008-01-07 15:00 tmp drwxr-xr-x 12 root root 151 2006-12-26 09:02 usr drwxr-xr-x 15 root root 4096 2006-12-27 11:35 var drwxr-xr-x 3 root root 4096 2006-12-26 08:38 windows akulkis@kulkix:/>
examples being: cp, chown, dd, grep, awk, cat, chmod, chgrp, date, kill, ln, ls, mount, umount, rm, rmdir, sed, stty, tar, shells (sh/ksh/csh/tcsh/bash), false, true, uname, ed, ex, vi
I think you need to get on a Unix box, and check out the actual structure. Linux has never followed this path, and holds to the old Unix structure. I have been working with Unix since 1978, and have been through a number of file structure changes.
Which Unix vendors made this change?
The point is that symbolic links are used to for backwards compatibility.
Yes, I realize that.
As a side light, a number of the utilities that you mention are now shell built-ins, which take precedence over the equivalent command. For example, pwd is a built-in that has the -L and -P options for ksh and bash.
Primarily because forking off a shell, then execing a new executable, just to print the name of the working directory is a waste, and belongs in the shell.
/bin/pwd was basically a patch for a deficiency in the early versions of sh and ksh.
Csh and tcsh have always had $cwd (current working directory)
The /usr/bin command does not have these options, and exists for Bourne shell compatibility. You might also note that under Linux it is /usr/bin/sh, /usr/bin/ksh, and /bin/bash.
Now I know you're on drugs:
akulkis@kulkix:/> which sh /bin/sh akulkis@kulkix:/> which ksh /usr/bin/ksh akulkis@kulkix:/> which bash /bin/bash akulkis@kulkix:/> ls -al `which sh` lrwxrwxrwx 1 root root 4 2006-12-26 08:43 /bin/sh -> bash akulkis@kulkix:/> ls -al `which ksh` lrwxrwxrwx 1 root root 12 2006-12-27 11:39 /usr/bin/ksh -> /lib/ast/ksh akulkis@kulkix:/> ls -al `which bash` -rwxr-xr-x 1 root root 501804 2006-04-22 21:46 /bin/bash akulkis@kulkix:/>
Most people are not aware that the default behavior for ksh and bash is to show the logical path, so that cd .. behaves as expected. It is the shell that tracks the logical path. The system calls still refer to the physical path, as does /bin/pwd. For those interested in understanding this behavior try cd -P /usr/tmp and then do the pwd command. The shell built-in for cd also support the -P and -L options.
Bill Anderson WW7BA
Sorry kid, you are just way to young as you obviously belong to the drug generation. You could have at least had the courtesy of stating the system from which you derived the above listings. As they don't match either AIX or Solaris. It does appear that ksh was installed separately, as it appears under /lib/ast. Insults are much easier than courtesy. Bill Anderson WW7BA
-- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Bill Anderson wrote:
Insults are much easier than courtesy.
You've been suffering a lot from insults and disbelievers and I don't understand why :( I didn't post before because I thought I didn't have access to a Unix box. Then I remembered that there is some old iron here. FWIW, here are some samples from a session I just ran: Compaq Tru64 UNIX V5.1B (Rev. 2650); Tue Sep 2 17:51:37 BST 2003 % ls -ld /bin lrwxr-xr-x 1 root system 7 Aug 22 2003 /bin@ -> usr/bin/ % ls -l /bin/sh -rwxr-xr-x 2 bin bin 149840 Apr 15 2003 /bin/sh* % df -h Filesystem Size Used Available Capacity Mounted on /dev/disk/dsk0a 240M 208M 7666K 97% / /dev/disk/dsk0g 1923M 1335M 395M 78% /usr % ls -l /bin/bash lrwxrwxrwx 1 root system 19 Apr 2 2004 /bin/bash@ -> /usr/local/bin/bash* % which bash /usr/bin/bash % ls -l /usr/bin/bash lrwxrwxrwx 1 root system 19 Apr 2 2004 /usr/bin/bash@ -> /usr/local/bin/bash* % ls -l /usr/bin/ksh -rwxr-xr-x 2 bin bin 315440 Apr 15 2003 /usr/bin/ksh* % ls -l /usr/bin/csh -rwxr-xr-x 1 bin bin 288784 Dec 16 2002 /usr/bin/csh* % ls -l /usr/bin/tcsh -rwxr-xr-x 1 root system 863732 Aug 22 2003 /usr/bin/tcsh* Cheers, Dave -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 The Tuesday 2008-01-08 at 13:30 -0000, Dave Howorth wrote:
Bill Anderson wrote:
Insults are much easier than courtesy.
You've been suffering a lot from insults and disbelievers and I don't understand why :(
I didn't post before because I thought I didn't have access to a Unix box. Then I remembered that there is some old iron here. FWIW, here are some samples from a session I just ran:
Compaq Tru64 UNIX V5.1B (Rev. 2650); Tue Sep 2 17:51:37 BST 2003
% ls -ld /bin lrwxr-xr-x 1 root system 7 Aug 22 2003 /bin@ -> usr/bin/
% ls -l /bin/sh -rwxr-xr-x 2 bin bin 149840 Apr 15 2003 /bin/sh*
% df -h Filesystem Size Used Available Capacity Mounted on /dev/disk/dsk0a 240M 208M 7666K 97% / /dev/disk/dsk0g 1923M 1335M 395M 78% /usr
Ok, question then. What will happen during boot, if partition /usr fails the initial filecheck? It can not be mounted, it has to be repaired first; but the system can not drop you into a repair mode with a shell, because the shell resides in /usr/bin/ What does that unix do? Does it mount /usr readonly? - -- Cheers, Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQFHg4AWtTMYHG2NR9URAjENAJ4iJ3VMC/51eTVHngizqOM4xoFpuwCghhVQ mKv9JNG7yqZevqlvsg6aqqA= =OhLl -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
The Tuesday 2008-01-08 at 13:30 -0000, Dave Howorth wrote:
Bill Anderson wrote:
Insults are much easier than courtesy.
You've been suffering a lot from insults and disbelievers and I don't understand why :(
I didn't post before because I thought I didn't have access to a Unix box. Then I remembered that there is some old iron here. FWIW, here are some samples from a session I just ran:
Compaq Tru64 UNIX V5.1B (Rev. 2650); Tue Sep 2 17:51:37 BST 2003
% ls -ld /bin lrwxr-xr-x 1 root system 7 Aug 22 2003 /bin@ -> usr/bin/
% ls -l /bin/sh -rwxr-xr-x 2 bin bin 149840 Apr 15 2003 /bin/sh*
% df -h Filesystem Size Used Available Capacity Mounted on /dev/disk/dsk0a 240M 208M 7666K 97% / /dev/disk/dsk0g 1923M 1335M 395M 78% /usr
Ok, question then.
What will happen during boot, if partition /usr fails the initial filecheck? It can not be mounted, it has to be repaired first; but the system can not drop you into a repair mode with a shell, because the shell resides in /usr/bin/ Unix admins do not normally create a separate partition for /usr. In Unix, it is a relatively static directory. Also, you need to kick the
Carlos E. R. wrote: partition thing, it is an x86ism. Under AIX, there is a root logical volume. One could create separate LVs for /tmp, /var, and /home. Under Solaris, it is slices, and one could create a separate slice for /usr and /home, under the default setup. If you cannot mount /usr, then you get a mount failure. Depending on the machine, one could a console message, or one just get to read the numbers on an RS6000. To correct problems, I can always boot into the firmware.
What does that unix do? Does it mount /usr readonly?
The boot halts. Under ForPro (another version of Unix for those who remember Fortune Systems), the solution was that /usr/bin had a minimum set of utilities. Of course, the mount of another "partition" on /usr meant then overlaid those utilities. Anyway, discussion of Unix is OT.
- -- Cheers, Carlos E. R.
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux)
iD8DBQFHg4AWtTMYHG2NR9URAjENAJ4iJ3VMC/51eTVHngizqOM4xoFpuwCghhVQ mKv9JNG7yqZevqlvsg6aqqA= =OhLl -----END PGP SIGNATURE-----
-- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 The Tuesday 2008-01-08 at 09:29 -0700, Bill Anderson wrote:
% df -h Filesystem Size Used Available Capacity Mounted on /dev/disk/dsk0a 240M 208M 7666K 97% / /dev/disk/dsk0g 1923M 1335M 395M 78% /usr
Ok, question then.
What will happen during boot, if partition /usr fails the initial filecheck? It can not be mounted, it has to be repaired first; but the system can not drop you into a repair mode with a shell, because the shell resides in /usr/bin/ Unix admins do not normally create a separate partition for /usr. In Unix, it is a relatively static directory. Also, you need to kick the partition thing, it is an x86ism. Under AIX, there is a root logical volume. One could create separate LVs for /tmp, /var, and /home. Under Solaris, it is slices, and one could create a separate slice for /usr and /home, under the default setup.
Ok, whatever you name them, the significance is that /usr is mounted separately above, as 'df' shows :-)
If you cannot mount /usr, then you get a mount failure. Depending on the machine, one could a console message, or one just get to read the numbers on an RS6000. To correct problems, I can always boot into the firmware.
What does that unix do? Does it mount /usr readonly?
The boot halts. Under ForPro (another version of Unix for those who remember Fortune Systems), the solution was that /usr/bin had a minimum set of utilities. Of course, the mount of another "partition" on /usr meant then overlaid those utilities.
Aha. Which is precisely the point for having certain programs in Linux residing in /bin, and it not being a symlink to /usr. Linux handles better that situation, IMHO. What is the advantage of having that symlink, then? There surely must be something.
Anyway, discussion of Unix is OT.
But instructive for Linux, too. As it happens, I first installed Linux at home because I wanted to practice a bit for the Unix I had at the job (and Linux, too). That was a decade ago... - -- Cheers, Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQFHg9ZPtTMYHG2NR9URAhsOAJ91HpbKDbp4zFiRINeyjlYbG9LdIwCfVjvJ 6WYkyt9FQTA5RmByH6cS5zA= =H49f -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Tuesday 08 January 2008 12:00:14 Carlos E. R. wrote: <SNIP>
Ok, whatever you name them, the significance is that /usr is mounted separately above, as 'df' shows :-)
If you cannot mount /usr, then you get a mount failure. Depending on the machine, one could a console message, or one just get to read the numbers on an RS6000. To correct problems, I can always boot into the firmware.
What does that unix do? Does it mount /usr readonly?
The boot halts. Under ForPro (another version of Unix for those who remember Fortune Systems), the solution was that /usr/bin had a minimum set of utilities. Of course, the mount of another "partition" on /usr meant then overlaid those utilities.
Aha. Which is precisely the point for having certain programs in Linux residing in /bin, and it not being a symlink to /usr. Linux handles better that situation, IMHO.
What is the advantage of having that symlink, then? There surely must be something. I confess I haven't followed this thread fully, but I think an advantage of symlinks here would be that a symlink can point to a file on a different filesystem/partition/slice/LV (or whatever one wants to call it). Hard links must be on the same filesystem.
Jim -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Carlos E. R. wrote:
What is the advantage of having that symlink, then? There surely must be something.
Symbolics link can link directories and cross filesystems. Hard links are more efficient, but are limited to files in a single file system.
Anyway, discussion of Unix is OT.
But instructive for Linux, too. As it happens, I first installed Linux at home because I wanted to practice a bit for the Unix I had at the job (and Linux, too). That was a decade ago...
The changes have been interesting. I remember when Bill Joy, who was at BSD in those days, released vi as shareware. It sure a lot better than ex. I also remember when he released csh, which I never really liked. If you ever saw a Lier Siegler ADM-3A terminal, you would know why the cursor keys in vi are j,k,h, and l. In the time it took me to download the vi source from Berkeley, I could have driven from Cupertino to Berkeley, loaded it on tape, and been back in Cupertino. If you don't know Bill Joy, he is the mentor for Java and currently works for Sun.
- -- Cheers, Carlos E. R.
-- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Bill Anderson wrote:
Carlos E. R. wrote:
What is the advantage of having that symlink, then? There surely must be something.
Symbolics link can link directories and cross filesystems. Hard links are more efficient, but are limited to files in a single file system.
Anyway, discussion of Unix is OT.
But instructive for Linux, too. As it happens, I first installed Linux at home because I wanted to practice a bit for the Unix I had at the job (and Linux, too). That was a decade ago...
The changes have been interesting. I remember when Bill Joy, who was at BSD in those days, released vi as shareware. It sure a lot better than ex.
I think you mean ed. Most jokes are based on a kernal of truth. The following joke is ENTIRELY truth: http://www.gnu.org/fun/jokes/ed.msg.html ex and vi have always been the same program.
I also remember when he released csh, which I never really liked. If you ever saw a Lier Siegler ADM-3A terminal, you would know why the cursor keys in vi are j,k,h, and l.
Hell, I worked on LS ADM-3's, 3A's, 3+'s and 5's back in my youth at Purdue.
In the time it took me to download the vi source from Berkeley, I could have driven from Cupertino to Berkeley, loaded it on tape, and been back in Cupertino. If you don't know Bill Joy, he is the mentor for Java and currently works for Sun.
He's also the FOUNDER of Sun. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Tuesday 08 January 2008 13:28, Bill Anderson wrote:
.... I remember when Bill Joy, who was at BSD in those days, released vi as shareware.
I don't think that could have happened, since Vi / Ex were derived from and included code from ed and hence were covered by AT&T copyright.
... If you don't know Bill Joy, he is the mentor for Java and currently works for Sun.
For what it's worth, he also wrote an article a few years back in Wired in which he expressed his fears that the combination of AI / robotics, nanotechnology and genetic engineering would lead to humanity's extinction, either outright through catastrophe or by conversion into a cyborg species. Randall Schulz Vi user since 1980 Resigned to his status as a Vi user since 1997 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Randall R Schulz wrote:
On Tuesday 08 January 2008 13:28, Bill Anderson wrote:
.... I remember when Bill Joy, who was at BSD in those days, released vi as shareware.
I don't think that could have happened, since Vi / Ex were derived from and included code from ed and hence were covered by AT&T copyright.
hence elvis being ported to Unix and Linux, and the development of vim/gvim. [more below] [snip happens]
Randall Schulz Vi user since 1980 Resigned to his status as a Vi user since 1997
That's ok... just like Pepsi, emacs is evil. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Randall R Schulz wrote:
On Tuesday 08 January 2008 13:28, Bill Anderson wrote:
.... I remember when Bill Joy, who was at BSD in those days, released vi as shareware.
I don't think that could have happened, since Vi / Ex were derived from and included code from ed and hence were covered by AT&T copyright.
I was working for Onyx Systems at the time vi /ex became available. We were porting Version 7 Unix to a Zilog Z8000 and the disk was a Corvus ShoeBox disk. I was told to download it from Berkeley via good ol' uucp. I did, I compiled, I have used it since. Licenses weren't my issue, as Bob Marsh dealt with those details. This was my first exposure to Unix. Roughly six years later, I was a Product Line Engineering Manger at Fortune Systems. Those were wild and exciting days in Silicon Valley. Bill Anderson WW7BA -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Wednesday 09 January 2008 11:51, Bill Anderson wrote:
Randall R Schulz wrote:
On Tuesday 08 January 2008 13:28, Bill Anderson wrote:
.... I remember when Bill Joy, who was at BSD in those days, released vi as shareware.
I don't think that could have happened, since Vi / Ex were derived from and included code from ed and hence were covered by AT&T copyright.
I was working for Onyx Systems at the time vi /ex became available. We were porting Version 7 Unix to a Zilog Z8000 and the disk was a Corvus ShoeBox disk. I was told to download it from Berkeley via good ol' uucp. I did, I compiled, I have used it since.
Being able to acquire some source code does not imply it has been "released as share-ware." The classic Vi source may now be under the BSD license, but that was most certainly not true during the era of v7 Unix ports to things like the Z8000 (since the concept of an open-source license did not exist then). On the other hand, if you were doing that port legally, which I gather you were, then you had a license from AT&T to use, modify and redistribute Unix (as LCC did), that would have given you the right to include Vi. (I vaguely recall Onyx; I worked for Locus Computing in Santa Monica from '83 to about '87 on distributed Unix, the first transparent file sharing between DOS and Unix and the first SMB server for Unix, which my team did for AT&T.)
...
Bill Anderson WW7BA
Randall Schulz -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Bill Anderson wrote:
Randall R Schulz wrote:
On Tuesday 08 January 2008 13:28, Bill Anderson wrote:
.... I remember when Bill Joy, who was at BSD in those days, released vi as shareware.
I don't think that could have happened, since Vi / Ex were derived from and included code from ed and hence were covered by AT&T copyright.
I was working for Onyx Systems at the time vi /ex became available. We were porting Version 7 Unix to a Zilog Z8000 and the disk was a Corvus ShoeBox disk. I was told to download it from Berkeley via good ol' uucp. I did, I compiled, I have used it since. Licenses weren't my issue, as Bob Marsh dealt with those details. This was my first exposure to Unix. Roughly six years later, I was a Product Line Engineering Manger at Fortune Systems. Those were wild and exciting days in Silicon Valley.
Yes, the 1980's were a much more exciting time in the world of computing... IBM had lost it's stranglehold on the marketplace, and Microsoft had not yet achieved one. And in those days, it wasn't unusual for me to work on several different versions of Unix in one day, hell, even 3 different versions of 4.3BSD in one day. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Bill Anderson wrote:
...This was my first exposure to Unix. Roughly six years later, I was a Product Line Engineering Manger at Fortune Systems. Those were wild and exciting days in Silicon Valley.
You were a manger? How holy! Or rustic! Or something .... -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Jerry Houston wrote:
Bill Anderson wrote:
...This was my first exposure to Unix. Roughly six years later, I was a Product Line Engineering Manger at Fortune Systems. Those were wild and exciting days in Silicon Valley.
You were a manger? How holy! Or rustic! Or something ....
That's why he feeds livestock to this very day ;-) -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Jerry Houston wrote:
Bill Anderson wrote:
...This was my first exposure to Unix. Roughly six years later, I was a Product Line Engineering Manger at Fortune Systems. Those were wild and exciting days in Silicon Valley.
You were a manger? How holy! Or rustic! Or something ....
I was happier as a programmer, but kept getting promoted. I hated doing budgets, employee reviews, hiring, and spending my life in meetings. The solution was to become a consultant. Hard to get promoted out of what you enjoy doing. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Bill Anderson wrote:
Jerry Houston wrote:
Bill Anderson wrote:
...This was my first exposure to Unix. Roughly six years later, I was a Product Line Engineering Manger at Fortune Systems. Those were wild and exciting days in Silicon Valley.
You were a manger? How holy! Or rustic! Or something ....
I was happier as a programmer,
I'll bet--no messy animal feedings!
but kept getting promoted.
Promoted??? -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Tue, 08 Jan 2008 09:29:03 -0700 Bill Anderson <bill@bill-anderson.com> wrote:
What will happen during boot, if partition /usr fails the initial filecheck? It can not be mounted, it has to be repaired first; but the system can not drop you into a repair mode with a shell, because the shell resides in /usr/bin/ Unix admins do not normally create a separate partition for /usr. In Unix, it is a relatively static directory.
Since I was in the Unix Development Environment group at Digital when Tru64 (formerly Digital Unix formerly OSF/1) let me give some history to put this into perspective. At one time it was common practice for the /usr file system to be mountable. This was when disks were small. The /bin and /lib directories were part of the root file system for boot purposes just as /sbin was supposed to be for statically built binaries. As disks got larger, the /usr directory tree was generally part of the root file system and not a separate file system. Additionally, the reason for the separation of the /bin and /usr/bin directories were eliminated. In Tru64 Unix, the clustering system invented a context-dependent symbolic link. This was added in Tru64 5.0. Since Tru64 Unix is proprietary, the installer can force the /usr tree into the root file system. I do know in Tru64 Unix 4.x you could place /usr in a separate file system. -- -- Jerry Feldman <gaf@blu.org> Boston Linux and Unix PGP key id: 537C5846 PGP Key fingerprint: 3D1B 8377 A3C0 A5F2 ECBB CA3B 4607 4319 537C 5846
Jerry Feldman wrote:
In Tru64 Unix, the clustering system invented a context-dependent symbolic link. This was added in Tru64 5.0. Since Tru64 Unix is proprietary, the installer can force the /usr tree into the root file system. I do know in Tru64 Unix 4.x you could place /usr in a separate file system.
As I posted earlier:
Compaq Tru64 UNIX V5.1B (Rev. 2650); Tue Sep 2 17:51:37 BST 2003
% ls -ld /bin lrwxr-xr-x 1 root system 7 Aug 22 2003 /bin@ -> usr/bin/
% ls -l /bin/sh -rwxr-xr-x 2 bin bin 149840 Apr 15 2003 /bin/sh*
% df -h Filesystem Size Used Available Capacity Mounted on /dev/disk/dsk0a 240M 208M 7666K 97% / /dev/disk/dsk0g 1923M 1335M 395M 78% /usr
I guess the installer didn't force it to be in the same filesystem on our box. Or our sysadmin hacked it later for some reason :) Cheers, Dave -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Thu, 10 Jan 2008 10:40:02 +0000 Dave Howorth <dhoworth@mrc-lmb.cam.ac.uk> wrote:
Jerry Feldman wrote:
In Tru64 Unix, the clustering system invented a context-dependent symbolic link. This was added in Tru64 5.0. Since Tru64 Unix is proprietary, the installer can force the /usr tree into the root file system. I do know in Tru64 Unix 4.x you could place /usr in a separate file system.
As I posted earlier:
Compaq Tru64 UNIX V5.1B (Rev. 2650); Tue Sep 2 17:51:37 BST 2003
% ls -ld /bin lrwxr-xr-x 1 root system 7 Aug 22 2003 /bin@ -> usr/bin/
% ls -l /bin/sh -rwxr-xr-x 2 bin bin 149840 Apr 15 2003 /bin/sh*
% df -h Filesystem Size Used Available Capacity Mounted on /dev/disk/dsk0a 240M 208M 7666K 97% / /dev/disk/dsk0g 1923M 1335M 395M 78% /usr
I guess the installer didn't force it to be in the same filesystem on our box. Or our sysadmin hacked it later for some reason :)
That looks like a CDSL. -- -- Jerry Feldman <gaf@blu.org> Boston Linux and Unix PGP key id: 537C5846 PGP Key fingerprint: 3D1B 8377 A3C0 A5F2 ECBB CA3B 4607 4319 537C 5846
Dave Howorth wrote:
Bill Anderson wrote:
Insults are much easier than courtesy.
You've been suffering a lot from insults and disbelievers and I don't understand why :(
I didn't post before because I thought I didn't have access to a Unix box. Then I remembered that there is some old iron here. FWIW, here are some samples from a session I just ran:
Compaq Tru64 UNIX V5.1B (Rev. 2650); Tue Sep 2 17:51:37 BST 2003
% ls -ld /bin lrwxr-xr-x 1 root system 7 Aug 22 2003 /bin@ -> usr/bin/
% ls -l /bin/sh -rwxr-xr-x 2 bin bin 149840 Apr 15 2003 /bin/sh*
% df -h Filesystem Size Used Available Capacity Mounted on /dev/disk/dsk0a 240M 208M 7666K 97% / /dev/disk/dsk0g 1923M 1335M 395M 78% /usr
% ls -l /bin/bash lrwxrwxrwx 1 root system 19 Apr 2 2004 /bin/bash@ -> /usr/local/bin/bash*
% which bash /usr/bin/bash
% ls -l /usr/bin/bash lrwxrwxrwx 1 root system 19 Apr 2 2004 /usr/bin/bash@ -> /usr/local/bin/bash*
% ls -l /usr/bin/ksh -rwxr-xr-x 2 bin bin 315440 Apr 15 2003 /usr/bin/ksh*
% ls -l /usr/bin/csh -rwxr-xr-x 1 bin bin 288784 Dec 16 2002 /usr/bin/csh*
% ls -l /usr/bin/tcsh -rwxr-xr-x 1 root system 863732 Aug 22 2003 /usr/bin/tcsh*
Cheers, Dave
Thanks Dave. While Unix and Linux are similar, there are a lot of interesting differences. The standard version of ksh on Unix is the '88 version. AIX also has a ksh93, which is an early version of KornShell 1993, the POSIX compliant version. When AT&T sold Unix to Novell, they did not include the AST package, which included ksh93. Until 2000, the AST package was available as a separate license. For those who like trivia, dtksh was written by David Korn's son. The tractor is warmed up. Got to go and feed some hay to the cows. A chilly morning at 6 degrees Fahrenheit. Cows will eat a lot today to keep warm. Bill Anderson WW7BA -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
participants (8)
-
Aaron Kulkis
-
Bill Anderson
-
Carlos E. R.
-
Dave Howorth
-
Jerry Feldman
-
Jerry Houston
-
Jim Cunning
-
Randall R Schulz