BACHKHOA-APTECH INTERNATIONAL IT EDUCATION SYSTEM

15 năm hoạt động - 30.000 HV đã tốt nghiệp - Chương trình đào tạo chuẩn quốc tế
Toggle

Windows Server 2008 – WINDOWS POWERSHELL

17:16 - 17/06/2017 Bachkhoa-Aptech

Windows PowerShell là một môi trường tương tác mới của hệ điều hành Windows ( Windows command – line shell )


Windows PowerShell là một môi trường tương tác mới của hệ điều hành Windows ( Windows command – line shell ), đặc biệt thích hợp với nhiệm vụ quản trị hệ thống. PowerShell này gồm có một công cụ tương tác trên dòng lệnh và một môi trường để thực thi các script.

Trong bài viết này,  chúng ta cùng đề cập đến 1 chức năng quan trọng không thể thiếu trong nền tảng Windows Server 2008, đó là PowerShell.

windows-server-2008-windows-powershell-01

I.Giới thiệu về Windows PowerShell.

Windows PowerShell là một môi trường tương tác mới của hệ điều hành Windows ( Windows command – line shell ), đặc biệt thích hợp với nhiệm vụ quản trị hệ thống. PowerShell này gồm có một công cụ tương tác trên dòng lệnh và một môi trường để thực thi các script.

Windows PowerShell ra đời năm 2006, hiện tại đã có các gói cài đặt tương ứng với Windows XP SP2, Windows Server 2003 và Windows Vista. Đối với Windows Server 2008, PowerShell được thiết kế như 1 thành phần tùy chọn. PowerShell đòi hỏi .NET Framework 2.0 vì được xây dựng trên nền tảng .NET common language runtime (CLR) và .NET Framework.

Đặc biệt, Windows PowerShell bao gồm 1 khái niệm mới – cmdlet. Đây là 1 tập hợp các công cụ đơn giản và hữu hiệu được tích hợp sẵn trên PowerShell.Windows PowerShell bao gồm hơn 100 cmdlet cơ bản, đồng thời bạn có thể xây dựng riêng các cmdlet để đáp ứng nhu cầu đa dạng của doanh nghiệp mình.

Windows PowerShell có khả năng truy cập file system, registry và các kho lưu trữ khác trên hệ thống.

II. Tập lệnh cơ bản của Windows PowerShell.

Trong những năm qua, Microsoft đã cố gắng để biến PowerShell thành 1 trong những công cụ quản lý toàn diện dành cho Windows.

Hầu hết các hệ thống server của Microsoft đều khuyến cáo mọi người sử dụng PowerShell, có thể thực hiện được rất nhiều chức năng mà không phải can thiệp bằng Command Prompt như trước kia. Đối với mỗi người quản trị hệ thống Windows, họ cần phải làm quen và sử dụng PowerShell từ những bước cơ bản ban đầu. Sau đây, chúng tôi sẽ giới thiệu với các bạn 10 lệnh không thể thiếu khi bắt tay làm quen với PowerShell.

1.     Get-Help:

Đầu tiên và trước tiên, tất cả mọi người cần tìm hiểu về bất cứ câu lệnh, cú pháp nào là Get-Help.

VD: kiểm tra về Get-Process thì gõ lệnh như sau :

          Get-help   -name  get-process

Và Windows sẽ hiện thị đầy đủ cú pháp.

windows-server-2008-windows-powershell-02

Câu lệnh này còn được sử dụng đi kèm với danh từ và động từ riêng rẽ, ví dụ với lệnh động từ Get:

          Get-help  –name  Get-*

windows-server-2008-windows-powershell-03

2.     Set-ExecutionPolicy:

Mặc dù bạn có thể tạo và thực thi các đoạn mã PowerShell khác nhau, nhưng ở chế độ mặc định Microsoft đã tắt bỏ tính năng này để phòng tránh các loại mà độc khác nhau khi xâm nhập vào hệ thống có thể tự kích hoạt và khởi động trong môi trường PowerShell.

Người sử dụng có thể áp dụng lệnh này để thiết lập các mức bảo mật khác nhau, cụ thể có 4 lựa chọn phù hợp:

-         Restricted: đây là chính sách mặc định của hệ thống, các câu lệnh PowerShell đều bị khóa, người sử dụng chỉ có thể nhập lệnh nhưng không thực thi được.

-         All Signed: nếu bạn hoặc người quản trị thiết lập mức này thì các đoạn mã sẽ được thực thi, nhưng chỉ áp dụng với các thành phần được chỉ định rõ rang.

