विंडोज 7 में प्रतीकात्मक लिंक बनाने की अनुमति?


59

मैं किसी विशेष उपयोगकर्ता को विंडोज 7 में सिमलिंक बनाने की अनुमति कैसे दे सकता हूं?

मैंने "समूह नीति" और Google के माध्यम से खोज की है, लेकिन कुछ भी नहीं पाया है।

साइड नोट पर, क्या समूह नीति संपादक में सब कुछ खोजने का एक तरीका है? फ़िल्टर केवल विशेष उपप्रकार पर काम करते हैं। मैं वास्तव में फिल्टर का उपयोग कर कुछ भी नहीं मिला।


2
BTW क्या किसी को पता है कि क्यों सहानुभूति बनाने के लिए व्यवस्थापक अनुमतियों की आवश्यकता होती है? उनमें इतना खतरनाक क्या है?
मोनसिनगोर

1
@ महाशय: मैंने बहुत समय पहले देखा था कि Microsoft दावा करता था कि बहुत से कार्यक्रम उन्हें सुरक्षित रूप से नहीं संभाल सकते। वैसे भी मैं इस बात से नाराज़ हूं कि उन्हें उपयोग करने के लिए ऊंचाई की आवश्यकता है।
जोशुआ

जवाबों:


63
  1. स्थानीय समूह नीति संपादक खोलें : Run> gpedit.msc। यदि वह कोशिश नहीं करता है secpol.msc(ध्यान दें, विंडोज होम उपयोगकर्ताओं को पहले समूह-नीति-संपादक को सक्षम करने की आवश्यकता हो सकती है )।

  2. (विंडोज प्रो उपयोगकर्ता पहले दो आइटम नहीं देख सकते हैं) पर जाएं:

    Computer configuration → Windows SettingsSecurity Settings → Local Policies → User Rights Assignmentऔर संपादित करें Create symbolic links

    यहाँ छवि विवरण दर्ज करें

  3. उस उपयोगकर्ता या समूह को जोड़ें जिसे आप प्रतीकात्मक लिंक बनाने की अनुमति देना चाहते हैं।

  4. यदि आपने अपना स्वयं का उपयोगकर्ता खाता जोड़ा है, तो आपको परिवर्तन करने के लिए लॉग इन करना होगा और परिवर्तन को प्रभावी बनाने के लिए वापस लॉग इन करना होगा।

नोट : इस सेटिंग का व्यवस्थापक समूह से संबंधित उपयोगकर्ता खातों पर कोई प्रभाव नहीं है। उन उपयोगकर्ताओं को हमेशाmklink ऊंचे वातावरण में (प्रशासक के रूप में) चलना होगा क्योंकि यूएसी एक गैर-एलिवेटेड एक्सेस टोकन बनाते समय विशेषाधिकार हटा देता है । समूह नीति सेटिंग खोजने के लिए एक आसान एक्सेल संदर्भ शीट है: विंडोज और विंडोज सर्वर के लिए समूह नीति सेटिंग्स संदर्भ


12
यहाँ यह निम्नलिखित की तरह अधिक दिखता है, यदि संदर्भ में कोई गड़बड़ हो तो नियंत्रण के लिए: नियंत्रण कक्ष> प्रशासनिक उपकरण> स्थानीय सुरक्षा नीति> स्थानीय नीतियां> उपयोगकर्ता अधिकार असाइनमेंट> प्रतीकात्मक लिंक बनाएं और जिस तरह से आपको लॉगआउट करने और सेटिंग्स के लिए फिर से लॉगिन करने की आवश्यकता है। लागू करने के लिए।
सेलेडेक

5
और आप पहले भाग को छोड़ने के लिए secpol.msc चला सकते हैं, फिर आप सभी को छोड़ दिया है: स्थानीय नीतियां> उपयोगकर्ता अधिकार असाइनमेंट> प्रतीकात्मक लिंक बनाएं
सेलेडेक

5
इसके अलावा: CMD या सिर्फ रन डायलॉग से "gpupdate / force" रनिंग सेटिंग को लागू करना चाहिए।
टोबियास प्लूटैट

1
Microsoft-नफरत-गैर-विंडोज-8-प्रो उपयोगकर्ताओं के लिए रजिस्ट्री के माध्यम से ऐसा करने का कोई तरीका? gpedit.msc उनके लिए उपलब्ध नहीं है
szx

