Làm cách nào tôi có thể chạy tập lệnh với tư cách quản trị viên trong bộ chứa Windows


14

Tôi đang cố gắng cài đặt Windows Enterprise WDK trên hình ảnh Docker dựa trên windowsservercore . Ứng dụng cài đặt bằng cách giải nén và tôi đã thực hiện điều đó và cam kết hình ảnh đó với Docker. Bây giờ tôi cần chạy một kịch bản đặt các biến môi trường. Theo hướng dẫn cài đặt Enterprise WDK, tôi phải chạy tập lệnh này với tư cách quản trị viên. Tôi đã thực hiện điều này trực tiếp trên máy tính để bàn của mình và nó hoạt động. Trong Docker Container, người dùng đăng nhập mặc định là

PS C:\> whoami
user manager\containeradministrator

Tôi đã thử kích hoạt tài khoản quản trị viên.

PS C:\> net user administrator /active:yes
The command completed successfully.
PS C:\> net user administrator Pa$$w0rd
The command completed successfully.

Tôi cố gắng khởi động shell với tư cách quản trị viên, nhưng người dùng không thay đổi.

PS C:\> runas /user:administrator powershell
Enter the password for administrator:
Attempting to start powershell as user "C597C386289A\administrator" ...
PS C:\> whoami
user manager\containeradministrator

Và nếu tôi chạy tập lệnh của mình thì không thể đặt bất kỳ giá trị môi trường nào được chỉ định trong tập lệnh.

Gợi ý?


2
Bạn đã quản lý để giải quyết điều này?
Fons

1
Bạn có thể có vấn đề với UAC , bạn có thể tạm thời vô hiệu hóa nó không? Runas như bạn đã viết nó không cho phép mở một dấu nhắc lệnh nâng cao, xem tại đây . Tôi sẽ thử NirCmd :-)
simlev 28/03/2017

1
Làm thế nào bạn kết nối với container? RDP? Quyền hạn từ xa?
harrymc

1
@harrymc Chạy container trong chế độ tương tác.
Daniel

1
Vì tài khoản Quản trị viên cục bộ là một tài khoản rất đặc biệt, nên có thể cần phải đăng nhập. Tại sao bạn không thể sử dụng tài khoản quản trị viên "bình thường" khác?
harrymc

Câu trả lời:


6

Vấn đề của bạn là không đủ quyền ở tất cả. Xem bài viết này .

UAC không có sẵn trong Server Core, vì nó là giao diện chỉ dòng lệnh , không có IE hoặc hỗ trợ cho các ứng dụng người dùng. Ngoài ra, để sử dụng UAC với dấu nhắc lệnh, bạn cần phải có Explorer Shell để bạn có thể nhấp vào Bắt đầu, nhấp chuột phải vào Dấu nhắc lệnh và chọn chạy với tư cách quản trị viên, điều này rõ ràng là không thể trên Server Core.

Bạn đã chạy các lệnh với tư cách quản trị viên, nếu không các lệnh như

net user administrator Pa$$w0rd

chắc chắn sẽ thất bại.

Vấn đề của bạn là một cái gì đó khác.

Xem ở đây . Windows Server Core không được hỗ trợ để cài đặt WDK. Về cài đặt biến môi trường trên Server Core, hãy xem câu trả lời này .

Bạn nên xem kịch bản đó và những gì nó thực sự làm, nếu nó sử dụng các lệnh SET hoặc SETX hoặc một cái gì đó khác và ở đó bạn có thể tìm thấy manh mối tại sao các biến không được đặt đúng. Có thể là chúng được đặt vĩnh viễn nhưng không có trong cửa sổ hiện tại của bạn.


2
Tôi đã thay thế các setlệnh bằng setxcách cố gắng gỡ lỗi các vấn đề khác. Đó là điều khiến tôi đi theo con đường cố gắng để có được đặc quyền quản trị viên thực sự.
Daniel
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.