Windows 8'de komut satırından yönetici olarak çalıştır


11

Not Defteri'ni yönetici olarak çalıştırmaya çalışıyorum, böylece host dosyamı komut satırından düzenleyebiliyorum.

Denedim runas /user:(myusername)\administrator "notepad c:\windows\system32\drivers\etc\hosts"sonra şifremi girdim ve alıyorum

ÇALIŞMA HATASI: Çalıştırılamıyor - not defteri c: \ windows \ system32 \ drivers \ etc \ hosts 1327: Hesap kısıtlamaları bu kullanıcının oturum açmasını engelliyor. veya bir politika kısıtlaması uygulanmıştır.

Not: Kullanıcı hesabıma izin verip vermediğimi biliyorum, yönetici olarak çalıştırmadan düzenleyebilirim. Ancak ana bilgisayar dosyasındaki izinleri değiştirmek zorunda kalmadan bunun nasıl yapıldığını bilmek istiyorum.

Yanıtlar:


7

Tamam, bu işe yaramazsa nedeni , Windows Vista ve daha yeni bir güvenlik modelidir. Yöneticiler grubundaki bir hesap hala sınırlı bir kullanıcı olarak açıkça yükseltilmeyen her şeyi çalıştırır. İstisna, her şeyi yükseltilmiş olarak Administratorçalıştıran hesaptır . Bu nedenle, giriş hesabınız olarak kullanmanın genel olarak kötü olduğu kabul edilir ve normalde devre dışı bırakılır.

Bunu etkinleştirebilir ve ardından runasbu hesap olarak çağırmak için kullanabilirsiniz. Bu, birkaç problem ortaya çıkarır - şimdi, farklı ortam değişkenleri ayarlanmış olabilecek farklı bir kullanıcının ortamıyla çalışıyorsunuz. 1

Bunu yapmanın en iyi yolu, aslında UAC üzerinden şu anki kullanıcınız olarak yükselecektir. Ne yazık ki, standart komut istemi bu yeteneği içermez - ancak hem üçüncü taraf programları hem de yerleşik PowerShell ve WSHell (VBScript) bunu yapabilir.


Diğer cevabımdan ödünç alarak , PowerShell komutunu doğrudan şu şekilde çağırabilirsin powershell -c:

powershell -c start -verb runas notepad C:\Windows\System32\drivers\etc\hosts

temelde PowerShell'e aşağıdakini çalıştırmasını söyler ( starttakma addır Start-Process):

Start-Process -Verb "runas" notepad C:\Windows\System32\drivers\etc\hosts

Buradaki numara, fiili geçiyor ve runasUAC'yi tetikliyor.

Ne Start-Process -Verb runasstandart cmd ne de o runasanki çalışma dizinini geçemez , bu yüzden her zaman tam yolu bu şekilde yükselttiğiniz komutlarda kullanın.

Ayrıca, bazı argümanların argümanlarla -cçakışabileceğini Start-Process, bu nedenle en güvenli yolun:

powershell "-c start -verb runas commandname -argumentlist 'arg1 arg2'"

1 Not: bu sadece kullanıcının çevre değişkenleri için geçerlidir . Bir üst süreçte ayarladığınız ortam değişkenleri UAC tarafından iletilmez ! Bu aynı zamanda geçerlidir runasve orada daha da kötüdür çünkü doğru kullanıcının değişkenlerini bile alamazsınız.


Benim için çift tırnak ile işe yaramadı.
Vince,

@Ghodmode Çalıştırmayı denediğiniz satırın bir örneğini verebilir misiniz? Son örneğe atıfta bulunuyorsanız, ilk alıntıyı sonrasına taşımayı deneyin -c. (bunun -c "startyerine "-c start)
Bob

Bir programı yönetici olarak çalıştırmak için powershell işleminin yüksek çalıştırılması gerekmediğini unutmayın .
jiggunjer

Windows 10 2019-03 güncellemesinden önce çalışıyor olması garip.
Qwerty


-1

Deneyebileceğiniz bir şey, yönetici olarak komut istemini açmak ve oradan not defteri çalıştırmaktır. Sadece yazın Notepad. Bunu yaptıktan sonra oradan dosyayı tıklayıp ardından ana bilgisayar dosyasına gidip onu açabilirsiniz. Sonunda, normal bir şekilde tasarruf edebilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.