-         Remote Signed: chính sách bảo mật khi ở mức này , bất cứ đoạn mã PowerShell được tạo bên trong hệ thống local sẽ được phép hoạt động. Còn những mã tạo qua remote thì chỉ được phép chạy khi gán thuộc tính đầy đủ.

-         Unrestricted: không áp dụng bất cứ hình thức ngăn cấm nào trong hệ thống.

Cú pháp chung của lệnh này bao gồm tên của lệnh Set-executionPolicy đứng sau chính sách.

VD như sau:

          Set-ExecutionPolicy Unrestricted

3.     Get-ExecutionPolicy:

Nếu bạn phải làm việc trên hệ thống server không quen thuộc, thì cần phải biết chính sách, mức chính sách bảo mật nào đang được áp dụng trên đó trước khi thực thi bất cứ câu lệnh hoặc đoạn mã nào đó. Để làm việc này, các bạn dùng lệnh :

          Get-ExecutionPolicy

windows-server-2008-windows-powershell-04

4.     Get-Service:

Câu lệnh này sẽ liệt kê tất cả các dịch vụ đã được cài đặt trên hệ thống. Nếu cần tìm hiểu kỹ hơn về 1 dịch vụ bất kỳ nào đó, hãy thêm –Name và tên của dịch vụ đó, Windows sẽ hiển thị đầy đủ chi tiết, tình trạng liên quan.

windows-server-2008-windows-powershell-05

5.     ConvertTo-HTML:

Khi cần xem hoặc tạo báo cáo đầy đủ về thông tin, tình trạng hiện thời của toàn bộ hệ thống, hãy sử dụng chức năng chuyển đổi định dạng ConvertTo-HTML. Trước tiên, các bạn cần chỉ định đường dẫn file chuyển đổi sau khi dùng ConvertTo-HTML, tham số -Property có nhiệm vụ khởi tạo thuộc tính trong file HTML, sau cùng là đặt tên cho file chuyển đổi. Cú pháp chung của lệnh này như sau:

Get-Service | ConvertTo-HTML -Property Name,
Status > C: \services.htm

6.     Export-CSV:

Sau khi tạo báo cáo bằng HTML dựa trên dữ liệu của PowerShell, bạn cũng có thể trích xuất dữ liệu PowerShell thành file CSV để sử dụng mới Microsoft Excel. Cú pháp chung cũng tương tụ như câu lệnh trên:

          Get-Service | Export-CSV c:\service.csv

7.     Select-Object:

Việc sử dụng các lệnh trên để tìm hiểu về hệ thống, bạn sẽ phát hiện ra rằng có rất nhiều thuộc tính kèm trong file CSV. Tính năng này tỏ ra thực sự hữu ích khi cho phép người sử dụng chỉ định những thuộc tính cố định trong các mối liên kết. Ví dụ, để tạo file CSV có chứa tên của các dịch vụ riêng biệt trong hệ thống và tình trạng đi kèm, các bạn có thể sử dụng cú pháp chung như sau:

Get-Service | Select-Object Name, Status |
Export-CSV c:\service.csv

8.     Get-Eventlog:

Người sử dụng hoàn toàn có thể dùng PowerShell để phân tích các sự kiện xảy ra trong hệ thống qua file log. Có 1 vài tham số cụ thể đối với các dịch vụ khác nhau, nhưng hãy thử nghiệm bằng cách thêm –log ở phía trước tên file log. Ví dụ, để xem file log Application thì các bạn sử dụng lệnh sau:

          Get-EventLog -Log "Application"

windows-server-2008-windows-powershell-06

9.     Get-Process:

Đi kèm với lệnh Get-Service để hiện thị danh sách các dịch vụ hiện thời của hệ thống, cú pháp Get-process được dùng để liệt kê toàn bộ các tiến trình đang hoạt động.

windows-server-2008-windows-powershell-07

10.     Stop-Process:

Đôi khi, có những dịch vụ trong hệ thống bị rơi vào trạng thái “treo”. Những trường hợp như vậy, hãy dùng lệnh Get-Process để xác định tên hoặc ID chính xác của tiến trình đó, và tắt tiến trình này bằng lệnh Stop-Process.

Ví dụ, để tắt hoạt động của chương trình NotePad thì gõ lệnh sau:

Stop-Process -Name notepad
Stop-Process -ID 2668

Chú ý rằng ID của các tiến trình sẽ thay đổi theo hệ thống.

Nguồn : SƯU TẦM

Hotline hỗ trợ

Mọi thắc mắc của bạn luôn được đội ngũ hỗ trợ tận tâm

Hotline: 0968.27.6996