chown සංකේතාත්මක සබැඳිය වෙනස් නොවේ


327

මම විධානය සමඟ සංකේතාත්මක සබැඳියක පරිශීලක / කණ්ඩායම වෙනස් කිරීමට උත්සාහ කරමි:

$ chown -h myuser:mygroup mysymbolic/ 

නමුත් එය වෙනස් නොවේ. මම root ලෙස ලොග් වී සිටිමි. වත්මන් පරිශීලකයා / කණ්ඩායම root ලෙස සකසා ඇත: root. වැරැද්ද කුමක්ද?


ඔබ භාවිතා කරන්නේ කුමන මෙහෙයුම් පද්ධතියද? Manaul පිටුවට අනුව, -h විකල්පය බලපාන්නේ සංකේතාත්මක සම්බන්ධකයේ හිමිකාරිත්වය වෙනස් කළ හැකි පද්ධති වලට පමණි.
ජිචාවෝ

ඔබ සිටින්නේ එන්එෆ්එස් සවිකිරීමකද?
ඕර්ටෝමාලා ලොක්නි

අවසන් වන ඕනෑම දෙයක් /නාමාවලියකි. ඔබ අදහස් mysymbolicකළේ සංකේතාත්මක සබැඳිය මිස mysymbolic/එය යොමු කරන නාමාවලිය නොවේ.
ඩේවිඩ් ෂ්වාට්ස්

Answers:


397

මම ඉලක්කය අවසානයේ කප්පාදුවක් කරමින් සිටියෙමි:

chown -h myuser:mygroup mysymbolic/ 

අවසානයේ ඇති කප්පාදුව ඉවත් කර ක්‍රියා කරයි. මෙන්න නිවැරදි ක්‍රමය:

 chown -h myuser:mygroup mysymbolic

9
මට උබුන්ටු වැඩ කරන්නේ නැහැ
රාඩෙක්

2
ඇවැත්නි, මෙය සොයා ගැනීමට මට පැය ගණනක් ගත විය.
අර්ථ දක්වයි

54
Ad රාඩෙක් මට -hධජය මතක ඇති තාක් කල් එය උබුන්ටු වල වැඩ කළේය .
IQAndreas

31
පසුපස කප්පාදුව සමඟ -h සහ නැතිව උබුන්ටු හි මා වෙනුවෙන් වැඩ කරයි .
friederbluemle

10
අවුරුදු 4 කට පසු මට විශ්වාස කළ නොහැකිය, මම මගේ අතීතයටම එම ගැටලුවෙන්ම පීඩා වින්දා, මිසින් '-හ්'!
ඇන්ටනි ඩී ඇන්ඩ්‍රියා

29

මම මෙය මා විසින්ම අත්හදා බැලූ අතර එය මට වැඩ කරයි. ඔබ සතුව -h තිබේ නම් එය සංකේතාත්මක සබැඳියේ හිමිකරු වෙනස් කරයි, නමුත් ඔබ එසේ නොකරන්නේ නම් එය ගොනුවේ හිමිකරු වෙනස් කරයි මිස සබැඳිය නොවේ.

නමුත් සංකේතාත්මක සබැඳිය ඩිරෙක්ටරියට සම්බන්ධ වී ඇති බවක් නොපෙනේ


2
එය වටින දෙය සඳහා, OS X හි මෑන් පිටුව (ආරුක්කු) ලිනක්ස් වලට වඩා -h විකල්පය මත වඩා පැහැදිලි ය. "-H ගොනුව සංකේතාත්මක සබැඳියක් නම්, පරිශීලක හැඳුනුම්පත සහ / හෝ සබැඳියේ කණ්ඩායම් හැඳුනුම්පත වෙනස් කරන්න." එදිරිව "-h, --no-dereference වෙනුවට සංකේතාත්මක සබැඳි ඕනෑම නමෙන්ම ගොනුව (පමණක් symlink අයිතිය වෙනස් කළ හැකි පද්ධති මත ප්රයෝජනවත්) බලපාන"
Matijs

8

මට chownඩිරෙක්ටරියකට යාමට නොහැකි වූ -hනමුත් සම්පූර්ණ මාර්ගය භාවිතා කිරීම සාර්ථක විය.

# ls -al
drwxr-xr-x 2 deploy deploy 4096 Dec 30 10:29 .
drwxr-xr-x 3 deploy deploy 4096 Dec 30 08:59 ..
lrwxrwxrwx 1 root   root     32 Dec 30 09:02 apps -> /u/apps/
# chown -h deploy:deploy apps
# ls -al
drwxr-xr-x 2 deploy deploy 4096 Dec 30 10:29 .
drwxr-xr-x 3 deploy deploy 4096 Dec 30 08:59 ..
lrwxrwxrwx 1 root   root     32 Dec 30 09:02 apps -> /u/apps/
# chown -h deploy:deploy apps/
# ls -al
drwxr-xr-x 2 deploy deploy 4096 Dec 30 10:29 .
drwxr-xr-x 3 deploy deploy 4096 Dec 30 08:59 ..
lrwxrwxrwx 1 root   root     32 Dec 30 09:02 apps -> /u/apps/
# pwd 
/var/www/html
# chown -h deploy:deploy /var/www/html/apps
# ls -al
drwxr-xr-x 2 deploy deploy 4096 Dec 30 10:29 .
drwxr-xr-x 3 deploy deploy 4096 Dec 30 08:59 ..
lrwxrwxrwx 1 deploy deploy   32 Dec 30 09:02 apps -> /u/apps/

