SYSTEM kullanıcısı olarak komut istemi (Windows 7)


10

Windows 7'de SYSTEM kullanıcısı olarak komut istemini nasıl alabilirim?

Bağlam: Bir bilgisayar başlangıç ​​komut dosyasını test ediyorum ve kullanıcı hesabım yerine SYSTEM olarak çalıştırıldığında bir komutun davranışını bulmam gerekiyor.

Bunu atve ile yapmanın yollarını gördüm psexec, ancak bu yöntemler yalnızca Windows XP veya Windows Vista'da çalışıyor gibi görünüyor.

Windows 7 Pro SP1 kullanıyorum.


1
SİSTEM genellikle etkileşimli bir hesap değil, kullanıcı hizmetleri altında çalışır ...
Austin T Fransızca

1
Belki bir şeyi yanlış anlıyorum. Amaç: Grup İlkesi aracılığıyla kuruluşumuza dağıtmayı planladığım bir senaryom var. Komut dosyası çalışıyor olsa da, çalışmıyor.
stephenwade

1
Komut dosyası, sanırım SİSTEM olarak çalışan bir bilgisayar başlangıç ​​komut dosyası olarak çalışacak; Bu nedenle komut dosyası sınamak için SİSTEM olarak bir komut istemi istiyorum. Başlangıç ​​komut dosyalarının SİSTEM olarak çalışmasını düzeltir miyim? Öyleyse, senaryomu test etmenin en iyi yolu nedir?
stephenwade

1
Grup İlkesi'ndeki bir bilgisayar başlangıç ​​komut dosyası.
stephenwade

1
I've seen ways to do this with at and psexec, but those methods only appear to work on Windows XP or Windows 7. I'm using Windows 7 Pro SP1. Um… ఠ_ ಠ
Synetech

Yanıtlar:


3

Bu, Stack Overflow'da istendi . Kabul edilen cevap Scott'ın önerdiği şekilde PsExec'i ( Systinternals paketinden) kullanır .

Başka bir çözüm, komut yorumlayıcısını çalıştırmak için Sistem hesabı altında çalışan bir hizmet oluşturmayı içerir. Bunu el ile yapabilir veya hizmetleri oluşturan, istemi çalıştıran ve ardından hizmeti otomatik olarak silen bir program kullanabilirsiniz . Ben sadece denedim ve bir tedavi çalıştı:

CMD'nin Sistem olarak çalıştığı Görev Yöneticisi'nin ekran görüntüsü


9

Microsoft'un Systinternals paketinden PsExec kullanın . PsExec, bir yönetici komut isteminden çalıştırılmalıdır. -i -sKomut dosyanızı / komut isteminizi başlatmak için anahtarları kullanın .

Resim açıklamasını buraya girin


1
Yönetici komut isteminde bile " Access is denied." mesajını alıyorum
stephenwade

@stephenwade Yönetici komut istemini nasıl alıyorsunuz, sağ tıklayıp "Yönetici Olarak Çalıştır" mı yapıyorsunuz? PsExec'i başlatmadan önce pencereyi açtığınızda kutucukta "Yönetici: Komut İstemi" yazıyor mu? Ayrıca çalıştırmak için bir ağ dosyasına işaret etmeye çalışıyorsunuz, uzak paylaşıma bağlanmak için belirteç yükseltme işlemi sırasında kayboluyor.
Scott Chamberlain

Evet, Başlat menüsünde Komut İstemi'ne sağ tıkladım ve "Yönetici Olarak Çalıştır" ı tıkladım.
stephenwade

1
H: sürücüsüne bağlı bir ağ klasöründen psexec çalıştırıyorum. Sorun bu olabilir mi?
stephenwade

1
@stephenwade evet, yükselttiğinizde ağ sürücülerinizi kaybettiğinizde (kullanıcı hesabına bağlı oldukları ve kullanıcı hesaplarını değiştirdiğiniz için), yerel kopyalayın ve çalışacaktır.
Scott Chamberlain

1

Bunu yaparken çok dikkatli olurdum . SYSTEM, Yönetici hesabıdır, ancak daha yüksek bir erişim düzeyine sahip olduğu için çok, çok daha tehlikelidir.

Genel olarak, SİSTEMİNİZ etkileşimli bir profil değil, altında çalıştırılan hesap hizmetleridir. Yine de bunu yapmanın yolları var.

