通常のユーザーとしてWindows 7 Home Premiumにリンクを作成するにはどうすればよいですか?[複製]


69

この質問にはすでに答えがあります:

私はLinuxの男なので、Windowsで何かをしようとすると非常に迷子になります。次のリンクを作成しようとしています:

mklink /d C:\backup\data \\myth\backup\data

しかし、この操作を実行するのに十分な権限がありません。Windows 7で十分な特権を取得するにはどうすればよいですか?

更新:

C:\ backup \ dataを右クリックし、認証されたユーザーのアクセス権をフルアクセスに変更し、マシンを再起動して、運よくコマンドを再試行しました。誰か他に提案がありますか?


管理者としてリンクを作成しようとしているとき、c:\ backup \ dataがまだ存在していないことを確認してください。
デビッドd C eフレイタス

回答:


112

ここで述べたように

シンボリックリンクを作成するには、デフォルトで管理者にのみ付与されるSeCreateSymbolicLinkPrivilege(「シンボリックリンクの作成」)が必要です(ただし、セキュリティポリシーを使用して変更できます)。

ポリシーを変更するには:

  1. StartRunを右クリックして起動しsecpol.mscます。

  2. 開いSecurity Settings → Local Policies → User Rights Assignmentて選択しますCreate symbolic links(これはを表しますSeCreateSymbolicLinkPrivilege)。

ここに画像の説明を入力してください

  1. アイテムをダブルクリックしUsersて、リストに自分(またはグループ全体)を追加します。

ログアウトして再度ログインすると、変更が適用されます。


2
Win7では、「ユーザーまたはグループの選択」ダイアログから「オブジェクトタイプ」ボタンをクリックして「グループ」を追加するまで、「ユーザー」グループは表示されませんでした。
ジョナサンハートリー

7
これは、ユーザー、「ユーザー」、または「全員」を追加するかどうかに関係なく、私には機能しません。ログアウトして再起動しましたが、ホームディレクトリで「mklink / D docs Dropbox」コマンドを実行しても「この操作を実行するための十分な権限がありません」と表示されます。ディレクトリではなくファイルを試しても同じ結果になります。
ジョナサンハートレー

3
Brandon Donnelsonの答えで解決した私の問題:上記に加えて、「mklink」を実行しているユーザーは管理者にはなれません。
ジョナサンハートリー

@ジョナサン。私にはうまくいきませんでした。そしてそれはばかげているように思えるか、多分私は誤解しています。Windows 7では、管理者がシンボリックリンクを作成することはできませんが、管理者が特権を付与した後は非管理者のみが作成されます。
ベン

4
@ベン私はそれがバルミーだと思うことに同意します。しかし、反映して、右クリックして「管理者として実行」を選択して「cmd」ウィンドウを実行し、問題を解決したと思います。プロセスの起動時に、「管理者として実行」を選択しない限り、Windowsがプロセスから管理者特権を削除すると説明してくれました。その時点で、管理者でない場合は、管理者パスワードを入力する必要があります。すでに管理者であれば、何も入力する必要はありません。おそらく、cmdウィンドウ内から 'mklink'を実行できました。
ジョナサンハートリー

19

シンボリックリンクを作成できない場合でも、「ジャンクション」を作成できることを発見しました。

mklink [/D] /J junctionname filename

ここで、/ Jは「ジャンクションの作成」を示し、/ Dは、指定されたファイルがディレクトリであるかどうかを示しています。(私のユーザーは現在管理者です)

ただし、「bat」ファイルへのジャンクションは実行可能ではないようであるため、これは実際には使用されません。

これがなぜなのか、またはOPの問題に対する代替アプローチを提供するためにどのように修正できるのか、誰もが理解していますか?


11
mklink /H管理者権限なしでハードリンク()を作成でき、実行可能になります。ハードリンクはファイル用、ジャンクションはディレクトリ用、シンボリックリンクは両方用です(そして/Dシンボリックリンクがディレクトリ用であることを示すために使用されます)。
ブリリアンド

3
ただし、OPの例ではジャンクションとハードリンクはどちらも役に立ちません。どちらもネットワークドライブを指すことができないためです(ハードリンクは同じパーティションに制限され、ジャンクションはローカルドライブに制限されます)。シンボリックリンクまたはWindowsショートカットのみがそれを実行できます。
ブリリアンド

12