5

ඉලක්කය ගොනුවක් හෝ නාමාවලියක්ද?

එය නාමාවලියක් නම් -H (ඉහළ අකුර H) උත්සාහ කරන්න


ඉලක්කය නාමාවලියකි

නාමාවලිය පිළිබඳ මගේ සංස්කරණය කළ පිළිතුර බලන්න

6
නූල් සම්බන්ධතාවයට කණගාටුයි, නමුත් නිවැරදි සින්ටැක්ස් කුඩා අකුර 'h' සමඟ ඇති බව පෙන්වා දීමට කැමැත්තෙමි.

4

සරලවම.

chown -h myuser:mygroup <symlink> [without trailing slash]

ප්‍රමාණවත් විය යුතු අතර වැඩ කළ යුතුය!  


3

මයූසර් විසින් එම සබැඳිය මයූසර්ගේ නිවසේදී නැවත සාදන්න, සහ සුඩෝ විසින් ඉලක්කගත ස්ථානයට මෙම සබැඳිය එම්වී කරන්න.

උදාහරණයක් ලෙස: (myuser ලෙස), ln -s somedir/ linkname (පරිශීලක නාමාවලියෙහි කිසියම් / නොපවතින නම් බිඳුණු සබැඳියක් වනු ඇත)

එවිට, sudo mv linkname targetlocation( targetlocation/somedir/පවතින වලංගු සබැඳියක් බවට පත්වේ )


ඔබේ පිළිතුර විස්තර රහිතව සහ සම්පූර්ණයෙන් තේරුම් ගැනීමට අපහසුය. වැඩි විස්තර සැපයීම සඳහා කරුණාකර ඔබේ පිළිතුර සංශෝධනය කිරීම ගැන සලකා බලන්න.
ජේම්ස් මර්ට්ස්

1

මටත් ඒ හා සමාන ගැටලුවක් තිබුණා. මට නම්, මම chmod ලෙස හැඳින්වූයේ කෙසේ වෙතත් සංකේතාත්මක සබැඳිය root ලෙස chmod කිරීමට මට නොහැකි විය. මෙයට ව්‍යාකූලත්වයක් එක් කිරීම සඳහා, නාටිලස් හිමිකරු / කණ්ඩායම කිසිවක් පෙන්වන්නේ නැත. අයිතිකරු හිස් විය. ඉතින් මම උත්සාහ කළේ සංකේතීය සබැඳිය වෙනස් කිරීමට උත්සාහ කළේ chmod වැඩ නොකරන නිසාත්, නැටිලස් බිඳ වැටුණු නිසාත් root ලෙස ධාවනය වන නාටිලස් භාවිතා කරමින් !!

නමුත් මම හිතන්නේ මම ගැටලුව හදුනා ගත්තා. සංකේතාත්මක සබැඳිය නාමාවලිය සංකේතාත්මක සම්බන්ධකයට වඩා වෙනස් අවසරයන් ඇති බව පෙන්නුම් කරයි. ඒ නිසා මම ඉලක්ක නාමාවලිය (-h භාවිතා කරමින්) මගේ පරිශීලක / කණ්ඩායම් නාමයට chmoded කළා. ඉන්පසු සංකේතාත්මක සබැඳිය chmod'ed කර එය ක්‍රියාත්මක විය! සංකේතාත්මක සබැඳියේ විස්තර නාටිලස්හි (මූල අවසරයන් සහිතව) බැලීම දැන් බිඳ වැටෙන්නේ නැත.

එබැවින් වෙනත් අයට සමාන ගැටළුවක් ඇති විට, ඉලක්ක නාමාවලියෙහි / ගොනුවේ අවසරයන් පරීක්ෂා කර එය සංකේතාත්මක සබැඳිය ඔබ සැකසෙන අවසරයන්ට අනුකූලද යන්න තහවුරු කරගන්න.


1

ownerසිම්ලින්ක් වෙනස් කිරීම වැඩ කළ හැක්කේ ඔබට එය පැවරීමට අවශ්‍ය නව පරිශීලකයාට ඉලක්කයට ප්‍රවේශ විය හැකි නම් පමණක් බව සලකන්න .

නිදසුනක් ලෙස, ඔබේ ඉලක්කය ඔබට පැවරීමට අවශ්‍ය පරිශීලකයාට ප්‍රමාණවත් අයිතිවාසිකම් නොමැති ෆෝල්ඩරයක් තුළ තිබේ නම්, ln -s commandහැසිරීම එය කිසිසේත් නොකරනු ඇත.


1

සොලාරිස් සඳහා (S11.3 මත සත්‍යාපනය කර ඇත) නාමාවලියකට සංකේතාත්මක සබැඳියක් සඳහා ඔබට ක්‍රියාත්මක කිරීමට අවශ්‍ය වනු ඇත

root@ac11x017:/var/tmp$ ls -lal dumpdir
lrwxrwxrwx   1 root     root          16 Jun 15 09:08 dumpdir -> /data/dumpdir/
root@ac11x017:/var/tmp$ chown -RP oracle:oinstall dumpdir
lrwxrwxrwx   1 oracle   oinstall      16 Jun 15 09:09 dumpdir -> /data/dumpdir/
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.