And today, I found this post. written by Rob Landley. It's ubeliviable! I'm using Unix/Linux for over 20 years now, always knowing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is a split between /bin, /sbin, /usr/sbin and /usr/bin and knowing why it is done so. But I realise now that, till today, I didn't actually know and, what's more, this is again an example of something that by accident becomes a law. What's more interesting is that not once I stumbled upon some heated discussion about file system layout (an example) in which cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re were proponents of this split with a simple argument that it is a Unix way of things! Boy, how wrong cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are! :)
I'm copying this post here for a refence:
Understanding cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 bin, sbin, usr/bin , usr/sbin split
Rob Landley rob at landley.netThu Dec 9 15:45:39 UTC 2010
You know how Ken Thompson and Dennis Ritchie created Unix on a PDP-7 in 1969? Well around 1971 cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y upgraded to a PDP-11 with a pair of RK05 disk packs (1.5 megabytes each) for storage. When cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 operating system grew too big to fit on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 first RK05 disk pack (cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir root filesystem) cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y let it leak into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 second one, which is where all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user home directories lived (which is why cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 mount was called /usr). They replicated all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OS directories under cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re (/bin, /sbin, /lib, /tmp...) and wrote files to those new directories because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir original disk was out of space. When cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y got a third disk, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y mounted it on /home and relocated all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user directories to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re so cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OS could consume all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 space on both disks and grow to THREE WHOLE MEGABYTES (ooooh!). Of course cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y made rules about "when cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system first boots, it has to come up enough to be able to mount cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 second disk on /usr, so don't put things like cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 mount command /usr/bin or we'll have a chicken and egg problem bringing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system up." Fairly straightforward. Also fairly specific to v6 unix of 35 years ago. The /bin vs /usr/bin split (and all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rs) is an artifact of this, a 1970's implementation detail that got carried forward for decades by bureaucrats who never question _why_ cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y're doing things. It stopped making any sense before Linux was ever invented, for multiple reasons: 1) Early system bringup is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 provice of initrd and initramfs, which deals with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 "this file is needed before that file" issues. We've already _got_ a temporary system that boots cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 main system. 2) shared libraries (introduced by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Berkeley guys) prevent you from independently upgrading cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 /lib and /usr/bin parts. They two partitions have to _match_ or cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y won't work. This wasn't cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 case in 1974, back cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y had a certain level of independence because everything was statically linked. 3) Cheap retail hard drives passed cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 100 megabyte mark around 1990, and partition resizing software showed up somewhere around cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re (partition magic 3.0 shipped in 1997). Of course once cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 split existed, some people made ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r rules to justify it. Root was for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OS stuff you got from upstream and /usr was for your site- local files. Then / was for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 stuff you got from AT&T and /usr was for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 stuff that your distro like IBM AIX or Dec Ultrix or SGI Irix added to it, and /usr/local was for your specific installation's files. Then somebody decided /usr/local wasn't a good place to install new packages, so let's add /opt! I'm still waiting for /opt/local to show up... Of course given 30 years to fester, this split made some interesting distro- specific rules show up and go away again, such as "/tmp is cleared between reboots but /usr/tmp isn't". (Of course on Ubuntu /usr/tmp doesn't exist and on Gentoo /usr/tmp is a symlink to /var/tmp which now has cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 "not cleared between reboots" rule. Yes all this predated tmpfs. It has to do with read- only root filesystems, /usr is always going to be read only in that case and /var is where your writable space is, / is _mostly_ read only except for bits of /etc which cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y tried to move to /var but really symlinking /etc to /var/etc happens more often than not...) Standards bureaucracies like cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Linux Foundation (which consumed cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Free Standards Group in its' ever-growing accretion disk years ago) happily document and add to this sort of complexity without ever trying to understand why it was cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 first place. 'Ken and Dennis leaked cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir OS into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 equivalent of home because an RK05 disk pack on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 PDP-11 was too small" goes whoosh over cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir heads. I'm pretty sure cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 busybox install just puts binaries wherever ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r versions of those binaries have historically gone. There's no actual REASON for any of it anymore. Personally, I symlink /bin /sbin and /lib to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir /usr equivalents on systems I put togecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r. Embedded guys try to understand and simplify... Rob -- GPLv3: as worthy a successor as The Phantom Menace, as timely as Duke Nukem Forever, and as welcome as New Coke.
No comments:
Post a Comment