4
पुनः - "उन उपयोगकर्ताओं को हमेशा एक उन्नत वातावरण (व्यवस्थापक के रूप में) में mklink चलाना होगा" ... इसलिए व्यवस्थापकों को हमेशा उन्नत ... arg के साथ चलना होगा।
ट्रेवर बॉयड स्मिथ

0

कुछ विंडो कॉन्फ़िगरेशन छूट जाते हैं gpedit.msc। इस मामले में आप एक विकल्प के रूप में कोशिश कर सकते हैं:

  1. इस PowerShell स्क्रिप्ट को यहां से चलाना :
    function addSymLinkPermissions($accountToAdd){
        Write-Host "Checking SymLink permissions.."
        $sidstr = $null
        try {
            $ntprincipal = new-object System.Security.Principal.NTAccount "$accountToAdd"
            $sid = $ntprincipal.Translate([System.Security.Principal.SecurityIdentifier])
            $sidstr = $sid.Value.ToString()
        } catch {
            $sidstr = $null
        }
        Write-Host "Account: $($accountToAdd)" -ForegroundColor DarkCyan
        if( [string]::IsNullOrEmpty($sidstr) ) {
            Write-Host "Account not found!" -ForegroundColor Red
            exit -1
        }
        Write-Host "Account SID: $($sidstr)" -ForegroundColor DarkCyan
        $tmp = [System.IO.Path]::GetTempFileName()
        Write-Host "Export current Local Security Policy" -ForegroundColor DarkCyan
        secedit.exe /export /cfg "$($tmp)" 
        $c = Get-Content -Path $tmp 
        $currentSetting = ""
        foreach($s in $c) {
            if( $s -like "SECreateSymbolicLinkPrivilege*") {
                $x = $s.split("=",[System.StringSplitOptions]::RemoveEmptyEntries)
                $currentSetting = $x[1].Trim()
            }
        }
        if( $currentSetting -notlike "*$($sidstr)*" ) {
            Write-Host "Need to add permissions to SymLink" -ForegroundColor Yellow

            Write-Host "Modify Setting ""Create SymLink""" -ForegroundColor DarkCyan

            if( [string]::IsNullOrEmpty($currentSetting) ) {
                $currentSetting = "*$($sidstr)"
            } else {
                $currentSetting = "*$($sidstr),$($currentSetting)"
            }
            Write-Host "$currentSetting"
        $outfile = @"
    [Unicode]
    Unicode=yes
    [Version]
    signature="`$CHICAGO`$"
    Revision=1
    [Privilege Rights]
    SECreateSymbolicLinkPrivilege = $($currentSetting)
    "@
        $tmp2 = [System.IO.Path]::GetTempFileName()
            Write-Host "Import new settings to Local Security Policy" -ForegroundColor DarkCyan
            $outfile | Set-Content -Path $tmp2 -Encoding Unicode -Force
            Push-Location (Split-Path $tmp2)
            try {
                secedit.exe /configure /db "secedit.sdb" /cfg "$($tmp2)" /areas USER_RIGHTS 
            } finally { 
                Pop-Location
            }
        } else {
            Write-Host "NO ACTIONS REQUIRED! Account already in ""Create SymLink""" -ForegroundColor DarkCyan
            Write-Host "Account $accountToAdd already has permissions to SymLink" -ForegroundColor Green
            return $true;
        }
    }
  1. पॉलीडिट डाउनलोड करें जो कि gpedit.msc के लिए फ्रीवेयर विकल्प की तरह दिखता है

फिर gpupdate /forceतुरंत परिवर्तन लागू करने के लिए चलाएँ


1
स्रोत देने के अलावा। यदि स्रोत मौजूद नहीं है तो कृपया स्क्रिप्ट जोड़ें।
miroxlav

विंडोज स्टार्टर एडिशन, होम और होम प्रीमियम में gpedit.msc शामिल नहीं है। इसे स्थापित करने के निर्देश मेरे प्रश्न में हैं और जवाब दें Windows Starter Edition, Home और Home Premium में gpedit शामिल नहीं है, मैं इसे कैसे स्थापित करूं?
DavidPostill
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.