Dấu nhắc lệnh với tư cách là người dùng HỆ THỐNG (Windows 7)


10

Làm cách nào tôi có thể nhận được dấu nhắc lệnh với tư cách là người dùng HỆ THỐNG trên Windows 7?

Bối cảnh: Tôi đang kiểm tra tập lệnh khởi động máy tính và tôi cần tìm ra hành vi của một lệnh khi chạy dưới dạng HỆ THỐNG chứ không phải tài khoản người dùng của tôi.

Tôi đã thấy các cách để làm điều này với atpsexec, nhưng các phương thức đó chỉ xuất hiện để hoạt động trên Windows XP hoặc Windows Vista.

Tôi đang sử dụng Windows 7 Pro SP1.


1
HỆ THỐNG nói chung là các dịch vụ người dùng chạy bên dưới, không phải là tài khoản tương tác ...
Austin T French

1
Có lẽ tôi đang hiểu nhầm điều gì đó. Đây là mục tiêu: Tôi có một kịch bản mà tôi dự định triển khai cho tổ chức của chúng tôi thông qua Chính sách nhóm. Mặc dù kịch bản nên hoạt động, nhưng nó không phải là.
stephenwade

1
Kịch bản sẽ chạy như một kịch bản khởi động máy tính, mà tôi nghĩ chạy dưới dạng HỆ THỐNG; do đó tôi muốn một dấu nhắc lệnh là HỆ THỐNG để kiểm tra tập lệnh của tôi. Tôi có đúng rằng các kịch bản khởi động chạy như HỆ THỐNG không? Nếu vậy, cách tốt nhất để kiểm tra kịch bản của tôi là gì?
stephenwade

1
Một kịch bản khởi động máy tính trong Chính sách nhóm.
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

Câu trả lời:


3

Điều này đã được hỏi về Stack Overflow . Câu trả lời được chấp nhận sử dụng PsExec (từ bộ Systiternals ) như Scott đề xuất.

Một giải pháp khác liên quan đến việc tạo một dịch vụ chạy trong tài khoản Hệ thống để chạy trình thông dịch lệnh. Bạn có thể thực hiện việc này một cách thủ công hoặc sử dụng chương trình tạo dịch vụ, chạy lời nhắc, sau đó xóa dịch vụ tự động. Tôi chỉ thử nó và nó đã làm việc một điều trị:

Ảnh chụp màn hình của Trình quản lý tác vụ với CMD đang chạy như Hệ thống


9

Sử dụng PsExec từ bộ Systiternals của Microsoft . PsExec phải được chạy từ dấu nhắc lệnh quản trị. Sử dụng các -i -scông tắc để khởi chạy nhắc lệnh script / lệnh của bạn.

Nhập mô tả hình ảnh ở đây


1
Ngay cả trong dấu nhắc lệnh của Quản trị viên, tôi nhận được thông báo " Access is denied."
stephenwade

@stephenwade Làm thế nào bạn nhận được dấu nhắc lệnh của quản trị viên, bạn có nhấp chuột phải và thực hiện "Chạy với tư cách Quản trị viên" không? Nó có ghi "Administrator: Command Prompt" trong ô khi bạn mở cửa sổ trước khi khởi động PsExec không? Ngoài ra, bạn đang cố gắng trỏ nó vào một tệp mạng để chạy, mã thông báo để kết nối với chia sẻ từ xa bị mất trong quá trình nâng cao.
Scott Chamberlain

Có, tôi nhấp chuột phải vào Dấu nhắc Lệnh trong menu Bắt đầu và nhấp vào "Chạy với tư cách Quản trị viên".
stephenwade

1
Tôi đang chạy psexec từ một thư mục mạng được liên kết với ổ H :. Có thể đó là vấn đề?
stephenwade

1
@stephenwade có, khi bạn nâng cao, bạn mất các ổ đĩa mạng (vì chúng được gắn với tài khoản người dùng và bạn đang thay đổi tài khoản người dùng), sao chép cục bộ và nó sẽ hoạt động.
Scott Chamberlain

1

Tôi sẽ rất cẩn thận làm điều này. HỆ THỐNG là tài khoản Quản trị viên nhưng nguy hiểm hơn nhiều vì nó có mức truy cập cao hơn.

Nói chung, HỆ THỐNG của bạn là các dịch vụ tài khoản chạy bên dưới, không phải là hồ sơ tương tác. Có nhiều cách để làm điều này mặc dù.