Bunu okurken iyi bir yaklaşımımız olduğunu düşünüyorum:

  1. Giriş yaptığınız hesabın adını kontrol edin (Başlat'ı tıklayın. Giriş
    yaptığınız hesabın adını göreceksiniz.)
  2. Komut istemini başlatın. (Başlat | Çalıştır | cmd | [Enter])
    komut isteminde cmd.exe'yi çalıştırmak için bir zamanlama oluşturun.
    Bir program oluşturmak için aşağıdaki satırı yazın ve enter tuşuna basın.
    10:41 / interaktif “cmd.exe”
    de cmd.exe'yi 10:41'de çalıştırmak için bir zamanlama oluşturur.
    (Test ettiğiniz için sisteminizdeki saati kontrol edin ve iki veya üç dakika ekleyin.) Bu saati yerel saatinize göre değiştirin
    İpucu: “ at ” yazıp
    yukarıdakilerden sonra enter tuşuna basarak programın yerleştirilip yerleştirilmediğini kontrol edebilirsiniz. adım.
  3. Program için ayarladığınız süreyi bekleyin.
    cmd.exe belirtilen zamanda başlatılır.
  4. Cmd.exe zamanlanan zamana göre başlatıldıktan sonra [CTRL] + [ALT] + [DEL] tuşlarına basın ve görev yöneticisini başlatın.
    “İşlem” sekmesini seçin , işlem listesinden explorer.exe dosyasını seçin ve “ İşlemi Sonlandır ” düğmesine tıklayın.
    Bir onay diyalogu alacaksınız. İşlemi sonlandırmak için “Evet” e tıklayın.
  5. Kapat (X) düğmesine tıklayarak görev yöneticisini kapatın.
    İlk cmd penceresini kapatın (ikinciyi değil ilkini kapatmaya dikkat edin.)
  6. Artık sadece ikinci komut istemi penceresine ve boş bir masaüstüne sahipsiniz.
    Komut istemine aşağıdaki satırı yazın ve “Enter”
    cd'ye basın.
  7. Komut satırına aşağıdaki satırı ve vurmak “Enter”
    explorer.exe
    bu bunu ilk defa pencereler gerekli oluşturur
    erişim Sistemi sizin için bileşenler (Masaüstü başlangıç menüsü,
    My belge)
    Bittiğinde sen sahip olacak yeni bir masaüstü.
  8. Komut istemi penceresini kapat. Başlat'ı tıklayın ve kullanıcı adınızı kontrol edin.
    Sistem olarak değiştirildi.
    Artık süper güçlü bir kullanıcısınız. Ne yaptığınızı bilmiyorsanız, bilgisayarınıza zarar vermemeye ve sistem dosyalarını silmemeye veya değiştirmemeye dikkat edin.

Diğer seçenek, komut dosyanızı bir hizmet olarak çalıştırmak olacaktır.


2
atWindows 7'de çalışmıyor.
stephenwade

1
atWindows 7 makinemde çalışıyor. Senin için işe yaramayan nedir?
uSlackr

3
İşte Windows 7'de explorer işleminizi sonlandırmanın başka bir (daha hızlı?) Yolu : Başlat'a tıklayın. Fareyi menünün sağ tarafına getirin (“Çalıştır” ve “Oturumu Kapat” ın bulunduğu yer). (Ctrl) + (Üst Karakter) + (sağ tıklama); “Explorer'dan Çık” a tıklayın.
Scott

2
C: \ Windows \ system32> at 23:56 / interactive "cmd.exe" Uyarı: Güvenlik geliştirmeleri nedeniyle, bu görev beklenen zamanda çalışır, ancak etkileşimli olmaz. Etkileşimli görev gerekiyorsa schtasks.exe yardımcı programını kullanın (ayrıntılar için 'schtasks /?'). İş kimliği = 1 blogs.technet.com/b/askds/archive/2008/10/22/…
Dagelf

1

Bu temelde \ Windows \ System32 (ki açıkça bir yedekleme gerektirir) Utilman.exe yerine cmd.exe subbing içeren biraz daha hacky bir yaklaşım var. Bunu önceden çalışmakta olan Windows'un dışında yapmanız gerekir (örneğin Linux'ta veya bir kurulum / kurtarma CD'si aracılığıyla). Kullanılacak örnek bir komut dosyası (Windows üzerinden):

cd "%SystemRoot%\System32"
ren Utilman.exe Utilman.exe.bak
robocopy cmd.exe Utilman.exe /copyall

Bunu yaptıktan sonra, normal Windows'a önyükleme yapın ve Windows Key + U'ya basın ve erişilebilirlik vb. .


Ayrıca, yeniden başlatmadan bile, diskler olmadan, Windows içinde yapmak mümkündür. Sadece onun System32özelliklerine gidin , UtilMan.exetüm ayrıcalıkları ve mülkiyeti alın ve bu adımları ondan sonra yapın.
Jet

Bir sisteme giriş yapamıyorsanız ve sadece giriş ekranına
erişemiyorsanız
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.