/ Bin, / sbin, / usr / bin, / usr / sbin, / usr / local / bin, / usr / local / sbin අතර වෙනස්කම්


315

විධාන ලිපිගොනු සහිත නාමාවලි හයක් මා සතුව ඇත. මේවා /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/binහා /usr/local/sbin.

මේවා අතර ඇති වෙනස්කම් මොනවාද? මම මගේම පිටපත් ලියන්නේ නම්, මම ඒවා එකතු කළ යුත්තේ කොතැනටද?


ආශ්‍රිත:



Ee කීලන් ඔබේ ප්‍රශ්නය මම මීට වසරකට පෙර පළ කළ ප්‍රශ්නයකට ආසන්නයි
WinEunuuchs2Unix

Answers:


379

කරුණාකර මේ සඳහා ලිනක්ස් සඳහා ගොනු පද්ධති ධූරාවලිය ප්‍රමිතිය (FHS) වෙත යොමු වන්න .

  • /bin: /usrකොටස සවි කිරීමට පෙර භාවිතා කළ හැකි ද්විමය සඳහා . මෙය මුල් ඇරඹුම් අවධියේදී භාවිතා කරන සුළු ද්විමයන් සඳහා හෝ තනි පරිශීලක මාදිලියක් ආරම්භ කිරීමේදී ඔබට තිබිය යුතු ඒවා සඳහා භාවිතා වේ. වැනි ද්විමය ගොනු හිතන්න cat, lsආදිය,

  • /sbin : එකම, නමුත් සුපිරි පරිශීලක (මූල) වරප්‍රසාද සහිත ද්විමය සඳහා .

  • /usr/bin: පළමු ආකාරයටම, නමුත් සාමාන්‍ය පද්ධති පුරා ද්විමය සඳහා .

  • /usr/sbin : ඉහත ආකාරයටම, නමුත් සුපර් යූසර් (මූල) වරප්‍රසාද සහිත ද්විමය සඳහා.


මම මගේම පිටපත් ලියන්නේ නම්, මේවා එකතු කළ යුත්තේ කොතැනින්ද?

ඉහල තිබෙන කිසිවක් නොවේ. ඔබ භාවිතා කළ යුත්තේ /usr/local/binහෝ /usr/local/sbinපද්ධතිය පුරා ඇති ස්ක්‍රිප්ට් සඳහා ය. මෙම localමාර්ගය එය (මේ පද්ධතිය පැකේජ විසින් කළමනාකරණය නැහැ අදහස් දෝෂයක් ඩේබියන් / උබුන්ටු පැකේජ සඳහා).

සඳහා පරිශීලක-scoped පිටපත් කිරීම, භාවිතා කිරීම ~/bin(ඔබගේ නිවෙස් බහලුමේ පෞද්ගලික බින් ෆෝල්ඩරය).

FHS මෙසේ කියයි /usr/local:

මෙම ධාරකයට විශේෂිත වූ දේශීය දත්ත සඳහා තෘතියික ධූරාවලිය . සාමාන්‍යයෙන් තවත් උප බහලුම් ඇත, උදා bin/. lib/,, share/.


එබැවින් / bin යනු සියලුම මූලික ගොනු ස්ථාපනය කර ඇති ස්ථානයයි. ls, cat, pwd, ආදිය? ඉතින්, / usr / bin යනු පරිශීලක ස්ථාපනය කර ඇති යෙදුම් තිබෙන තැනද? / usr / bin හි තිබිය යුතු දේ සඳහා උදාහරණ මොනවාද?
පටෝෂි パ ト シ

1
ස්ක්‍රිප්ට් තැබීමෙන් /binකිසියම් ගැටලුවක් ඇති වේද? ඔබගේ පිළිතුරට අනුව මම මගේ පිටපත් ගෙන ගිය නමුත් මම තවමත් කුතුහලයෙන් සිටිමි
රූමේෂ්

6
Ume රුමේෂ් සුධහාරන් ඔබ එය නොකළ යුත්තේ එය පැකේජ කළමනාකරණය විසින් කළමනාකරණය කරන බැවිනි. වෙනත් පැකේජයකට ද එම මාර්ගය භාවිතා කිරීමට අවශ්‍ය නම්, එය ඔබගේ ගොනුව නැවත ලියයි. පැකේජවල ඇති ලිපිගොනු කිසි විටෙකත් අතිච්ඡාදනය විය නොහැක (අවම වශයෙන් නිල ගබඩාවන් සඳහා), එබැවින් දේශීය මාර්ගයේ ස්ථාපනය කිරීමේදී ඔබ වඩාත් ආරක්ෂිත වේ. එසේම, එය ඔබගේ පහසුව සහ ආරක්ෂාව සඳහා පමණි. දේශීය මාර්ගයකදී ඔබට පද්ධතිය එතරම් නරක ආකාරයකින් අවුල් කළ නොහැකි අතර ඔබට අහම්බෙන් පද්ධති ද්විමය ප්‍රතිස්ථාපනය කළ නොහැක.
gertvdijk

9
දෝෂ පිටුවේ පැහැදිලි කිරීමට මම කැමතියි:Severity:Serious Certainty:Certain
cutrightjm

1
මම සමහර ලිපිගොනු / usr / local / bin තුළ තබා ඇති අතර මට ඒවා ක්‍රියාත්මක කළ හැකිය, කෙසේ වෙතත් මට ඒවා සංස්කරණය කළ නොහැක, ls -laකිසිවක්
නොපෙන්වයි