非管理者だけがそれを行えることがわかりました。非管理者を追加してシンボリックリンクを作成し、非管理者として実行します。管理者以外の権限を持つユーザーを追加する必要があります。次に、非管理者のターゲットに許可を与えて、runas mklinkを実行できるようにします。


1
これで問題は完全に解決しました。ユーザーは管理者ですが、「guest」アカウントを有効にして「runas / user:guest cmd」を呼び出し、その新しいcmdセッションからmklinkを実行するまで「mklink」は機能しません。また、ゲストアカウントがホームディレクトリにcdして変更できるように一時的に権限を付与する必要がありました。ホームディレクトリでは、シンボリックリンクが必要でした。
ジョナサンハートレー

レコードについては、「mklink」は管理者である通常のユーザーでは機能しませんが、「runas / user:guest cmd」であるcmdから起動した場合は機能します(必要な引用符がわかりませんでした(ゲストゲストとしてmklinkコマンドを直接実行する)または「administrators」グループから自分のアカウントを削除するとき。
ジョナサンハートリー

3
また、価値、ことを指摘され、管理者権限を持つアカウントでMKLINK正常に実行することが可能に。しかし、それにはUACをオフにする必要があります。
ウラジミールシジコフ

2

上記のソリューションは、マシン上で「ゲスト」ユーザーを作成できなかっただけでなく、ツールのすべてのユーザーにマシン上でも作成するように依頼できないため、うまくいきませんでした。また、管理者コンソールを使用することを要求することは合理的ではありません。

私の解決策は使用することです:elevate.cmdとelevate.vbs

  1. ダウンロード先:http : //technet.microsoft.com/en-us/magazine/2008.06.elevation.aspx
  2. これらの2つのファイルをシステムパス(またはネットワーク上の便利な場所)に配置します
  3. elevate.cmd cmd /c "cd /d LINK_DIR && mklink /D LINK_NAME LINK_TARGET_PATH"

短所:elevate.cmdはすぐに戻りますが、UACダイアログへの応答には時間がかかります。これにより、「UACダイアログはまだ大丈夫ですか?」を追加する必要がありました。スクリプトへの質問。次のコマンドの終了コードを確認することにより、「elevate.cmd」をスキップすることができます:(whoami /groups | find "S-1-16-12288"終了コード0は、Adminstratorコンソールがあることを意味します)。


2

今日もこの問題に出くわしました。コンピューター上でシンボリックリンクを作成しようとするNAntビルドタスクがありました。特権がないために拒否されていました。私の問題を解決するのに役立つこの投稿を見つけました:http : //josh.mainelan.net/tag/mklink/

関連セクション:

  1. 実行ボックスを表示し、「secpol.msc」と入力して[OK]をクリックします。
  2. セキュリティ設定\ローカルポリシー\ユーザー権利の割り当てフォルダの下に移動します。
  3. 「シンボリックリンクの作成」を見つけて、Usersグループを追加します。

これを行った後、コンピューターまたは何かを再起動する必要があると思います。


1

このコマンドを実行するには、管理者としてコマンドプロンプトを実行します。

スタートメニューにcmd(またはコマンド)と入力して右クリックし、「管理者として実行」を選択します。

これで、実行するコマンドはすべて管理者権限で実行されます。


他の人が述べたように、SeCreateSymbolicLinkPrivilegeが必要なものです。ただし、Windows 7の管理者であっても、ほとんどのプログラムは管理者権限で実行されません。プログラムの管理者権限を取得するには、上記の手順に従ってください。
teknikqa

私は彼が質問をしている理由です、管理者として実行している知っていると思います
barlop

-5

Ultimate Windows Tweakerをお勧めします。これを使用して「所有権の表示」を選択して権限の問題を回避し、「コマンドウィンドウをここに表示」を選択して正しいフォルダーでコマンドプロンプトを開きます。

代替テキスト


エクスプローラーをインストールして開き、リンクするフォルダーを右クリックして「所有権を取得」してから、ここからコマンドウィンドウを開きました。上記のmklinkコマンドを実行し、同じエラーが再度発生しました。
ステフェンム

まあ、試してみる価値があります。最近のWindows-> Linuxユーザーとして、機能せず、理由が分からないことについて完全に同情できます。幸運を。
外部爆破

5
皮肉なことに、所有権の取得もコマンドプロンプトの表示も、管理者特権を与えません。Linuxのように。
surfasb

-1投稿する前に自分で試してみて、それが機能しないことを確認してください
-barlop
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.