Hoireabard

New Member

Download miễn phí Sử dụng Windows Server 2008 Powershell để thực hiện các lệnh về mạng





Ping máy tính với Powershell
Trong khi Powershell vẫn có thểthực hiện tất cảcác lệnh thông thường của
Windows (nhưlệnh ping), thì sức mạng của Powershell còn thểhiện ởchỗbạn
có thểlấy đầu ra đó và thay đổi nó một cách dễdàng.
Đây là một ví dụvề điều đó, nhờgiúp đỡtrong hướng dẫn người dùng của
Windows Powershell. Trong ví dụnày, đầu ra của Win32_PingStatus được phân
tách bằng Select-Object. Trong trường hợp này, đầu ra chỉthểhiện thời gian đáp
trảvà mã trạng thái



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

Sử dụng Windows Server 2008 Powershell để thực hiện các lệnh về mạng
Nguồn : quantrimang.com 
David Davis
Có nhiều thứ bạn vẫn thực hiện hàng ngày trong khi quản trị một mạng
Windows nhưng nếu bị hỏi thực hiện những công việc đó từ dòng lệnh thì
hầu hết các quản trị viên Windows có thể cảm giác đấy là một yêu cầu khó.
Windows luôn luôn yếu khi nói đến các công cụ dòng lệnh, tuy nhiên sự
việc này đã thay đổi với sự xuất hiện của Windows Powershell. Powershell
(trước vẫn được gọi là PS) có thể thực hiện nhiều thứ mà trước đó là hoàn toàn
không thể. Trong bài này, chúng tui sẽ giới thiệu cho các bạn về Powershell và
cách nó có thể giúp bạn thực hiện một số chức năng trong quản trị mạng nói
chung từ cửa sổ lệnh.
Powershell là gì?
Powershell là một chức năng có thể cài đặt trong Windows Server 2008. Để cài
đặt Powershell, bạn phải cài đặt chức năng Powershell trong Add Features
Wizard. Chỉ cần mất một vài phút để cài đặt và khi chức năng này được cài đặt
bạn có thể truy cập vào một ngôn ngữ kịch bản dòng lệnh khá thú vị. Không
giống như các ngôn ngữ kịch bản khác trong Windows, Powershell được thiết kế
để cho các quản trị viên hệ thống. Powershell sử dụng .NET và “cmdlets” (hay
“command-lets”) để thực hiện các công việc của nó. Như một người dùng
Powershell, bạn có thể sử dụng bản thân cmdlet hay có thể kết nối chúng cùng
để thực hiện nhiều nhiệm vụ mạnh hơn.
Khi đã cài đặt Powershell, bạn sẽ có thể vào Start -> All Programs -> Windows
Powershell 1.0, và kích Windows PowerShell. Ở đây, bạn sẽ thấy một màn
hình CLI màu xanh lam xuất hiện trông như hình dưới đây:
Hình 1: Cửa sổ lệnh của Windows Powershell
Bạn luôn có thể biết mình đang ở trong Powershell vì “PS” nằm ở đầu dòng nhắc
lệnh:
PS C:\Users\Administrators
Lúc này bạn đã cài đặt Powershell và đang ở trong cửa sổ lệnh, chúng tui sẽ giới
thiệu cho các bạn một số nhiệm vụ về mạng chung có thể thực hiện với
Powershell.
Liệt kê địa chỉ IP trên máy chủ
Để liệt kê địa chỉ IP trên Windows 2008 Server, bạn sử dụng chuỗi lệnh dưới
đây:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -
Filter IPEnabled=TRUE -ComputerName . | Select-Object -
Property IPAddress
Đây là kết quả sau khi thực hiện câu lệnh trên với Windows Server 2008:
Hình 2: Liệt kê địa chỉ IP với Windows Powershell
Như những gì bạn thấy, đầu ra cho chúng ta thấy rằng có một adaptor với địa chỉ
IP V4 và một địa chỉ Ipv6 trên Windows Server 2008. Bạn có thể thực hiện
những gì khi kết hợp với các chức năng kịch bản khác.
Như trong hướng dẫn sử dụng cho người dùng Powershell, đầu ra là một mảng
và bạn chỉ thấy địa chỉ IP bằng cách hướng đầu ra đến “Select-Object” ( sau khi
vô hiệu hóa IPV6), giống như dưới đây:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -
Filter IPEnabled=TRUE -ComputerName . | Select-Object -
ExpandProperty IPAddress
Hình 3: Liệt kê địa chỉ IP chỉ với Windows Powershell
Liệt kê cấu hình adaptor mạng với Powershell
Để hiện cấu hình cơ bản của adaptor mạng, bạn có thể sử dụng lệnh sau:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -
Filter IPEnabled=TRUE –ComputerName
Tuy bài này tập trung về việc sử dụng Powershell trong Windows Server 2008
nhưng nó cũng có thể được sử dụng trong Windows XP, Vista hay Windows
Server 2003. Trong thực tế, đây là đầu ra mẫu cho lệnh ở trên, được thực hiện
trên máy trạm Windows XP:
Hình 4: Powershell hiển thị cấu hình adaptor mạng trong Windows XP
Ping máy tính với Powershell
Trong khi Powershell vẫn có thể thực hiện tất cả các lệnh thông thường của
Windows (như lệnh ping), thì sức mạng của Powershell còn thể hiện ở chỗ bạn
có thể lấy đầu ra đó và thay đổi nó một cách dễ dàng.
Đây là một ví dụ về điều đó, nhờ giúp đỡ trong hướng dẫn người dùng của
Windows Powershell. Trong ví dụ này, đầu ra của Win32_PingStatus được phân
tách bằng Select-Object. Trong trường hợp này, đầu ra chỉ thể hiện thời gian đáp
trả và mã trạng thái.
Đây là lệnh vừa được sử dụng:
Get-WmiObject -Class Win32_PingStatus -Filter
"Address='127.0.0.1'" -ComputerName . | Select-Object -
Property Address,ResponseTime,StatusCode
Và đây là đầu ra trên máy tính:
Hình 5: Đầu ra của Powershell thể hiện trạng thái ping với Select-Object
Chia sẻ thư mục với Windows Powershell
Quả thực phải nói rằng sử dụng các lệnh Powershell không luôn luôn dễ dàng
như các lệnh Windows đang tồn tại mà bạn vẫn quen dùng. Đây là một ví dụ.
Lệnh Powershell dưới đây sẽ chia sẻ một thư mục có đường dẫn C:\temp như
“davidtemp” và đặt một lệnh trên nó:
(Get-WmiObject -List -ComputerName . | Where-Object -
FilterScript {$_.Name -eq
"Win32_Share"}).InvokeMethod("Create",("C:\temp","davidtemp
",0,25,"David’s Temp Folder"))
Cách khác, bạn có thể chỉ sử dụng lệnh net share như sau:
net share davidtemp=C:\temp /remark:"David’s Temp Shared
Folder"
Hình 6: Đầu ra của Powershell và các lệnh chia sẻ thông thường
Lưu ý về cách mà lệnh Powershell đã không làm việc và đưa ra một thông báo
lỗi rất khó chịu.
Còn với lệnh net share thật đơn giản, nó đã làm việc ngay lập tức. Chính vì vậy
trong khi chúng tui giới thiệu với các bạn về tất cả những gì có thể thực hiện với
Powershell, bạn không nên quên rằng Powershell không những có thể chạy tất
cả các lệnh liên quan đến mạng mà còn trong nhiều trường hợp chúng còn cho
phép sử dụng dễ dàng hơn.
Các lệnh phức tạp hơn
Tiếp đến, nếu bạn chỉ thực hiện các lệnh quản trị mạng cơ bản với Powershell
thì có thể chán và không muốn sử dụng nó. Điều đó cũng là vì giống như các
ngôn ngữ kịch bản, có một số chỗ mà bạn cần học.
Tuy vậy, khi đã học được cách sử dụng nó thì bạn sẽ có được tất cả những ưu
điểm về hiệu quả cũng như tiết kiệm được thời gian từ một ngôn ngữ mới vừa
học được.
Như những gì bạn lưu ý được từ một số ví dụ trước, một trong các tham số cho
hầu hết các lệnh Powershell là “computername”. Khi đặt dấu chấm (“.”) với tư
cách là tên máy tính thì đó là host cục bộ (máy tính của chúng ta). Tuy vậy,
chúng ta cũng có thể thay thế bất kỳ địa chỉ IP hay tên máy tính nào trong miền
để không chỉ sử dụng các lệnh này trên máy tính của bạn mà còn tạo các kịch
bản mạnh với Powershell để từ đó bạn có thể chạy trên tất cả các máy tính trong
mạng của mình.
Ví dụ, đây là một lệnh kéo tất cả một địa chỉ IP từ máy tính Dell vào một mạng
LAN:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -
Filter IPEnabled=TRUE -ComputerName DELL9400
Đây là kết quả:
Hình 7: Powershell cho kết quả từ việc truy vấn địa chỉ IP của máy tính từ xa
Và đây là màn hình đã được phóng to để hiển thị thông tin bên trong:
Hình 8: Đóng các kết quả Powershell chống truy vấn địa chỉ IP của máy tính từ
xa
Chính vì vậy khả năng thực hiện trên các máy tính từ xa là một chức năng chủ
yếu của Powershell nhưng một chức năng khác nữa là khả năng lọc đầu ra và kết
hợp đầu ra từ một lệnh này với một lệnh khác.
Chúng ta sẽ xem vấn đề đó trong một ví dụ:
"127.0.0.1","localhost","research.microsoft.com" | ForEach-
Object -Process {Get-WmiOb...
 

Các chủ đề có liên quan khác

Top