14

මීට වසරකට පෙර මටත් ඒ හා සමාන ප්‍රශ්නයක් තිබුණි: මගේ බාෂ් ස්ක්‍රිප්ට් තැබීමට හොඳම නාමාවලිය?

ද්විමය සඳහා පද්ධති නාමාවලි

man hier(ධූරාවලිය) සියලුම නාමාවලි ලැයිස්තුගත කරයි. ද්විමය භාවිතය සඳහා ඒවා ලබා ගැනීම සඳහා:

$ man hier | grep -E 'bin$|sbin$|^.{7}(/bin)|^.{7}(/sbin)' -A2

       /bin   This directory contains executable programs which are needed in single user
              mode and to bring the system up or repair it.

--
       /sbin  Like  /bin,  this  directory  holds commands needed to boot the system, but
              which are usually not executed by normal users.

--
       /usr/X11R6/bin
              Binaries  which  belong  to the X-Window system; often, there is a symbolic
              link from the more traditional /usr/bin/X11 to here.
--
       /usr/bin
              This  is the primary directory for executable programs.  Most programs exe
              cuted by normal users which are not needed for booting or for repairing the
--
       /usr/local/bin
              Binaries for programs local to the site.

--
       /usr/local/sbin
              Locally installed programs for system administration.

--
       /usr/sbin
              This directory contains program binaries for  system  administration  which
              are  not  essential  for the boot process, for mounting /usr, or for system

ඔබේම පිටපත් තැබිය යුත්තේ කොතැනින්ද?

සියලුම පරිශීලකයින්ට ඔබගේ ස්ක්‍රිප්ට් වෙත පිවිසීමට ඔබට ඒවා ඇතුළත් කළ හැකිය /usr/local/bin. sudoමෙහි ලිපිගොනු එක් කිරීමට / වෙනස් කිරීමට ඔබට ප්‍රවේශය අවශ්‍ය බව මතක තබා ගන්න . බලන්න: අභිරුචි ලිනක්ස් ස්ක්‍රිප්ට් තැබීම සඳහා සම්මත ස්ථානයක් තිබේද?

ඔබේම පරිශීලක හැඳුනුම්පත් සඳහා ඒවා ඇතුළත් කරන්න /home/YOUR_NAME/bin. මතක තබා ගන්න ඔබ මුලින්ම මෙම නාමාවලිය නිර්මාණය කළ යුතු අතර මාර්ගය ස්වයංක්‍රීයව සැකසීමට ටර්මිනලය නැවත ආරම්භ කරන්න ~/.profile. බලන්න: / PATH වෙත / home / username / bin එකතු කරන්නේ කෙසේද?


මා දන්නා දේ මම නොදනිමි

Ask උබුන්ටු හි මගේ වඩාත් සංකීර්ණ බාෂ් ස්ක්‍රිප්ට් කිහිපයක් ගෙන ඒවා ස්ථාපනය කිරීමේ ස්ක්‍රිප්ට් සමඟ සැකසීමට මම කල්පනා කරමි github. මෙන්න උදාහරණ කිහිපයක්:

$ PATH හි ඇති ස්ක්‍රිප්ට් ස්ථාපනය කළ යුතු යැයි මම සිතමි/usr/bin , නමුත් සුදුසු ස්ථානය පිළිබඳව මට තවමත් විශ්වාස නැත.


1
ඔබගේ උත්සාහය මම අගය කරමි, නමුත්, "මම නොදන්නා දේ මම නොදනිමි" කොටස හැර, ඔබ නැවත නැවතත් ගර්ට්විජ්ක්ගේ පිළිතුර.
danzel

1
andanzel මම හිතන්නේ ප්‍රධාන කොටස වන්නේ man hiergertvdijk ගේ පිළිතුර ආමන්ත්‍රණය නොකළ කොටසයි. එනම් ඔබට වෙබයේ කියවීමට යොමු නොවී විධාන රේඛාවේ නාමාවලි ධූරාවලි ව්‍යුහය ලබා ගත හැකිය (එනම් මෙහි).
WinEunuuchs2Unix

1
එය සිත්ගන්නා තොරතුරු, මම එකඟ වෙමි. නමුත් gertvdijk දැනටමත් ගොනු පද්ධති ධූරාවලිය ප්‍රමිතිය සඳහන් කර ඇත (එය man hierIMO හි තොරතුරුමය වශයෙන් ප්‍රමාණවත් නොවන උපුටා ගැනීමකි). කෙසේ වෙතත්, මෙය මගේ පෞද්ගලික මතය විය හැකිය.
danzel

1
අපගේ දෘ hard තැටිවල ඇති දේට වඩා ගැඹුරු විශ්ලේෂණයක් වෙබ් අඩවි වලට ඇති බව මම එකඟ වෙමි. මම උත්සාහ කරන්නේ අන්තර්ජාලය භාවිතා නොකර අපගේ දෘ hard තැටිවල ඇති තොරතුරු පෙන්වා දීමට පමණි. ඉහත සඳහන් කළ සබැඳෙන අමතරව ඇත අතුරුදහන් /usr/X11R6/bin හා /usr/local/binඇතුළත් වන man heir.
WinEunuuchs2Unix

@ WinEunuuchs2Unix, නැවත අන්තිම ඡේදය; /usr/local/binඔබ පැකේජ කළමනාකරු නොවන බැවින් ඇයි ?
පැසීරියර්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.