Windows Terminal thông thường sẽ không cho phép các tab quản trị viên mở đồng thời với các tab không nâng cao khác . Nhưng với một công cụ của bên thứ ba, điều đó là hoàn toàn có thể! Đây là cách khởi chạy PowerShell với tư cách Quản trị viên trong Windows Terminal.
Mục lục
Cách Windows Terminal xử lý quyền quản trị
Chạy PowerShell với tư cách quản trị viên (còn được gọi là PowerShell nâng cao), cho phép bạn chạy các lệnh và truy cập các tệp thường bị hạn chế. Các lệnh và tệp bị hạn chế có xu hướng quan trọng đối với hoạt động và bảo mật của hệ điều hành và chúng yêu cầu các quyền quản trị đặc biệt để chạy, di chuyển, sửa đổi hoặc xóa.
Windows Terminal không cho phép bạn mở các tab PowerShell cho phép hỗn hợp vì lý do bảo mật. Rất khó để cô lập hoàn toàn các tab đang mở với nhau – trên thực tế, điều đó có nghĩa là thứ gì đó đang chạy trong tab PowerShell không nâng cao có thể leo thang quyền của nó thông qua tab PowerShell nâng cao, khiến PC của bạn bị lộ. Các nhà phát triển quyết định rằng rủi ro – mặc dù nhỏ – tốt nhất là nên tránh hoàn toàn.
Cách khởi động PowerShell với tư cách quản trị viên trong Windows Terminal
Vì Windows Terminal nguyên bản không cho phép các tab quyền hỗn hợp, nên chỉ có một cách để chạy PowerShell với tư cách Quản trị viên trong Windows Terminal – bằng cách chạy Windows Terminal với tư cách quản trị viên. Khi Windows Terminal được chạy với tư cách quản trị viên, tất cả các tab mới đã mở cũng sẽ được chạy với tư cách quản trị viên.
Để chạy Windows Terminal với tư cách quản trị viên, hãy nhấp vào Bắt đầu, nhập “terminal
” vào thanh tìm kiếm, sau đó nhấp vào chữ v (nó trông giống như một mũi tên không có đuôi) để mở rộng danh sách các tùy chọn.
Nhấp vào “Run as administrator
– Chạy với tư cách quản trị viên” trong danh sách mở rộng.
Mẹo: Bạn cũng có thể nhấp chuột phải vào lối tắt Windows Terminal sau khi tìm kiếm nó và chọn “Run as administrator
”.
Cách khởi động PowerShell với tư cách là quản trị viên trong Windows Terminal bằng các công cụ của bên thứ ba
Windows Terminal không hỗ trợ trộn các tab PowerShell nâng cao và không nâng cao vì lý do bảo mật. Nếu bạn vẫn muốn làm điều đó, bạn có thể kích hoạt nó bằng một chương trình mã nguồn mở nhỏ có tên là gsudo.
Cảnh báo: Các nhà phát triển của Microsot đã chọn không bao gồm chức năng này vì một lý do. Nó đã được yêu cầu nhiều lần và bị từ chối. Lưu ý rằng việc trộn cả môi trường dòng lệnh nâng cao và không nâng cao trong cùng một cửa sổ sẽ gây ra rủi ro nhẹ cho bảo mật của bạn.
Gsudo được cài đặt bằng dòng lệnh sử dụng bộ cánh . Khởi chạy PowerShell , nhập
winget install gerardog.gsudo
và sau đó nhấn Enter.
Quá trình cài đặt sẽ bắt đầu ngay lập tức; khi được nhắc chấp nhận các điều khoản và điều kiện, hãy nhấn y
phím, sau đó nhấn Enter. Nếu nó hoàn thành thành công, bạn sẽ thấy một cái gì đó như thế này:
Sau khi gsudo đã được cài đặt, bạn cần mở Windows Terminal và tạo một cấu hình mới. Nhấp vào chữ v ở đầu Windows Terminal, sau đó nhấp vào “Settings
– Cài đặt”.
Nhấp vào “Add a New Profile
”, chọn “Windows PowerShell
”, sau đó nhấp vào “Duplicate
”.
Chúng tôi cần sửa đổi một vài dòng trên hồ sơ này.
Trước tiên, bạn nên đổi tên hồ sơ trùng lặp theo mô tả, chẳng hạn như “PowerShell (Quản trị viên),” để nó không bị lẫn với hồ sơ PowerShell không phải quản trị viên.
Chúng ta cũng cần sửa đổi lệnh được thực thi khi cấu hình này được kích hoạt. Nhấp vào dòng có nhãn “Command line
” gsudo powershell.exe
, rồi nhấp vào “Save – Lưu” ở dưới cùng bên phải.
Lưu ý: Bạn cũng có thể thay đổi biểu tượng nếu muốn – khá dễ dàng để tạo biểu tượng của riêng bạn hoặc bạn có thể tải xuống các biểu tượng từ một trang web như iconfinder.com hoặc iconarchive.com
Bạn có thể khởi chạy PowerShell nâng cao mới trong bất kỳ Windows Terminal nào bằng cách nhấp vào chữ v ở gần trên cùng và chọn cấu hình PowerShell (Quản trị viên).
Vậy là xong – bây giờ bạn có thể mở cả cửa sổ PowerShell quản trị và không phải quản trị viên trong cùng một thiết bị đầu cuối. Nếu bạn muốn, quá trình tương tự cũng hoạt động cho Command Prompt, ngoại trừ dòng lệnh được thay đổi thành gsudo cmd
thay vì gsudo powershell
.