Đọc qua điều này tôi nghĩ rằng chúng ta có một cách tiếp cận tốt:

  1. Kiểm tra tên tài khoản bạn đã đăng nhập (Nhấp vào bắt đầu. Bạn
    sẽ thấy tên tài khoản bạn đã đăng nhập.)
  2. Khởi chạy dấu nhắc lệnh. (Bắt đầu | Chạy | cmd | [Enter])
    trong dấu nhắc lệnh, tạo lịch để chạy cmd.exe.
    Để tạo một lịch trình, gõ dòng sau và nhấn enter.
    lúc 10:41 / tương tác với cmd.exe,
    điều này sẽ tạo một lịch trình để chạy cmd.exe lúc 10:41.
    (Vì bạn đang thử nghiệm, kiểm tra thời gian trong hệ thống thử của bạn và thêm hai hoặc ba phút.) Thay đổi thời gian này theo giờ địa phương của bạn
    Gợi ý: bạn có thể kiểm tra xem lịch trình được đặt bằng cách gõ “ tại
    và nhấn Enter sau khi ở trên bươc.
  3. Chờ thời gian bạn đặt cho lịch trình.
    cmd.exe sẽ được đưa ra vào thời gian quy định.
  4. Sau khi cmd.exe được khởi chạy theo thời gian đã lên lịch, nhấn [CTRL] + [ALT] + [DEL] và khởi chạy trình quản lý tác vụ.
    Chọn tab Process Process, chọn explorer.exe trong danh sách tiến trình và nhấp vào nút End End Process .
    Bạn sẽ nhận được một cuộc đối thoại xác nhận. Nhấp vào Có Có để kết thúc quá trình.
  5. Đóng trình quản lý tác vụ bằng cách nhấp vào nút đóng (X).
    Đóng cửa sổ cmd đầu tiên (hãy cẩn thận để đóng cái đầu tiên chứ không phải cái thứ hai.)
  6. Bây giờ bạn chỉ có cửa sổ nhắc lệnh thứ hai và một màn hình trống.
    Trong dấu nhắc lệnh, gõ dòng sau và nhấn vào Enter Enter
    cd cd ..
  7. Trong dấu nhắc lệnh, gõ dòng sau và nhấn vào Enter Enter
    explorer.exe
    Nếu đây là lần đầu tiên bạn thực hiện, windows sẽ tạo các
    thành phần cần thiết để bạn truy cập Hệ thống (Máy tính để bàn, menu bắt đầu,
    Tài liệu của tôi)
    khi kết thúc, bạn sẽ có một máy tính để bàn mới.
  8. Đóng cửa sổ nhắc lệnh. Nhấp vào bắt đầu và kiểm tra tên người dùng của bạn.
    Nó được đổi thành Hệ thống.
    Bây giờ bạn là một người dùng siêu năng lực. Cẩn thận không làm hại PC của bạn và xóa hoặc sửa đổi các tệp hệ thống nếu bạn không biết bạn đang làm gì.

Tùy chọn khác sẽ là chạy tập lệnh của bạn dưới dạng dịch vụ.


2
atkhông hoạt động trong Windows 7.
stephenwade

1
atchạy trên máy Windows 7 của tôi. Điều gì không làm việc cho bạn?
uSlackr

3
Đây là một cách khác (nhanh hơn?) Để chấm dứt quá trình thám hiểm của bạn trong Windows 7: Nhấp vào Bắt đầu. Di chuyển chuột sang bên phải của menu (nơi có Run Run và Log Log tắt). (Ctrl) + (Shift) + (nhấp chuột phải); nhấp vào Thoát Thoát Explorer.
Scott

2
C: \ Windows \ system32> lúc 23:56 / Cảnh báo "cmd.exe" tương tác: Do các cải tiến bảo mật, tác vụ này sẽ chạy tại thời điểm mong đợi nhưng không tương tác. Sử dụng tiện ích scht task.exe nếu tác vụ tương tác là bắt buộc ('scht task /?' Để biết chi tiết). Đã thêm một công việc mới với ID công việc = 1 blog.technet.com/b/askds/archive/2008/10/22/NH
Dagelf

1

Cũng có một cách tiếp cận khó khăn hơn về vấn đề này, về cơ bản liên quan đến việc thay thế cmd.exe thay cho Utilman.exe trong \ Windows \ System32 (rõ ràng sẽ cần một bản sao lưu). Bạn sẽ phải thực hiện việc này bên ngoài Windows hiện đang chạy (ví dụ: trong Linux hoặc thông qua đĩa CD cài đặt / khôi phục). Đây sẽ là một kịch bản ví dụ để sử dụng (thông qua Windows):

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

Sau khi bạn làm điều đó, hãy khởi động vào Windows thông thường và nhấn Windows Key + U, và thay vì đưa ra một bộ tiện ích để trợ giúp với khả năng truy cập, v.v., nó sẽ đưa ra một dấu nhắc lệnh cấp hệ thống với tất cả các công cụ có sẵn trong hệ thống của bạn .


Ngoài ra, có thể thực hiện việc đó trong Windows, không cần đĩa, thậm chí không cần khởi động lại. Chỉ cần đi đến System32, mở các thuộc tính của UtilMan.exe, lấy tất cả các đặc quyền và quyền sở hữu, và thực hiện các bước đó sau nó.
Máy bay phản lực

Điều này rất hữu ích nếu bạn không thể đăng nhập vào hệ thống và chỉ vào màn hình đăng nhập
Vitas
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.