Thứ Hai, 30 tháng 6, 2014

To expand drives using BitLocker, need to disable BitLocker

http://answers.microsoft.com/en-us/windows/forum/windows_7-hardware/windows-will-not-let-me-partitionshrink-ore-expand/3ce9e761-e08c-414d-8162-47eca3838435

 

Windows will not let me partition,shrink ore expand drives. Error: "Bitlocker Drive Encryption cannot be used because critical BitLocker system files are missing or corrupted. Use Windows Startup Repair to restore these files to your computer"

When I go to Disk Management to shrink my main partition i enter the amount needed to shrink by and that error appears. Even when i use startup repair the error remains. Is there anyway to use disk management without restoring.

  •  
  •  
  •  
  •  

Found this helpful 0

Answer

Diana D replied on

  •  

Microsoft

Hi Padraigs,

Welcome to Microsoft Answers.

• Is your hard drive encrypted using Bit locker?

If yes, then you will have to temporarily disable the bit locker encryption to shrink the partition.

To Enable/Disable Bit locker encryption, do the following
i. Click the Start button to view the Start Menu and then choose the Control Panel option.
ii. Click the System and Security.
iii. The System and Security section of Control Panel opens up and you can see the direct link for the Bit Locker Drive Encryption.
iv. Click on the Bit Locker Drive Encryption and a new window opens up.
v. Click Turn Off Bit Locker. This opens the Bit Locker Drive Encryption dialog box. If you are prompted for an administrator password or confirmation, type the password or provide confirmation.
vi. To decrypt the drive, click Decrypt the volume. To temporarily suspend Bit Locker, click Suspend Bit Locker Drive Encryption.
vii. Click Turn On Bit Locker to enable bit locker

You may also use the disk part command to shrink the partition. Refer to the link “To shrink a basic volume using a command line “ http://technet.microsoft.com/en-us/library/cc731894.aspx#BKMK_WINUI
 
For more information check the link: Bit locker drive encryption Overview” http://technet.microsoft.com/en-us/library/cc732774.aspx

Diana
Microsoft Answers Support Engineer
Visit our Microsoft Answers Feedback Forum and let us know what you think.

 

Chủ Nhật, 22 tháng 6, 2014

Vì sao Nga không ủng hộ Trung Quốc ở Biển Đông?

http://kienthuc.net.vn/nong-sau/vi-sao-nga-khong-ung-ho-trung-quoc-o-bien-dong-354567.html

Vì sao Nga không ủng hộ Trung Quốc ở Biển Đông?

(Kienthuc.net.vn) - Vì nhiều nhân tố chiến lược và chính trị, Moscow không thể ủng hộ các tham vọng của Bắc Kinh ở Biển Đông. 

           

Vì sao Nga không thể công khai "về phe" Trung Quốc?

Sau hàng loạt các hành động hung hăng của Trung Quốc ở Biển Đông, đặc biệt là hành động đơn phương hạ đặt trái phép giàn khoan Hải Dương 981 trong vùng biển Việt Nam, Trung Quốc đã bị nhiều nước trên thế giới như Mỹ, Nhật lên tiếng chỉ trích. Tuy nhiên, Nga, "đối tác chiến lược" của Trung Quốc, vẫn chưa bày tỏ lập trường gì về vấn đề Biển Đông

Điều đó khiến một số nhân vật ở Bắc Kinh nổi giận vì cho rằng mối quan hệ Nga – Trung không tốt đẹp như họ từng nghĩ. Ngay cả về tranh chấp Nhật - Trung đối với quần đảo Senkaku/Điếu Ngư trên biển Hoa Đông, Nga cũng thể hiện lập trường không rõ ràng.

Mối quan hệ giữa Nga và Trung Quốc không thân mật như Trung Quốc tưởng? 

Tuy nhiên, điều đó không có nghĩa Nga "hai lòng" trong mối quan hệ với Trung Quốc mà có các nhân tố phức tạp về chính trị và chiến lược khiến Nga phản ứng như vậy.

Thứ nhất, mối quan hệ Nga – Trung khác với mối quan hệ Mỹ - Philippines. Trung Quốc và Nga không phải là đồng minh. Hai nước không ký hiệp ước nào trong khi Mỹ và Philippines cũng như Mỹ và Nhật Bản có các hiệp ước an ninh song phương.

Trong mối quan hệ đồng minh, mỗi bên có nghĩa vụ ủng hộ về chính trị và thậm chí cả quân sự đối với bên kia. Trong quan hệ quốc tế, đây là hình thức cao nhất của quan hệ song phương. Mặc dù mối quan hệ Nga – Trung có một số điểm thể hiện mối quan hệ chiến lược toàn diện, hai bên vẫn chưa ký kết hiệp ước có tính ràng buộc.

Từ lâu, truyền thông Trung Quốc vẫn nhấn mạnh và đề cao các nhân tố tích cực trong mối quan hệ Nga – Trung và truyền thông hải ngoại thậm chí còn đề cao quá mức mối quan hệ này. Có lúc, một số tờ báo còn cho rằng Nga và Trung Quốc đã là "đồng minh" chỉ còn thiếu một hiệp ước chính thức. Điều đó khiến một số nhân vật ở Trung Quốc tin rằng Nga – Trung đã có mối quan hệ hợp tác chính trị vô cùng rộng lớn giúp cải thiện mạnh mẽ môi trường an ninh của Trung Quốc.

Tuy nhiên, những gì thực sự diễn ra trong các mối quan hệ quốc tế cho thấy bất kể mối quan hệ Nga – Trung tốt đẹp tới đâu, điều đó cũng không làm ảnh hưởng tới chính sách của Nga về Biển Đông và biển Hoa Đông. Trên thực tế, mối quan hệ Nga – Trung cơ bản dựa trên nguyên tắc "đôi bên cùng có lợi". Biển Đông không phải là nơi Nga có thể mở rộng các lợi ích và cũng không cần thiết phải can thiệp vào vùng biển này. Trung Quốc không thể diễn giải sai bản chất mối quan hệ Nga – Trung và kỳ vọng quá nhiều vào Nga.

Thứ hai, Nga có mối quan hệ tốt đẹp với các quốc gia nằm xung quanh Biển Đông và không cần thiết phải khiến các nước này "mếch lòng" để bảo vệ lợi ích của Trung Quốc. Nga không lên tiếng công khai ủng hộ Trung Quốc về vấn đề Biển Đông và một trong những nguyên nhân quan trọng là Moscow muốn duy trì quan hệ tốt đẹp với các quốc gia Đông Nam Á.

Mối quan hệ Việt – Nga là một ví dụ. Trước đây, Liên Xô có mối quan hệ gần gũi với Việt Nam hơn với Trung Quốc. Nhờ sự ủng hộ mạnh mẽ của Liên Xô, Việt Nam đã chiến thắng Mỹ. Sau khi Liên Xô sụp đổ, Nga thừa hưởng mối quan hệ này. Không có cản trở lớn nào trong mối quan hệ Việt – Nga và đặc biệt có một lĩnh vực giúp mối quan hệ hai nước gắn bó chính là quốc phòng. Nhiều vũ khí của Việt Nam được sản xuất ở Nga trong đó có tàu ngầm lớp Kilo, vũ khí giúp cải thiện sức mạnh của Hải quân Việt Nam. Ngoài ra, vào cuối năm 2014, Nga sẽ giao thêm 4 chiếc máy bay chiến đấu SU-30MK2 cho Việt Nam.

Nga cũng có mối quan hệ tốt đẹp với Philippines. Hai năm trước, 3 tàu Hải quân Nga (trong đó có tàu khu trục chống tàu ngầm Admiral Panteleyev) đã tới Manila trong 3 ngày. Theo phía Nga, chuyến thăm này sẽ giúp cải thiện mối quan hệ Nga – Philippines.

Thứ ba, Nga không cần thiết phải đối đầu trực tiếp với Mỹ về Biển Đông. Hiện Nga đang tập trung vào châu Âu, đặc biệt là cuộc khủng hoảng Ukraine đã khiến đối cầu giữa Nga và phương Tây trở nên vô cùng căng thẳng. Vấn đề đó không thể được giải quyết nhanh chóng. Trong bối cảnh đó, Nga cũng không mong muốn hoặc không có đủ năng lực để đối đầu Mỹ trên Biển Đông.

Ngoài ra, các cuộc tranh chấp trên Biển Đông không phải là tranh chấp giữa Trung Quốc và Mỹ mà là giữa Trung Quốc và các quốc gia Đông Nam Á. Mỹ chỉ là nhân tố gây ảnh hưởng, không phải nhân tố quyết định tương tai của Biển Đông. Trong bối cảnh đó, Nga với tư cách là quốc gia bên ngoài không có lý do gì để hậu thuẫn Trung Quốc và chỉ trích Mỹ.

Thứ tư, những hành động của Trung Quốc trên Biển Đông khiến Nga cho rằng sự "giằng co" giữa Trung Quốc và một số quốc gia Đông Nam Á về Biển Đông sẽ giúp hạn chế Bắc Kinh "bành trướng" sang các khu vực khác. Tại Nga, luôn có tiếng nói lo ngại rằng sự lớn mạnh của Trung Quốc sẽ khiến vùng viễn đông của Nga đứng trước nguy cơ bị người Trung Quốc "xâm chiếm". Đây là vùng lãnh thổ rộng lớn và có nhiều tài nguyên nên chắc chắn sẽ là "miếng mồi ngon" cho một Trung Quốc đang lớn mạnh. Mặc dù các quan chức Nga vẫn tỏ ra lạc quan về triển vọng hợp tác với Trung Quốc, họ chưa bao giờ ngừng cảnh giác trước cái mà Bắc Kinh gọi là "sự mở rộng lãnh thổ".

Moscow vẫn ngấm ngầm ủng hộ Bắc Kinh?

Dù vậy, Trung Quốc có thể không cần phải thất vọng trước lập trường của Nga về Biển Đông. Mối quan hệ trong hàng chục năm đã khiến hai quốc gia có thể "ngầm hiểu nhau".

 Hải quân Nga - Trung tập trận trên biển Hoa Đông là 1 hình thức ủng hộ của Nga dành cho Trung Quốc?

Ví dụ, về vấn đề Crimea vừa qua, Trung Quốc đã tránh công khai ủng hộ Nga; thay vào đó bỏ phiếu trắng tại Liên Hợp Quốc. Điều đó không có nghĩa Trung Quốc phản đối Nga về Crimea. Tương tự, việc Nga thể hiện lập trường trung lập về Biển Đông không có nghĩa Nga không ủng hộ Trung Quốc.

Nga có cách riêng để bày tỏ sự ủng hộ đối với Trung Quốc, ví dụ như thông qua các cuộc tập trận quân sự chung trên biển Hoa Đông. Hành động đó khiến phương Tây không khỏi ghen tỵ.

Trung Quốc và Nga đều cho phép nhau thực hiện các chính sách không rõ ràng và đó là dấu hiệu cho thấy mối quan hệ đối tác đã sâu đậm hơn. Điều đó giúp cả Nga và Trung Quốc tối đa hóa các lợi ích quốc gia của hai nước này.

 

Samsung tìm cách tiêu núi tiền 60 tỷ USD - VnExpress Kinh Doanh

http://kinhdoanh.vnexpress.net/tin-tuc/quoc-te/samsung-tim-cach-tieu-nui-tien-60-ty-usd-3005787.html

Samsung tìm cách tiêu núi tiền 60 tỷ USD

Đại gia điện tử Hàn Quốc - Samsung Electronics đang tăng mua trái phiếu để giải ngân số tiền mặt 60 tỷ USD, khi các ngân hàng trong nước ngần ngại nhận tiền gửi.

Samsung đã mua hơn hai phần ba số trái phiếu kỳ hạn 2 năm (gần 300 triệu USD) của Kookmin Bank - thuộc Tập đoàn tài chính KB Financial. Đây là ngân hàng thương mại lớn nhất nước này về giá trị tài sản. Hãng cũng đã mua gần 300 tỷ won (hơn 290 triệu USD) trái phiếu Chính phủ kỳ hạn 3 năm cuối tháng trước. Các khoản đầu tư của nhà sản xuất smartphone lớn nhất thế giới cho thấy hãng đang gặp rắc rối trong việc quản lý khối dự trữ khổng lồ ngày một phình lên.

Dù mua trái phiếu chẳng phải việc bất thường, theo giới phân tích, Samsung lại thường mua trái phiếu phát hành bởi các công ty tài chính được Chính phủ bảo đảm, như Korea Development Bank hay Korea Finance Corp. "Tôi cho rằng Samsung đang đa dạng hóa đầu tư. Gửi tiền vào ngân hàng thường không có lãi suất và kỳ hạn như ý, nên có vẻ họ đang chuyển hướng sang thị trường trái phiếu", Kong Dong-rak tại công ty chứng khoán Hanwha cho biết trên Reuters.

Samsung đang tìm cách giải quyết núi tiền mặt sẽ lên hơn 70 tỷ USD cuối năm nay. Ảnh: Bloomberg

Samsung không thường xuyên thực hiện mua bán - sáp nhập lớn, và cũng ngần ngại chia cổ tức khủng hay mua lại cổ phiếu. Vì thế, núi tiền của hãng ngày một nhiều lên. Theo ông Lee Seung-woo – nhà phân tích tại công ty chứng khoán IBK, cuối năm nay, núi tiền mặt của Samsung sẽ lên tới 75.000 tỷ won (73,4 tỷ USD).

Đối thủ của hãng - Apple cũng thường xuyên chịu sức ép từ cổ đông và đã phải chia cổ tức, mua cổ phiếu. Dù vậy, quý gần nhất, núi tiền mặt của hãng mới chỉ vơi đi gần 8 tỷ USD, xuống 150 tỷ USD. Cổ tức của Apple chỉ hơn 2%. Nhưng dù sao cũng đã gấp đôi Samsung.

Núi tiền mặt của Samsung có thể là một phần trong chiến dịch tái cấu trúc Tập đoàn mẹ - Samsung. "Samsung Electronics có thể mua cổ phiếu của các công ty liên kết, để bơm tiền cho các công ty cùng tập đoàn. Số tiền này sau đó có thể được các Samsung khác dùng để đầu tư mới hoặc cải tổ", Lee Min-hee - nhà phân tích tại IM Investment cho biết.

Một quan chức ngân hàng Hàn Quốc cho biết động thái mua trái phiếu của Samsung xuất phát một phần từ sự lưỡng lự của ngân hàng khi phải nhận quá nhiều tiền gửi từ hãng này. Số tiền này thường là ngắn hạn và có thể gây khó khăn trong việc quản trị nợ của nhà băng khi bị rút ra. "Từ quan điểm của các ngân hàng trong nước, nhận quá nhiều tiền gửi từ một công ty là việc rất rủi ro", ông nói.

Một lãnh đạo tổ chức tài chính khác thì cho biết: "Samsung thường gửi tiền kỳ hạn ngắn và sau khi đáo hạn lại tiếp tục gửi. Nhưng từ nửa cuối năm ngoái, các ngân hàng bắt đầu áp lãi suất rất thấp, để tỏ thái độ sẽ không nhận tiền nữa".

Động thái của Samsung đã giúp nâng giá các trái phiếu ngắn hạn địa phương, đặc biệt là loại kỳ hạn 2 năm và 3 năm. "Người ta từng lo ngại liệu thị trường có thể hấp thụ được nguồn cung trái phiếu lớn như vậy từ các ngân hàng hay không. Nhưng nỗi lo đó đã tan biến khi Samsung vào cuộc", một quan chức ngân hàng khác nhận xét.

 

Thứ Tư, 18 tháng 6, 2014

Điều chưa biết về vụ Su-24 Nga “dọa chết khiếp” TSB Mỹ

http://kienthuc.net.vn/vu-khi/dieu-chua-biet-ve-vu-su24-nga-doa-chet-khiep-tsb-my-348411.html

Điều chưa biết về vụ Su-24 Nga "dọa chết khiếp" TSB Mỹ

(Kienthuc.net.vn) - Cuối năm 2000, các máy bay Su-27 và Su-24 Không quân Nga đã qua mặt hệ thống radar tối tân Mỹ, viếng thăm bất ngờ những 2 lần tàu sân bay USS Kitty Hawk.

Đầu tháng 12/2000, truyền thông Nga đồng loạt đăng tải thông tin gây sốc vào thời điểm bấy giờ, ngày 17/10/2000, tiêm kích đa năng Su-27 và máy bay trinh sát Su-24MR của Không quân Nga đã qua mặt được hệ thống radar trinh sát trên tàu sân bay USS Kitty Hawk (Mỹ) để thực hiện một cuộc viếng thăm chiếc "siêu hạm" này trên vùng biển Nhật Bản.

Kiến Thức từng đề cập một phần sự kiện có "1-0-2" này trong bài viết: Hé lộ tiêm kích Nga "dọa" tàu sân bay Mỹ. Gần đây, bức thư điện tử của phi công Mỹ trên tàu sân bay USS Kitty Hawk được công bố đã tiết lộ thêm những tình tiết mới, nhất là phản ứng tuyệt vọng của thủy thủ đoàn khi máy bay Nga áp sát tàu.

Mẫu máy bay cường kích được cho là lỗi thời trên thế giới đã không ít lần khiến người Mỹ ôm hận.

Theo đó, trước khi có cuộc viếng thăm ngày 9/11/2000 trong bài Hé lộ tiêm kích Nga "dọa" tàu sân bay Mỹ, vào ngày 17/10 các máy bay Nga đã thực hiện việc lượn vài vòng trên đầu USS Kitty Hawk.

Dưới đây là đoạn trích nội dung bức thư điện tử của phi công tàu sân bay USS Kitty Hawk:

"… Chuyến đi biển khá dễ dàng và thú vị: 54 ngày trên biển, 4 ngày ở cảng và 45 giờ bay chỉ trong tháng 10! (nhiều phi công của Không quân Nga có số giờ bay một năm gần 45-60 giờ trong khi cần bay 200-250 giờ). Đúng vậy, chúng tôi đã bay hết phần của mình. Từ khi tôi trở thành một trong những chỉ huy của phi đội, tôi đã bay nhiều. Và đây là một câu chuyện thú vị (hoàn toàn không phải bịa đặt).

Khi đó, chúng tôi cùng với cấp phó của mình gồi tán gẫu vớ vẩn với nhau, bỗng nghe thấy tiếng từ Trung tâm thông tin tác chiến - "bộ não" của tàu sân bay: "Báo cáo, chúng tôi phát hiện thấy máy bay Nga".

 Nhóm tác chiến tàu sân bay USS Kitty Hawk (CV-63).

Thuyền trưởng USS Kitty Hawk đáp: "Báo động, cho máy bay tiêm kích cất cánh". Từ Trung tâm, mọi người nói: chỉ có thể phát lệnh "Báo động 30 (máy bay cất cánh sau khi có lệnh 30 (!) phút). Thuyền trưởng văng tục và nói: "Cho cất cánh mọi thứ có thể cất cánh, và làm nhanh nhanh lên!".

Tôi chạy đến điện thoại hoa tiêu và liên lạc với sĩ quan trực của phi đội. Hôm đó không phải ngày trực của phi đội chúng tôi, nên tôi lệnh cho sĩ quan trực xem ai trực và làm sao đó để họ đừng có dán mông vào ghế và lao ngay lên boong cất cánh (Báo động 7 - là lệnh phát ra khi phi công đã trên đường băng và sẵn sàng cất cánh; Báo động 30 nghĩa là phi công còn ngồi trong phòng chờ).

Không lâu sau, máy bay Su-27 và Su-24 Nga bay qua ngay trên cầu chỉ huy của USS Kitty Hawk với tốc độ 500 dặm biển. Hệt như trong phim Top Gun (các sĩ quan có mặt trên cầu chỉ huy hất cà phê của mình đi và văng tục một cách giận dữ …!). Đúng lúc này tôi nhìn thuyền trưởng - mặt ông ta đỏ lựng lên.

 Ở thời điểm sinh tử đó, trong nỗ lực tuyệt vọng, người Mỹ chỉ có thể đưa một máy bay tác chiến điện tử EA-6B cất cánh.

Các máy bay tiêm kích Nga còn lượn hai vòng gấp ở độ cao thấp trước khi chúng tôi cuối cùng cũng cho một chiếc đầu tiên của mình cất cánh từ boong tàu. Đó là chiếc máy bay tác chiến điện tử ЕА-6В. Đúng, đúng, chúng tôi đã cho chiếc Prowler bất hạnh một mình đối đầu với máy bay tiêm kích ngay trên con tàu. Các phi công của chúng tôi đã yêu cầu giúp đỡ, khi rút cục máy bay F/A-18 của phi đội "đàn chị" (tôi cố ý dùng thuật ngữ này với nghĩa đen, bởi vì những chiếc máy bay này nhìn giống hệt như tốp "đàn bà dễ dãi" mải chơi với mấy cậu Nga) cũng cất cánh để thực hiện đánh chặn. Nhưng chậm mất rồi, cả đội tàu ngẩng cổ quan sát xem người Nga chế nhạo nỗ lực tội nghiệp định chặn họ lại.

Điều buồn cười nhất là đô đốc và tư lệnh cụm tàu sân bay lúc đó đang ở phòng chỉ huy dự cuộc họp buổi sáng, cuộc họp bị ngắt vì tiếng rú của động cơ máy bay Nga lượn trên đài chỉ huy tàu sân bay. Sĩ quan trong bộ tham mưu của tư lệnh kể cho tôi, các đô đốc nhìn nhau, nhìn bảng kế hoạch bay, tin chắc là ngày hôm đó chỉ có kế hoạch mấy giờ nữa mới cho máy bay cất cánh, và hỏi nhau: "Cái gì xảy ra vậy?".

4 ngày sau, tình báo Nga đã gửi theo hòm thư điện tử cho thuyền trưởng USS Kitty Hawk những tấm ảnh các phi công của chúng tôi chạy lăng xăng trên boong, tuyệt vọng tìm cách cho máy bay cất cánh…".

Các sự kiện được nêu trong bức thư đã xảy ra ở khu vực eo biển Triều Tiên ngày 17/10/2000. Khi đó, 2 máy bay trinh sát Su-24MR và 2 tiêm kích hộ tống Su-27 của Quân đội 11, Không quân Nga đã bất ngờ viếng thăm và lượn vài vòng "thăm hỏi" tàu sân bay Kitty Hawk

Theo tư lệnh Không quân Nga khi đó Anatoli Karnukov, "đây là chuyến trinh sát theo kế hoạch, tuy nhiên, trong chuyến trinh sát này đã thực hiện những nhiệm vụ không bình thường". Đồng thời phía Nga đã không vi phạm bất cứ hiệp ước quốc tế nào.

Quan chức Nga khi đó cho biết, các cuộc diễn tập của Hải quân Mỹ đã diễn ra chỉ cách bờ biển Nga 300km, điều không thể đánh giá là hành động hữu hảo đối với Nga. Vì vậy hành động của Không quân Nga là hoàn toàn có cơ sở và đúng luật.

 Tiêm kích huyền thoại Su-27 của Không quân Nga cũng để lại ấn tượng khó phai đối với người Mỹ.

Theo lời nguyên tư lệnh Không quân Nga, kết quả trinh sát là "rất ấn tượng". Su-24MR đã bay trên tàu sân bay vài lần, chụp ảnh tất cả những gì diễn ra trên đường băng mặt boong.

"Trên các bức ảnh thấy rõ sự hoảng loạn trên tàu sân bay: Các lính thủy vội vã chặt đứt đường ống nối tàu sân bay với tàu chở dầu lúc đó đang tiếp nhiên liệu cho Kitty Hawk", ông này cho biết.

Chỉ sau vòng bay thứ hai của máy bay trinh sát Nga, người Mỹ mới cho máy bay tiêm kích F/A-18 cất cánh được, song Su-27 ngay lập tức đã kéo chúng ra xa bằng thao tác lôi kéo, điều đó cho phép các máy bay trinh sát bay vòng mấy lần nữa phía trên tàu sân bay hoàn toàn không được bảo vệ từ trên không.

Theo tin của báo chí, các máy bay Nga còn lặp lại việc bay quanh USS Kitty Hawk ngày 9/11 và cũng thành công.

 

Máy bay tàng hình Mỹ có thực sự vô đối?

http://kienthuc.net.vn/vu-khi/may-bay-tang-hinh-my-co-thuc-su-vo-doi-351879.html

Máy bay tàng hình Mỹ có thực sự vô đối?

Thực tế máy bay tàng hình chỉ "khó bị phát hiện hơn" ở một số bước sóng, không hoàn toàn vô hình trước radar.

Về nguyên tắc vật lý, không thể có máy bay tàng hình theo đúng nghĩa. Các dòng máy bay tàng hình được quảng cáo thực tế chỉ được áp dụng sâu công nghệ giảm phản xạ hoặc có khả năng hấp thụ sóng radar cho phép máy bay "khó bị phát hiện hơn" ở một số bước sóng. Đây cũng là điều giúp lý giải tại sao những máy bay tàng hình trị giá hàng trăm triệu, hàng tỷ USD lại có thể bị phát hiện và bắn hạ bởi các loại vũ khí rẻ tiền hơn nhiều.

Công nghệ máy bay tàng hình bắt đầu nổi tiếng thế giới từ chiến dịch "Bão táp sa mạc" tấn công Iraq của quân đội Mỹ. Trong 6 tuần chiến sự, hằng đêm, các đơn vị cường kích cơ F-117A đã vượt qua hệ thống cảnh giới, phòng không của Iraq tấn công Baghdad và quay trở về "không một vết xước". F-117A tác chiến hiệu quả đến mức Phó Tư lệnh Không quân Mỹ thời điểm đó John Welch tự hào: "Công nghệ tàng hình đã mang cho chúng tôi điều tối quan trọng trong mỗi cuộc chiến - đó là sự bất ngờ".

 Máy bay chiến đấu tàng hình đầu tiên của Mỹ - F-117.

Trong một số thời điểm, F-117 của Mỹ còn nổi tiếng hơn nhiều so với đồ uống có gas danh tiếng Coca cola hay xe sang Cadillac của Mỹ. Tuy nhiên, quảng cáo vẫn là quảng cáo, chiến tranh mới là nơi vũ khí thể hiện hay bộc lộ yếu điểm chết người của mình.

Cái giá của tàng hình

Như đã nói ở trên, việc giúp một vật thể bay nặng hàng chục tấn biến mất trên không là điều không thể. Công nghệ tàng hình hiện đại chỉ giúp nó khó bị quan sát hơn trong các bước sóng radar. Cùng với đó, công nghệ tàng hình gần như vô hiệu trước các thiết bị quan sát quang-truyền hình và ảnh nhiệt. Đây là "gót chân Achilles" của máy bay tàng hình trước các loại vũ khí phòng không hiện đại sử dụng công nghệ đa bước sóng hoặc đầu dò hỗn hợp.

Mục đích chính của công nghệ tàng hình là giúp máy bay khó bị radar phát hiện. Thông thường, tín hiệu radar có thể phát hiện một mục tiêu bay cỡ máy bay chiến đấu ở khoảng cách 300km, thì công nghệ tàng hình giúp kéo lùi khoảng cách trên lại, nhưng với các giá không hề rẻ....

 Kiểu dáng kì quái của máy bay tàng hình B-2.

Để phân tán sóng radar, máy bay tàng hình phải góc cạnh (tạo ra các đa giác trên bề mặt để phân tán sóng radar phản hồi) và sử dụng vật liệu carbon thay thế kim loại. Yếu tố này làm máy bay mất đi hình dáng khí động cần có để thao tác dễ dàng trên không. Ngoài ra, động cơ và ống xả động cơ trên máy cũng phải thiết kế đặc biệt để giảm phán tán tín hiệu nhiệt đặc trưng.

Cánh đuôi của máy bay cũng được thiết kế dạng nghiêng và kính khoang lái được phủ lớp sơn nano đặc biệt để giảm tín hiệu radar phản hồi.

Thiết kế tinh vi và phức tạp cũng làm quy trình bảo dưỡng, sửa chữa và bảo lưu máy bay tàng hình rất phức tạp. Máy bay F-22 và B-2 của Mỹ cần các khoang chứa đặc biệt để tránh tác động xấu của môi trường lên lớp sơn tàng hình của máy bay.

Điều tối quan trọng nữa trên máy bay tàng hình là nó không thể treo vũ khí ngoài làm tăng tiết diện phản xạ radar. Vũ khí chỉ được chứa ở khoang kín trong thân và các mô-đun đặc biệt vì thế số lượng, khối lượng vũ khí mang theo rất hạn chế.

 Tuy kiểu dáng của F-22 khá giống với máy bay truyền thống nhưng chi phí bảo dưỡng để bảo vệ công nghệ tàng hình của nó là đắt khủng khiếp.

Để tàng hình, máy bay thậm chí không được thường xuyên bật radar tự thân. Nếu có, bức xạ phát ra từ hệ thống radar trên máy bay sẽ như "ngọn đèn hải đăng" báo hiệu sự có mặt của máy bay tàng hình.

Cần công nghệ chế tạo đặc biệt và tinh vi nên giá thành của máy bay tàng hình rất đắt. Có thể ví dụ, giá thành của mỗi máy bay B-2 Spirit có thể lên tới 2 tỷ USD, nhưng hiệu quả tác chiến của nó mang lại không hẳn như mong đợi.

"Hiện đại quá hóa hại điện"

Để có được khả năng "vô hình" trước radar, máy bay tàng hình đã đánh mất yếu tố cơ động, tốc độ và thậm chí là cả khả năng bay.

Trên F-117, chúng ta có thể thấy máy bay được xây dựng sử dụng dạng khí động "cánh bay" vốn rất thiếu ổn định và không thể đạt tốc độ bay siêu âm. Để khắc phục, F-117A được trang bị hệ thống máy tính hỗ trợ điều khiển mạnh để giúp phi công, nhưng điều đó không giúp dòng máy bay này hoạt động tốt. Dù được trang bị tốt nhất, được điều khiển bởi các phi công kỳ cựu nhất, nhưng vẫn có 6 chiếc trên tổng số 64 máy bay F-117A bị rơi trong các chuyến bay huấn luyện.

 Xác F-117 bị bắn rơi năm 1999.

Do những thiếu sót công nghệ không thể khắc phục, năm 2008, dòng chiến đấu cơ F-117A được cho "nghỉ hưu" và thay thế nó là các đơn vị F-22 và F-35. Mới đây, chuyên gia của diễn đàn quân sự uy tín Air Power Australia, Carlo Kopp đánh giá, trong trường hợp đối đầu, tổ hợp tên lửa phòng không S-400 của Nga "dư sức" đánh bại các dòng máy bay thế hệ 5 tàng hình của Mỹ.

Các chuyên gia đánh giá, công nghệ tàng hình hiện nay ít hiệu quả đối với sóng radar băng tần X và sóng cực ngắn. Đây vốn là công nghệ cơ bản của các tổ hợp radar trinh sát di động của Nga. Trong tương lai, Nga và Trung Quốc sẽ triển khai thêm công nghệ radar này trên chiến hạm.

Theo báo Quân đội Nhân dân

 

Lộ ý đồ Nga “biếu không” hàng loạt tên lửa S-300

http://kienthuc.net.vn/vu-khi/lo-y-do-nga-bieu-khong-hang-loat-ten-lua-s300-350176.html

Lộ ý đồ Nga "biếu không" hàng loạt tên lửa S-300

(Kienthuc.net.vn) - Việc nước Nga "biếu không" hàng loạt hệ thống S-300 là một phương án tăng sự ảnh hưởng tới khối SNG và giúp xử lý bớt số tên lửa đã cũ.

Theo trang mạng Strategy Page, nước Nga đang trỗi dậy và quyết tâm lấy lại một vị thế như Liên Xô từng có. Họ bắt đầu thực hiện nhiều biện pháp để thiết lập lại một sự ảnh hưởng mạnh mẽ tới các nước SNG (Cộng đồng các quốc gia độc lập – các nước thành viên Liên Xô cũ), mà việc lập hệ thống phòng không liên hợp đa quốc gia do Nga đứng đầu là một điển hình.

Strategy Page cho biết rằng, yêu cầu đầu tiên hình thành được hệ thống phòng không liên hợp như vậy là các nước tham gia cần có sức mạnh đối không tương đối.

 Nga đã cho không các nước SNG 13 tiểu đoàn S-300 - con số đáng kể đặc biệt là về mặt chi phí.

Để đảm bảo điều này, Moscow sẵn lòng cung cấp miễn phí các hệ thống phòng không uy lực như S-300 cho các thành viên khác. Belarus - nước gia nhập hệ thống phòng không liên hợp từ năm 2009 đã được nhận 4 tiểu đoàn S-300, 4 tiểu đoàn nữa sẽ được chuyển giao hết trong năm nay. Về phần Kazakhastan thì mới được nhận 5 tiểu đoàn S-300PS vào đầu năm nay.

Ngoài ra, khả năng cao là số tiểu đoàn S-300 mà Nga mang đi làm "quà biếu" sẽ không chỉ dừng lại ở đó khi mà Armenia, Uzbekistan và Taijikistan sẽ gia nhập hệ thống phòng thủ liên hợp đa quốc gia trong thời gian tới.

Theo giới phân tích, Nga tất nhiên đã cân nhắc rất kỹ khi "hào phóng" tặng đi hàng trăm triệu USD như vậy. Rõ ràng, Moscow cần xây dựng thành công một hệ thống phòng không liên quốc gia với tối đa số lượng thành viên là các nước láng giềng. Đặc biệt, trong bối cảnh Mỹ đang dần hoàn thiện hệ thống phòng thủ tên lửa và vũ khí tấn công nhanh toàn cầu cùng với đó là tham vọng to lớn của Trung Quốc.

Về phần mình, các quốc gia SNG có ngân sách không quá rủng rỉnh, việc được viện trợ một số lượng lớn hệ thống phòng không uy lực hàng đầu thế giới như S-300 là một điều hấp đẫn đáng để cân nhắc.

 Tuy đang được dần loại bỏ tại Nga nhưng trên thế giới S-300 vẫn là hệ thống vũ khí đối không đáng gờm.

Lợi ích tiếp theo, Nga sẽ đạt được mục tiêu như công bố là nâng cao khả năng phòng thủ cho các nước đối tác, cũng như cho toàn bộ hệ thống nói chung. Không những thế, S-300 mà Nga viện trợ đều là những phiên bản đời đầu (định danh chủng của NATO là SA-10), như với Kazakhstan là S-300PS. Moscow đang "thừa" hàng trăm tiểu đoàn S-300 như vậy. Chúng có thể là hàng qua sử dụng từ các đơn vị chiến đấu hoặc còn mới tinh trong kho dự trữ chiến lược của Bộ Quốc phòng.

Dù vẫn rất uy lực nhưng những hệ thống SA-10, thậm trí là bản nâng cấp SA-12 đều là sản phẩm của thời đại chiến tranh Lạnh, chúng đang được cho nghỉ hưu trong cuộc cách mạng hiện đại hóa Quân đội Nga. Moscow đã từ bỏ sản xuất S-300 nội địa từ năm 2011 và thay vào đó là những hệ thống S-400 Triumph (NATO định danh là SA-21) hiện đại hơn nhiều. Bắt đầu có mặt trong biên chế từ năm 2007, số lượng S-400 sẽ lên đến 56 tiểu đoàn vào 2020. Vì vậy, cần có biện pháp xử lý số lượng lớn hàng nghìn quả đạn, hàng trăm bệ phóng S-300 bị loại thải.

"Những gói viện trợ béo bở như trên hoặc các hợp đồng hữu nghị với các đối tác xa xôi đều là những phương án giải quyết không tồi", Strategy Page nhận định.

 

Thứ Ba, 10 tháng 6, 2014

Deploy Windows To Go in Your Organization

http://technet.microsoft.com/en-us/library/jj721578.aspx

Deploy Windows To Go in Your Organization

11 out of 11 rated this helpful - Rate this topic

Published: October 10, 2012

Updated: September 20, 2013

Applies To: Windows 8, Windows 8.1

This topic helps you to deploy Windows To Go in your organization.

Before you begin deployment, make sure that you have reviewed the topics Windows To Go: Feature Overview and Prepare Your Organization for Windows To Go to ensure that you have the correct hardware and are prepared to complete the deployment.

Then, use the following steps to start your Windows To Go deployment:

Note

This topic includes sample Windows PowerShell cmdlets that you can use to automate some of the procedures described. For more information, see Using Cmdlets.

Deployment tips

The following is a list of items that you should be aware of before you start the deployment process:

  • Only use recommended USB drives for Windows To Go. Use of other drives is not supported. Check the list at Hardware considerations for Windows To Go for the latest USB drives certified for use as Windows To Go drives.
  • After provisioning a new workspace, always eject a Windows To Go drive using the Safely Remove Hardware and Eject Media control that can be found in the notification area or in Windows Explorer. Removing the drive from the USB port without ejecting it first can cause the drive to become corrupted.
  • When running a Windows To Go workspace, always shutdown the workspace before unplugging the drive.
  • The Community Technology Preview (CTP) of Service Pack 1 for System Center 2012 Configuration Manager includes support for user self-provisioning of Windows To Go drives. Configuration Manager 2012 SP1 CTP can be downloaded for evaluation from the Microsoft Download Center. For more information on this deployment option, see How to Provision Windows To Go in Configuration Manager.
  • If you are planning on using a USB drive duplicator to duplicate Windows To Go drives, do not configure offline domain join or BitLocker on the drive.

Basic deployment steps

Unless you are using a customized operating system image, your initial Windows To Go workspace will not be domain joined and will not contain applications. This is exactly like a new installation of Windows on a desktop or laptop computer. When planning your deployment, you should develop methods to join Windows to Go drives to the domain and install the standard applications that users in your organization require. These methods probably will be similar to the ones used for setting up desktop and laptop computers with domain privileges and applications. This section describes the instructions for creating the correct disk layout on the USB drive, applying the operating system image and the core Windows To Go specific configurations to the drive. The following steps are used in both small-scale and large-scale Windows To Go deployment scenarios.

Completing these steps will give you a generic Windows To Go drive that can be distributed to your users and then customized for their usage as needed. This drive is also appropriate for use with USB drive duplicators. Your specific deployment scenarios will involve more than just these basic steps but these additional deployment considerations are similar to traditional PC deployment and can be incorporated into your Windows To Go deployment plan. For additional information, see Windows Deployment Options.

Warning

If you are planning to use the generic Windows To Go drive as the master drive in a USB duplicator, the drive should not be booted. If the drive has been booted inadvertently it should be reprovisioned prior to duplication.

Create the Windows To Go workspace

In this step we are creating the operating system image that will be used on the Windows To Go drives. You can use the Windows To Go Creator Wizard or you can do this manually using a combination of Windows PowerShell and command-line tools.

Warning

The preferred method for creating a single Windows To Go drive is to use the Windows To Go Creator Wizard included in Windows 8 Enterprise.

To create a Windows To Go workspace with the Windows To Go Creator Wizard

  1. Sign into your Windows 8 Enterprise PC using an account with Administrative privileges.
  2. Insert the USB drive that you want to use as your Windows To Go drive into your PC.
  3. Verify that the .wim file location (which can be a network share, a DVD , or a USB drive) is accessible and that it contains a valid Windows 8 Enterprise image that has been generalized using sysprep. Many environments can use the same image for both Windows To Go and desktop deployments.

Note

For more information about .wim files, see Windows System Image Manager (Windows SIM) Technical Reference. For more information about using sysprep, see the Sysprep Overview.

  1. Press Windows logo key+W to open Search Settings, type Windows To Go and then press Enter. If the User Account Control dialog box appears, confirm that the action it displays is what you want, and then click Yes. The Windows To Go Creator Wizard opens.
  2. On the Choose the drive you want to use page select the drive that represents the USB drive you inserted previously, then click Next.
  3. On the Choose a Windows 8 image page, click Add Search Location and then navigate to the .wim file location and click select folder. The wizard will display the installable images present in the folder; select the Windows 8 Enterprise image you wish to use and then click Next.
  4. (Optional) On the Set a BitLocker password (optional) page, you can select Use BitLocker with my Windows To Go Workspace to encrypt your Windows To Go drive. If you do not wish to encrypt the drive at this time, click Skip. If you decide you want to add BitLocker protection later, see Enable BitLocker protection for your Windows To Go drive for instructions.

Warning

If you are planning to use a USB-Duplicator to create multiple Windows To Go drives, do not enable BitLocker. Drives protected with BitLocker should not be duplicated.

  1. If you choose to encrypt the Windows To Go drive now:
    • Type a password that is at least eight characters long and conforms to your organizations password complexity policy. This password will be provided before the operating system is started so any characters you use must be able to be interpreted by the firmware. Some firmware does not support non-ASCII characters.
    • Retype the password, and then click Next.

Important

The BitLocker recovery password will be saved in the documents library of the computer used to create the workspace automatically. If your organization is using Active Directory Domain Services (AD DS) to store recovery passwords it will also be saved in AD DS under the computer account of the computer used to create the workspace. This password will be used only if you need to recover access to the drive because the BitLocker password specified in the previous step is not available, such as if a password is lost or forgotten. For more information about BitLocker and AD DS, see Active Directory Domain Services considerations.

  1. Verify that the USB drive inserted is the one you want to provision for Windows To Go and then click Create to start the Windows To Go workspace creation process.

Warning

The USB drive identified will be reformatted as part of the Windows To Go provisioning process and any data on the drive will be erased.

  1. Wait for the creation process to complete, which can take 20 to 30 minutes. A completion page will be displayed that tells you when your Windows To Go workspace is ready to use. From the completion page you can configure the Windows To Go startup options to configure the current computer as a Windows To Go host computer.

Your Windows To Go workspace is now ready to be started. You can now To prepare a host computer using the Windows To Go startup options and boot your Windows To Go drive.

Windows PowerShell equivalent commands

The following Windows PowerShell cmdlet or cmdlets perform the same function as the preceding procedure. Enter each cmdlet on a single line, even though they may appear word-wrapped across several lines here because of formatting constraints. This procedure can only be used on PCs that are running Windows 8. Before starting, ensure that only the USB drive that you want to provision as a Windows To Go drive is connected to the PC.

  1. Launch an elevated Windows PowerShell prompt by either pressing Win+Q, typing in powershell and then pressing Ctrl+Shift+Enter or by right-clicking Windows PowerShell and then clicking Run as administrator.
  2. In the Windows PowerShell session type the following commands to partition a master boot record (MBR) disk for use with a FAT32 system partition and an NTFS-formatted operating system partition. This disk layout can support computers that use either UEFI or BIOS firmware:

3.   

4.  # The following command will set $Disk to all USB drives with >20 GB of storage

5.   

6.  $Disk = Get-Disk | Where-Object {$_.Path -match "USBSTOR" -and $_.Size -gt 20Gb -and -not $_.IsBoot }

7.   

8.  #Clear the disk. This will delete any data on the disk. (and will fail if the disk is not yet initialized. If that happens, simply continue with ‘New-Partition…) Validate that this is the correct disk that you want to completely erase.

9.  #

10.# To skip the confirmation prompt, append –confirm:$False

11.Clear-Disk –InputObject $Disk[0] -RemoveData

12. 

13.# This command initializes a new MBR disk

14.Initialize-Disk –InputObject $Disk[0] -PartitionStyle MBR

15. 

16.# This command creates a 350 MB system partition

17.$SystemPartition = New-Partition –InputObject $Disk[0] -Size (350MB) -IsActive

18. 

19.# This formats the volume with a FAT32 Filesystem

20.# To skip the confirmation dialog, append –Confirm:$False

21.Format-Volume -NewFileSystemLabel "UFD-System" -FileSystem FAT32 `

22.-Partition $SystemPartition

23. 

24.# This command creates the Windows volume using the maximum space available on the drive. The Windows To Go drive should not be used for other file storage.

25.$OSPartition = New-Partition –InputObject $Disk[0] -UseMaximumSize

26.Format-Volume -NewFileSystemLabel "UFD-Windows" -FileSystem NTFS `

27.-Partition $OSPartition

28. 

29.# This command assigns drive letters to the new drive, the drive letters chosen should not already be in use.

30.Set-Partition -InputObject $SystemPartition -NewDriveLetter "S"

31.Set-Partition -InputObject $OSPartition -NewDriveLetter "W"

32. 

33.# This command sets the NODEFAULTDRIVELETTER flag on the partition which prevents drive letters being assigned to either partition when inserted into a different computer.

34.Set-Partition -InputObject $OSPartition -NoDefaultDriveLetter $TRUE

35. 

36. 

  1. Next you need to apply the operating system image that you want to use with Windows To Go to the operating system partition you just created on the disk (this may take 30 minutes or longer, depending on the size of the image and the speed of your USB connection). The following command shows how this can be accomplished using the Deployment Image Servicing and Management command-line tool (DISM):

Tip

The index number must be set correctly to a valid Enterprise image in the .WIM file.

38.#The WIM file must contain a sysprep generalized image.

39.dism /apply-image /imagefile:n:\imagefolder\deploymentimages\mywtgimage.wim /index:1 /applydir:W:\

40. 

  1. Now use the bcdboot command line tool to move the necessary boot components to the system partition on the disk. This helps ensure that the boot components, operating system versions, and architectures match. The /f ALL parameter indicates that boot components for UEFI and BIOS should be placed on the system partition of the disk. The following example illustrates this step:

42.W:\Windows\System32\bcdboot W:\Windows /f ALL /s S:

43. 

  1. Apply SAN policy—OFFLINE_INTERNAL - “4” to prevent the operating system from automatically bringing online any internally connected disk. This is done by creating and saving a san_policy.xml file on the disk. The following example illustrates this step:

45.<?xml version='1.0' encoding='utf-8' standalone='yes'?>

46.<unattend xmlns="urn:schemas-microsoft-com:unattend">

47.  <settings pass="offlineServicing">

48.    <component

49.        xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"

50.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

51.        language="neutral"

52.        name="Microsoft-Windows-PartitionManager"

53.        processorArchitecture="x86"

54.        publicKeyToken="31bf3856ad364e35"

55.        versionScope="nonSxS"

56.        >

57.      <SanPolicy>4</SanPolicy>

58.    </component>

59.   <component

60.        xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"

61.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

62.        language="neutral"

63.        name="Microsoft-Windows-PartitionManager"

64.        processorArchitecture="amd64"

65.        publicKeyToken="31bf3856ad364e35"

66.        versionScope="nonSxS"

67.        >

68.      <SanPolicy>4</SanPolicy>

69.    </component>

70. </settings>

71.</unattend>

72. 

  1. Place the san_policy.xml file created in the previous step into the root directory of the Windows partition on the Windows To Go drive (W: from the previous examples) and run the following command:

74.Dism.exe /Image:W:\ /Apply-Unattend:W:\san_policy.xml

75. 

  1. Create an answer file (unattend.xml) that disables the use of Windows Recovery Environment with Windows To Go. You can use the following code sample to create a new answer file or you can paste it into an existing answer file:

77.<?xml version="1.0" encoding="utf-8"?>

78.<unattend xmlns="urn:schemas-microsoft-com:unattend">

79.    <settings pass="oobeSystem">

80.        <component name="Microsoft-Windows-WinRE-RecoveryAgent"

81.          processorArchitecture="x86"

82.          publicKeyToken="31bf3856ad364e35" language="neutral"

83.          versionScope="nonSxS"

84.          xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"

85.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

86.            <UninstallWindowsRE>true</UninstallWindowsRE>

87.        </component>

88.       <component name="Microsoft-Windows-WinRE-RecoveryAgent"

89.          processorArchitecture="amd64"

90.          publicKeyToken="31bf3856ad364e35" language="neutral"

91.          versionScope="nonSxS"

92.          xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"

93.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

94.            <UninstallWindowsRE>true</UninstallWindowsRE>

95.        </component>

96.    </settings> 

97.</unattend>

98. 

Once the answer file has been saved, copy unattend.xml into the sysprep folder on the Windows To Go drive (for example, W:\Windows\System32\sysprep\)

Important

Setup unattend files are processed based on their location. Setup will place a temporary unattend file into the %systemroot%\panther folder which is the first location that setup will check for installation information. You should make sure that folder does not contain a previous version of an unattend.xml file to ensure that the one you just created is used.

If you do not wish to boot your Windows To Go device on this computer and want to remove it to boot it on another PC, be sure to use the Safely Remove Hardware and Eject Media option to safely disconnect the drive before physically removing it from the PC.

Your Windows To Go workspace is now ready to be started. You can now To prepare a host computer using the Windows To Go startup options to test your workspace configuration, Configure Windows To Go workspace for remote access, or Enable BitLocker protection for your Windows To Go drive.

To prepare a host computer

Computers running Windows 8 can be configured as host computers that use Windows To Go automatically whenever a Windows To Go workspace is available at startup. When the Windows To Go startup options are enabled on a host computer, Windows will divert startup to the Windows To Go drive whenever it is attached to the computer. This makes it easy to switch from using the host computer to using the Windows To Go workspace.

Tip

If you will be using a PC running Windows 7 as your host computer, see Tips for configuring your BIOS settings to work with Windows To Go for information to help you prepare the host computer.

If you want to use the Windows To Go workspace, simply shut down the computer, plug in the Windows To Go drive, and turn on the computer. To use the host computer, shut down the Windows To Go workspace, unplug the Windows To Go drive, and turn on the computer.

Use the following procedure to set the Windows To Go Startup options:

Do this step using Group Policy

To prepare a host computer using the Windows To Go startup options

  1. Press Windows logo key+W to open Search Settings, type Windows To Go Startup Options and then press Enter.
  2. Select Yes to enable the startup options.
  3. Click Save Changes. If the User Account Control dialog box is displayed, confirm that the action it displays is what you want, and then click Yes. (If the Save Changes button is disabled, this computer already has the Windows To Go Startup Options enabled.)

Group Policy configuration option

You can configure your organizations computers to automatically start from the USB drive by enabling the following Group Policy setting:

\\Computer Configuration\Administrative Templates\Windows Components\Portable Operating System\Windows To Go Default Startup Options

Once this policy setting is enabled, automatic starting of a Windows To Go workspace will be attempted when a USB drive is connected to the computer when it is started. Users will not be able to use the Windows To Go Startup Options to change this behavior. If you disable this policy setting, booting to Windows To Go when a USB drive is connected will not occur unless a user configures the option manually in the firmware. If you do not configure this policy setting, users who are members of the Administrators group can enable or disable booting from a USB drive using the Windows To Go Startup Options.

Your host computer is now ready to boot directly into Windows To Go workspace when it is inserted prior to starting the computer. Optionally you can perform Configure Windows To Go workspace for remote access and Enable BitLocker protection for your Windows To Go drive.

Booting your Windows To Go workspace

Once you have configured your host PC to boot from USB, you can use the following procedure to boot your Windows To Go workspace:

To boot your workspace

  1. Make sure that the host PC is not in a sleep state. If the computer is sleeping, either shut it down or hibernate it.
  2. Insert the Windows To Go USB drive directly into a USB 3.0 or USB 2.0 port on the PC. Do not use a USB hub or extender.
  3. Turn on the PC. If your Windows To Go drive is protected with BitLocker you will be asked to type the password, otherwise the workspace will boot directly into the Windows To Go workspace.

Advanced deployment steps

The following steps are used for more advanced deployments where you want to have further control over the configuration of the Windows To Go drives, ensure that they are correctly configured for remote access to your organizational resources, and have been protected with BitLocker Drive Encryption.

Configure Windows To Go workspace for remote access

Making sure that Windows To Go workspaces are effective when used off premises is essential to a successful deployment. One of the key benefits of Windows To Go is the ability for your users to use the enterprise managed domain joined workspace on an unmanaged computer which is outside your corporate network. To enable this usage, typically you would provision the USB drive as described in the basic deployment instructions and then add the configuration to support domain joining of the workspace, installation of any line-of-business applications, and configuration of your chosen remote connectivity solution such as a virtual private network client or DirectAccess. Once these configurations have been performed the user can work from the workspace using a computer that is off-premises. The following procedure allows you to provision domain joined Windows To Go workspaces for workers that don’t have physical access to your corporate network.

Prerequisites for remote access scenario

  • A domain joined computer running Windows® 8 configured as a Windows To Go host computer
  • A Windows To Go drive that hasn’t been booted or joined to the domain using unattend settings.
  • A domain user account with rights to add computer accounts to the domain and is a member of the Administrator group on the Windows To Go host computer
  • DirectAccess configured on the domain

To configure your Windows To Go workspace for remote access

  1. Start the host computer and sign in using a user account with privileges to add workstations to the domain and then run the following command from an elevated command prompt replacing the example placeholder parameters (denoted by <>) with the ones applicable for your environment:

2.  djoin /provision /domain <exampledomain.com> /machine <examplewindowstogo_workspace_name> /certtemplate <WorkstationAuthentication_template> /policynames <DirectAccess Client Policy: {GUID}> /savefile <C:\example\path\domainmetadatafile> /reuse  

3.   

Note

The /certtemplate parameter supports the use of certificate templates for distributing certificates for DirectAccess, if your organization is not using certificate templates you can omit this parameter. Additionally, if are using djoin.exe with Windows Server 2008-based Domain Controllers, append the /downlevel switch during provisioning. For more information see the Offline Domain Join Step-by-Step guide.

  1. Insert the Windows To Go drive.
  2. Launch an elevated Windows PowerShell prompt by right-clicking the Windows PowerShell shortcut in the taskbar, and then clicking Run as Administrator.
  3. From the Windows PowerShell command prompt run:

7.  # The following command will set $Disk to all USB drives with >20 GB of storage

8.   

9.  $Disk = Get-Disk | Where-Object {$_.Path -match "USBSTOR" -and $_.Size -gt 20Gb -and -not $_.IsBoot }

10. 

11.#Clear the disk. This will delete any data on the disk. (and will fail if the disk is not yet initialized. If that happens, simply continue with ‘New-Partition…) Validate that this is the correct disk that you want to completely erase.

12.#

13.# To skip the confirmation prompt, append –confirm:$False

14.Clear-Disk –InputObject $Disk[0] -RemoveData

15. 

16.# This command initializes a new MBR disk

17.Initialize-Disk –InputObject $Disk[0] -PartitionStyle MBR

18. 

19.# This command creates a 350 MB system partition

20.$SystemPartition = New-Partition –InputObject $Disk[0] -Size (350MB) -IsActive

21. 

22.# This formats the volume with a FAT32 Filesystem

23.# To skip the confirmation dialog, append –Confirm:$False

24.Format-Volume -NewFileSystemLabel "UFD-System" -FileSystem FAT32 `

25.-Partition $SystemPartition

26. 

27.# This command creates the Windows volume using the maximum space available on the drive. The Windows To Go drive should not be used for other file storage.

28.$OSPartition = New-Partition –InputObject $Disk[0] -UseMaximumSize

29.Format-Volume -NewFileSystemLabel "UFD-Windows" -FileSystem NTFS `

30.-Partition $OSPartition

31. 

32.# This command assigns drive letters to the new drive, the drive letters chosen should not already be in use.

33.Set-Partition -InputObject $SystemPartition -NewDriveLetter "S"

34.Set-Partition -InputObject $OSPartition -NewDriveLetter "W"

35. 

36.# This command toggles the NODEFAULTDRIVELETTER flag on the partition which prevents drive letters being assigned to either partition when inserted into a different computer.

37.Set-Partition -InputObject $OSPartition -NoDefaultDriveLetter $TRUE

38. 

  1. Next you need to apply the operating system image that you want to use with Windows To Go to the operating system partition you just created on the disk (this may take 30 minutes or longer, depending on the size of the image and the speed of your USB connection). The following command shows how this can be accomplished using the Deployment Image Servicing and Management command-line tool (DISM):

Tip

The index number must be set correctly to a valid Enterprise image in the .WIM file.

40.#The WIM file must contain a sysprep generalized image.

41.dism /apply-image /imagefile:n:\imagefolder\deploymentimages\mywtgimage.wim /index:1 /applydir:W:\

42. 

  1. Once those commands have completed, run the following command:

44.djoin /requestodj /loadfile C:\example\path\domainmetadatafile /windowspath W:\Windows  

  1. Next, we will need to edit the unattend.xml file to configure the first run (OOBE) settings. In this example we are hiding the Microsoft Software License Terms (EULA) page, configuring automatic updates to install important and recommended updates automatically, and identifying this workspace as part of a private office network. You can use other OOBE settings that you have configured for your organization if desired. For more information about the OOBE settings, see OOBE:

46.<?xml version="1.0" encoding="utf-8"?>

47.<unattend xmlns="urn:schemas-microsoft-com:unattend">

48.    <settings pass="oobeSystem">

49.        <component name="Microsoft-Windows-WinRE-RecoveryAgent"

50.          processorArchitecture="x86"

51.          publicKeyToken="31bf3856ad364e35" language="neutral"

52.          versionScope="nonSxS"

53.          xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"

54.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

55.           <UninstallWindowsRE>true</UninstallWindowsRE>

56.           <OOBE>

57.              <HideEULAPage>true</HideEULAPage>

58.              <ProtectYourPC>1</ProtectYourPC>

59.              <NetworkLocation>Work</NetworkLocation>

60.            </OOBE>

61.         </component>

62.       <component name="Microsoft-Windows-WinRE-RecoveryAgent"

63.          processorArchitecture="amd64"

64.          publicKeyToken="31bf3856ad364e35" language="neutral"

65.          versionScope="nonSxS"

66.          xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"

67.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

68.           <UninstallWindowsRE>true</UninstallWindowsRE>

69.           <OOBE>

70.              <HideEULAPage>true</HideEULAPage>

71.              <ProtectYourPC>1</ProtectYourPC>

72.              <NetworkLocation>Work</NetworkLocation>

73.           </OOBE>

74.</component>

75.    </settings> 

76.</unattend>

77. 

  1. Safely remove the Windows To Go drive.
  2. From a host computer, either on or off premises, start the computer and boot the Windows To Go workspace.
    1. If on premises using a host computer with a direct network connection, sign on using your domain credentials.
    2. If off premises, join a wired or wireless network with internet access and then sign on again using your domain credentials.

Note

Depending on your DirectAccess configuration you might be asked to insert your smart card to logon to the domain.

You should now be able to access your organization’s network resources and work from your Windows To Go workspace as you would normally work from your standard desktop computer on premises.

Enable BitLocker protection for your Windows To Go drive

Enabling BitLocker on your Windows To Go drive will help ensure that your data is protected from unauthorized use and that if your Windows To Go drive is lost or stolen it will not be easy for an unauthorized person to obtain confidential data or use the workspace to gain access to protected resources in your organization. When BitLocker is enabled, each time you boot your Windows To Go drive, you will be asked to provide the BitLocker password to unlock the drive. The following procedure provides the steps for enabling BitLocker on your Windows To Go drive:

Prerequisites for enabling BitLocker scenario

  • A Windows To Go drive that can be successfully provisioned.
  • A computer running Windows® 8 configured as a Windows To Go host computer
  • Review the following Group Policy settings for BitLocker Drive Encryption and modify the configuration as necessary:

    \Windows Components\BitLocker Drive Encryption\Operating System Drives\Require additional authentication at startup. This policy allows the use of a password key protector with an operating system drive; this policy must be enabled to configure BitLocker from within the Windows To Go workspace. This policy setting allows you to configure whether BitLocker requires additional authentication each time the computer starts and whether you are using BitLocker with or without a Trusted Platform Module (TPM). You must enable this setting and select the Allow BitLocker without a compatible TPM check box and then enable the Configure use of passwords for operating system drives setting.

    \Windows Components\BitLocker Drive Encryption\Operating System Drives\Configure use of passwords for operating system drives. This policy setting enables passwords to be used to unlock BitLocker-protected operating system drives and provides the means to configure complexity and length requirements on passwords for Windows To Go workspaces. For the complexity requirement setting to be effective the Group Policy setting Password must meet complexity requirements located in Computer Configuration\Windows Settings\Security Settings\Account Policies\Password Policy\ must be also enabled.

    \Windows Components\BitLocker Drive Encryption\Operating System Drives\Enable use of BitLocker authentication requiring preboot keyboard input on slates. This policy setting allows users to enable authentication options that require user input from the preboot environment even if the platform indicates a lack of preboot input capability. If this setting is not enabled, passwords cannot be used to unlock BitLocker-protected operating system drives.

You can choose to enable BitLocker protection on Windows To Go drives before distributing them to users as part of your provisioning process or you can allow your end-users to apply BitLocker protection to them after they have taken possession of the drive. A step-by-step procedure is provided for both scenarios.

Enabling BitLocker during provisioning ensures that your operating system image is always protected by BitLocker. When enabling BitLocker during the provisioning process you can significantly reduce the time required for encrypting the drive by enabling BitLocker after configuring the disk and just prior to applying the image. If you use this method, you will need to give users their BitLocker password when you give then their Windows To Go workspace. Also, you should instruct your users to boot their workspace and change their BitLocker password as soon as possible (this can be done with standard user privileges).

Enabling BitLocker after distribution requires that your users turn on BitLocker. This means that your Windows To Go workspaces are unprotected until the user enables BitLocker. Administrative rights on the Windows To Go workspace are required to enable BitLocker. For more information about BitLocker see the BitLocker Overview.

BitLocker Recovery Keys

BitLocker recovery keys are the keys that can be used to unlock a BitLocker protected drive if the standard unlock method fails. It is recommended that your BitLocker recovery keys be backed up to Active Directory Domain Services (AD DS). If you do not want to use AD DS to store recovery keys you can save recovery keys to a file or print them. How BitLocker recovery keys are managed differs depending on when BitLocker is enabled.

  • If BitLocker protection is enabled during provisioning, the BitLocker recovery keys will be stored under the computer account of the computer used for provisioning the drives. If backing up recovery keys to AD DS is not used, the recovery keys will need to be printed or saved to a file for each drive. The IT administrator must track which keys were assigned to which Windows To Go drive.
  •  

Warning

If BitLocker is enabled after distribution, the recovery key will be backed up to AD DS under the computer account of the workspace. If backing up recovery keys to AD DS is not used, they can be printed or saved to a file by the user. If the IT administrator wants a central record of recovery keys, a process by which the user provides the key to the IT department must be put in place.

To enable BitLocker during provisioning

  1. Start the host computer that is running Windows 8.
  2. Insert your Windows To Go drive.
  3. Launch an elevated Windows PowerShell prompt by right-clicking the Windows PowerShell shortcut in the taskbar, and then clicking Run as Administrator.
  4. Provision the Windows To Go drive using the following cmdlets:

Note

If you used the manual method for creating a workspace you should have already provisioned the Windows To Go drive. If so, you can continue on to the next step.

5.  # The following command will set $Disk to all USB drives with >20 GB of storage

6.   

7.  $Disk = Get-Disk | Where-Object {$_.Path -match "USBSTOR" -and $_.Size -gt 20Gb -and -not $_.IsBoot }

8.   

9.  #Clear the disk. This will delete any data on the disk. (and will fail if the disk is not yet initialized. If that happens, simply continue with ‘New-Partition…) Validate that this is the correct disk that you want to completely erase.

10.#

11.# To skip the confirmation prompt, append –confirm:$False

12.Clear-Disk –InputObject $Disk[0] -RemoveData

13. 

14.# This command initializes a new MBR disk

15.Initialize-Disk –InputObject $Disk[0] -PartitionStyle MBR

16. 

17.# This command creates a 350 MB system partition

18.$SystemPartition = New-Partition –InputObject $Disk[0] -Size (350MB) -IsActive

19. 

20.# This formats the volume with a FAT32 Filesystem

21.# To skip the confirmation dialog, append –Confirm:$False

22.Format-Volume -NewFileSystemLabel "UFD-System" -FileSystem FAT32 `

23.-Partition $SystemPartition

24. 

25.# This command creates the Windows volume using the maximum space available on the drive. The Windows To Go drive should not be used for other file storage.

26.$OSPartition = New-Partition –InputObject $Disk[0] -UseMaximumSize

27.Format-Volume -NewFileSystemLabel "UFD-Windows" -FileSystem NTFS `

28.-Partition $OSPartition

29. 

30.# This command assigns drive letters to the new drive, the drive letters chosen should not already be in use.

31.Set-Partition -InputObject $SystemPartition -NewDriveLetter "S"

32.Set-Partition -InputObject $OSPartition -NewDriveLetter "W"

33. 

34.# This command toggles the NODEFAULTDRIVELETTER flag on the partition which prevents drive letters being assigned to either partition when inserted into a different computer.

35.Set-Partition -InputObject $OSPartition -NoDefaultDriveLetter $TRUE

36. 

  1. Next you need to apply the operating system image that you want to use with Windows To Go to the operating system partition you just created on the disk (this may take 30 minutes or longer, depending on the size of the image and the speed of your USB connection). The following command shows how this can be accomplished using the Deployment Image Servicing and Management command-line tool (DISM):

Tip

The index number must be set correctly to a valid Enterprise image in the .WIM file.

38.#The WIM file must contain a sysprep generalized image.

39.dism /apply-image /imagefile:n:\imagefolder\deploymentimages\mywtgimage.wim /index:1 /applydir:W:\

40. 

  1. In the same PowerShell session use the following cmdlet to add a recovery key to the drive:

42.$BitlockerRecoveryProtector = Add-BitLockerKeyProtector W: -RecoveryPasswordProtector

  1. Next, use the following cmdlets to save the recovery key to a file:

44.#The BitLocker Recovery key is essential if for some reason you forget the BitLocker password

45.#This recovery key can also be backed up into Active Directory using manage-bde.exe or the

46.#PowerShell cmdlet Backup-BitLockerKeyProtector.

47.$RecoveryPassword = $BitlockerRecoveryProtector.KeyProtector.RecoveryPassword

48.$RecoveryPassword > WTG-Demo_Bitlocker_Recovery_Password.txt

49. 

  1. Then, use the following cmdlets to add the password as a secure string. If you omit the password the cmdlet will prompt you for the password before continuing the operation:

51.# Create a variable to store the password

52.$spwd = ConvertTo-SecureString -String <password> -AsplainText –Force

53.Enable-BitLocker W: -PasswordProtector $spwd

54. 

Warning

To have BitLocker only encrypt used space on the disk append the parameter –UsedSpaceOnly to the Enable-BitLocker cmdlet. As data is added to the drive BitLocker will encrypt additional space. Using this parameter will speed up the preparation process as a smaller percentage of the disk will require encryption. If you are in a time critical situation where you cannot wait for encryption to complete you can also safely remove the Windows To Go drive during the encryption process. The next time the drive is inserted in a computer it will request the BitLocker password. Once the password is supplied, the encryption process will continue. If you do this, make sure your users know that BitLocker encryption is still in process and that they will be able to use the workspace while the encryption completes in the background.

  1. Copy the numerical recovery password and save it to a file in a safe location. The recovery password will be required if the password is lost or forgotten.

Warning

If the Choose how BitLocker-protected removable data drives can be recovered Group Policy setting has been configured to back up recovery information to Active Directory Domain Services, the recovery information for the drive will be stored under the account of the host computer used to apply the recovery key.

If you want to have the recovery information stored under the account of the Windows To Go workspace you can turn BitLocker from within the Windows To Go workspace using the BitLocker Setup Wizard from the BitLocker Control Panel item as described in To enable BitLocker after distribution.

  1. Safely remove the Windows To Go drive.

The Windows To Go drives are now ready to be distributed to users and are protected by BitLocker. When you distribute the drives, make sure the users know the following:

  • Initial BitLocker password that they will need to boot the drives.
  • Current encryption status.
  • Instructions to change the BitLocker password after the initial boot.
  • Instructions for how to retrieve the recovery password if necessary. This may be a help desk process, an automated password retrieval site, or a person to contact.

To enable BitLocker after distribution

  1. Insert your Windows To Go drive into your host computer (that is currently shut down) and then turn on the computer and boot into your Windows To Go workspace
  2. Press Windows logo key+W to open Search Settings, type BitLocker and then select the item for BitLocker Drive Encryption.
  3. The drives on the workspace are displayed, click Turn BitLocker On for the C: drive. The BitLocker Setup Wizard appears.
  4. Complete the steps in the BitLocker Setup Wizard selecting the password protection option.

Note

If you have not configured the Group Policy setting \Windows Components\BitLocker Drive Encryption\Operating System Drives\Require additional authentication at startup to specify Allow BitLocker without a compatible TPM you will not be able to enable BitLocker from within the Windows To Go workspace.

Advanced deployment sample script

The following sample script supports the provisioning of multiple Windows To Go drives and the configuration of offline domain join.

The sample script creates an unattend file that streamlines the deployment process so that the initial use of the Windows To Go drive does not prompt the end user for any additional configuration information before starting up.

Prerequisites for running the advanced deployment sample script

  • To run this sample script you must open a Windows PowerShell session as an administrator from a domain-joined computer using an account that has permission to create domain accounts.
  • Using offline domain join is required by this script, since the script does not create a local administrator user account. However, domain membership will automatically put “Domain admins” into the local administrators group. Review your domain policies. If you are using DirectAccess you will need to modify the djoin.exe command to include the policynames and potentially the certtemplate parameters.
  • The script needs to use drive letters, so you can only provision half as many drives as you have free drive letters.

To run the advanced deployment sample script

  1. Copy entire the code sample titled “Windows To Go multiple drive provisioning sample script” into a PowerShell script (.ps1) file.
  2. Make the modifications necessary for it to be appropriate to your deployment and save the file.
  3. Configure the PowerShell execution policy. By default PowerShell’s execution policy is set to Restricted; that means that scripts won’t run until you have explicitly given them permission to. To configure PowerShell’s execution policy to allow the script to run, use the following command from an elevated PowerShell prompt:

4.  Set-ExecutionPolicy RemoteSigned

The RemoteSigned execution policy will prevent unsigned scripts from the internet from running on the computer, but will allow locally created scripts to run. For more information on execution policies, see Set-ExecutionPolicy.

Tip

To get online help for any Windows PowerShell cmdlet, whether or not it is installed locally type the following cmdlet, replacing <cmdlet-name> with the name of the cmdlet you want to see the help for:

Get-Help <cmdlet-name> -Online

This command causes Windows PowerShell to open the online version of the help topic in your default Internet browser.

Windows To Go multiple drive provisioning sample script

<#

.SYNOPSIS

Windows To Go multiple drive provisioning sample script.

 

.DESCRIPTION

This sample script will provision one or more Windows To Go drives, configure offline domain join (using random machine names) and provides an option for BitLocker encryption. To provide a seamless first boot experience, an unattend file is created that will set the first run (OOBE) settings to defaults. To improve performance of the script, copy your install image to a local location on the computer used for provisioning the drives.

 

.EXAMPLE

.\WTG_MultiProvision.ps1 -InstallWIMPath c:\companyImages\amd64_enterprise.wim

provision drives connected to your machine with the provided image.

#>

param (

    [parameter(Mandatory=$true)]

    [string]

    #Path to install wim.  If you have the full path to the wim or want to use a local file.

    $InstallWIMPath,

 

    [string]

    #Domain to which to join the Windows To Go workspaces.

    $DomainName

)

 

 

<#

  In order to set BitLocker Group Policies for our offline WTG image we need to create a Registry.pol file

  in the System32\GroupPolicy folder. This file requires binary editing, which is not possible in PowerShell

  directly so we have some C# code that we can use to add a type in our PowerShell instance that will write

  the data for us.

#>

$Source = @"

using System;

using System.Collections.Generic;

using System.IO;

using System.Text;

 

namespace MS.PolicyFileEditor

{

    //The PolicyEntry represents the DWORD Registry Key/Value/Data entry that will

    //be written into the file.

    public class PolicyEntry

    {

        private List<byte> byteList;

 

        public string KeyName { get; set; }

        public string ValueName { get; set; }

 

        internal List<byte> DataBytes

        {

            get { return this.byteList; }

        }

 

        public PolicyEntry(

            string Key,

            string Value,

            uint data)

        {

            KeyName = Key;

            ValueName = Value;

            this.byteList = new List<byte>();

            byte[] arrBytes = BitConverter.GetBytes(data);

            if (BitConverter.IsLittleEndian == false) { Array.Reverse(arrBytes); }

            this.byteList.AddRange(arrBytes);

        }

 

        ~PolicyEntry()

        {

            this.byteList = null;

        }

    }

 

    public class PolicyFile

    {

        private Dictionary<string, PolicyEntry> entries;

 

        public List<PolicyEntry> Entries

        {

            get

            {

                List<PolicyEntry> policyList = new List<PolicyEntry>(entries.Values);

                return policyList;

            }

        }

 

        public PolicyFile()

        {

            this.entries = new Dictionary<string, PolicyEntry>(StringComparer.OrdinalIgnoreCase);

        }

 

        public void SetDWORDValue(string key, string value, uint data)

        {

            PolicyEntry entry = new PolicyEntry(key, value, data);

            this.entries[entry.KeyName + "\\" + entry.ValueName] = entry;

        }

 

        public void SaveFile(string file)

        {

            using (FileStream fs = new FileStream(file, FileMode.Create, FileAccess.Write))

            {

                fs.Write(new byte[] { 0x50, 0x52, 0x65, 0x67, 0x01, 0x00, 0x00, 0x00 }, 0, 8);

                byte[] openBracket = UnicodeEncoding.Unicode.GetBytes("[");

                byte[] closeBracket = UnicodeEncoding.Unicode.GetBytes("]");

                byte[] semicolon = UnicodeEncoding.Unicode.GetBytes(";");

                byte[] nullChar = new byte[] { 0, 0 };

 

                byte[] bytes;

 

                foreach (PolicyEntry entry in this.Entries)

                {

                    fs.Write(openBracket, 0, 2);

                    bytes = UnicodeEncoding.Unicode.GetBytes(entry.KeyName);

                    fs.Write(bytes, 0, bytes.Length);

                    fs.Write(nullChar, 0, 2);

 

                    fs.Write(semicolon, 0, 2);

                    bytes = UnicodeEncoding.Unicode.GetBytes(entry.ValueName);

                    fs.Write(bytes, 0, bytes.Length);

                    fs.Write(nullChar, 0, 2);

 

                    fs.Write(semicolon, 0, 2);

                    bytes = BitConverter.GetBytes(4);

                    if (BitConverter.IsLittleEndian == false) { Array.Reverse(bytes); }

                    fs.Write(bytes, 0, 4);

 

                    fs.Write(semicolon, 0, 2);

                    byte[] data = entry.DataBytes.ToArray();

                    bytes = BitConverter.GetBytes((uint)data.Length);

                    if (BitConverter.IsLittleEndian == false) { Array.Reverse(bytes); }

                    fs.Write(bytes, 0, 4);

 

                    fs.Write(semicolon, 0, 2);

                    fs.Write(data, 0, data.Length);

                    fs.Write(closeBracket, 0, 2);

                }

                fs.Close();

            }

        }

    }

}

"@

 

########################################################################

#

# Helper Functions

#

Function CreateUnattendFile {

param (

    [parameter(Mandatory=$true)]

    [string]

    $Arch

)

 

    if ( Test-Path "WtgUnattend.xml" ) {

      del .\WtgUnattend.xml

    }

    $unattendFile = New-Item "WtgUnattend.xml" -type File

    $fileContent = @"

<?xml version="1.0" encoding="utf-8"?>

<unattend xmlns="urn:schemas-microsoft-com:unattend">

    <settings pass="oobeSystem">

        <component name="Microsoft-Windows-Shell-Setup" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="$Arch" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

            <OOBE>

                <HideEULAPage>true</HideEULAPage>

                <ProtectYourPC>1</ProtectYourPC>

                <NetworkLocation>Work</NetworkLocation>

            </OOBE>

        </component>

        <component name="Microsoft-Windows-International-Core" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="$Arch">

          <InputLocale>en-US</InputLocale>

          <SystemLocale>en-US</SystemLocale>

          <UILanguage>en-US</UILanguage>

          <UserLocale>en-US</UserLocale>

        </component>

        <component name="Microsoft-Windows-WinRE-RecoveryAgent" processorArchitecture="$Arch" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

            <UninstallWindowsRE>true</UninstallWindowsRE>

        </component>

    </settings>

</unattend>

"@

 

    Set-Content $unattendFile $fileContent

 

    #return the file object

    $unattendFile

}

 

Function CreateRegistryPolicyFile {

 

    $saveFileLocaiton = "" + (get-location) + "\registry.pol"

 

    $policyFile = New-Object MS.PolicyFileEditor.PolicyFile

    $policyFile.SetDWORDValue("Software\Policies\Microsoft\FVE", "UseAdvancedStartup", 1)

    $policyFile.SetDWORDValue("Software\Policies\Microsoft\FVE", "EnableBDEWithNoTPM", 1)

    $policyFile.SetDWORDValue("Software\Policies\Microsoft\FVE", "UseTPM", 2)

    $policyFile.SetDWORDValue("Software\Policies\Microsoft\FVE", "UseTPMPIN", 2)

    $policyFile.SetDWORDValue("Software\Policies\Microsoft\FVE", "UseTPMKey", 2)

    $policyFile.SetDWORDValue("Software\Policies\Microsoft\FVE", "UseTPMKeyPIN", 2)

    $policyFile.SetDWORDValue("Software\Policies\Microsoft\FVE", "OSEnablePrebootInputProtectorsOnSlates", 1)

    $policyFile.SaveFile($saveFileLocaiton)

 

    $saveFileLocaiton

}

 

########################################################################

 

if ( Test-Path $installWIMPath ){

  write-output "Image: $installWIMPath"

}

else{

  write-output "Unable to find image: $installWIMPath" "Exiting the script"

  exit

}

 

if ( (Get-WindowsImage -ImagePath $InstallWIMPath -Index 1).Architecture -eq 0 ){

    $Arch = "x86"

}

else{

    $Arch = "amd64"

}

 

$starttime = get-date

 

#Add type information for modifing the Registy Policy file

Add-Type -TypeDefinition $Source -Language CSharp 

 

#Create helper files

$unattendFile = CreateUnattendFile -Arch $Arch

$registryPolFilePath = CreateRegistryPolicyFile

 

$Disks = Get-Disk | Where-Object {$_.Path -match "USBSTOR" -and $_.Size -gt 20Gb -and -not $_.IsBoot }

if ($Disks -eq $null)

{

    Write-Output "No USB Disks found, exiting the script.  Please check that you have a device connected."

    exit

}

 

#We want to make sure that all non-boot connected USB drives are online, writeable and cleaned.

#This command will erase all data from all USB drives larger than 20Gb connected to your machine

#To automate this step you can add: -confirm:$False

Clear-Disk –InputObject $Disks -RemoveData -erroraction SilentlyContinue

 

# Currently the provisioning script needs drive letters (for dism and bcdboot.exe) and the script is more

# reliable when the main process determines all of the free drives and provides them to the sub-processes.

# Use a drive index starting at 1, since we need 2 free drives to proceed. (system & operating system)

$driveLetters =    68..90 | ForEach-Object { "$([char]$_):" } |

    Where-Object {

        (new-object System.IO.DriveInfo $_).DriveType -eq 'noRootdirectory'

    }

$driveIndex = 1

 

foreach ($disk in $Disks)

{

 

    if ( $driveIndex  -lt $driveLetters.count )

    {

        Start-Job -ScriptBlock {

            $installWIMPath = $args[0]

            $unattendFile = $args[1]

            $Disk = $args[2]

            $SystemDriveLetter = $args[3]

            $OSDriveLetter = $args[4]

            $DomainName = $args[5]

            $policyFilePath = $args[6]

 

            #For compatibility between UEFI and legacy BIOS we use MBR for the disk.

            Initialize-Disk –InputObject $Disk -PartitionStyle MBR

 

            #A short sleep between creating a new partition and formatting helps ensure the partition

            #is ready before formatting.

            $SystemPartition = New-Partition –InputObject $Disk -Size (350MB) -IsActive

            Sleep 1

            Format-Volume -Partition $SystemPartition -FileSystem FAT32 -NewFileSystemLabel "UFD-System" -confirm:$False | Out-Null

 

            $OSPartition = New-Partition –InputObject $Disk -UseMaximumSize

            Sleep 1

            Format-Volume -NewFileSystemLabel "UFD-Windows" -FileSystem NTFS -Partition $OSPartition -confirm:$False | Out-Null

 

 

            #The No default drive letter prevents other computers from displaying contents of the drive when connected as a Data drive.   

            Set-Partition -InputObject $OSPartition -NoDefaultDriveLetter $TRUE

            Set-Partition -InputObject $SystemPartition -NewDriveLetter $SystemDriveLetter

            Set-Partition -InputObject $OSPartition -NewDriveLetter $OSDriveLetter

 

            dism /apply-image /index:1 /applydir:${OSDriveLetter}:\ /imagefile:$InstallWIMPath

            if (!$?){

                write-output "DISM image application failed, exiting."

                exit

            }

 

            copy $unattendFile ${OSDriveLetter}:\Windows\System32\sysprep\unattend.xml

 

            #Create the directory for the Machine Registry Policy file, surpressing the output and any error

            #and copy the pre-created Registry.pol file to that location.

            write-output "Set BitLocker default policies for WindowsToGo"

            md ${OSDriveLetter}:\windows\System32\GroupPolicy\Machine | out-null

            copy $policyFilePath ${OSDriveLetter}:\windows\System32\GroupPolicy\Machine

 

            #modify the registry of the image to set SanPolicy.  This is also where you could set the default

            #keyboard type for USB keyboards.

            write-output "Modify SAN Policy"

            reg load HKLM\PW-System ${OSDriveLetter}:\Windows\System32\config\SYSTEM > info.log

           reg add HKLM\PW-System\ControlSet001\Services\Partmgr\Parameters /v SanPolicy /d 4 /t REG_DWORD /f > info.log

            reg unload HKLM\PW-System > info.log

 

            #We're running bcdboot from the newly applied image so we know that the correct boot files for the architecture and operating system are used.

            #This will fail if we try to run an amd64 bcdboot.exe on x86.

            cmd /c "$OSDriveLetter`:\Windows\system32\bcdboot $OSDriveLetter`:\Windows /f ALL /s $SystemDriveLetter`:"

            if (!$?){

                write-output "BCDBOOT.exe failed, exiting script."

                exit

            }

 

            <#

               If a domain name was provided to the script, we will create a random computer name

               and perform an offline domain join for the device.  With this command we also supress the

               Add User OOBE screen.

            #>

            if ($DomainName)

            {

                #using get-random, we will create a random computer name for the drive.

                $suffix = Get-Random

                $computername = "wtg-" + $suffix

                djoin /provision /domain $DomainName /savefile ${OSDriveLetter}:\tempBLOB.bin /reuse /machine $computername

                djoin /requestodj /loadfile ${OSDriveLetter}:\tempBLOB.bin /windowspath  ${OSDriveLetter}:\windows > info.log

                del ${OSDriveLetter}:\tempBLOB.bin

 

                #add offline registry key to skip user account screen

                write-output "Add Offline Registry key for skipping UserAccount OOBE page."

                reg load HKLM\PW-Temp${OSDriveLetter}   ${OSDriveLetter}:\Windows\System32\config\SOFTWARE > info.log

                reg add HKLM\PW-Temp${OSDriveLetter}\Microsoft\Windows\CurrentVersion\Setup\OOBE /v UnattendCreatedUser /d 1 /t REG_DWORD > info.log

                reg unload HKLM\PW-Temp${OSDriveLetter} > info.log

            }

 

            try

            {

                Write-VolumeCache -DriveLetter ${OSDriveLetter}

                Write-Output "Disk is now ready to be removed."

            }

                catch [System.Management.Automation.CommandNotFoundException]

            {

                write-output "Flush Cache not supported, Be sure to safely remove the WTG device."

            }

 

       } -ArgumentList  @($installWIMPath, $unattendFile, $disk, $driveLetters[$driveIndex-1][0], $driveLetters[$driveIndex][0], $DomainName, $registryPolFilePath)

    }

    $driveIndex  = $driveIndex  + 2

}

#wait for all threads to finish

get-job | wait-job

 

#print output from all threads

get-job | receive-job

 

#delete the job objects

get-job | remove-job

 

 

#Cleanup helper files

del .\WtgUnattend.xml

del .\Registry.pol

 

$finishtime = get-date

$elapsedTime = new-timespan $starttime $finishtime

write-output "Provsioning completed in: $elapsedTime  (hh:mm:ss.000)"

write-output "" "Provisioning script complete."

Provisioning Windows To Go from a computer running Windows 7

You can use a Windows 7 computer to provision Windows To Go workspaces that run Windows 8. The following sample script can be used in this scenario:

Before running the script, make sure that you meet the following prerequisites:

Tip

Verify that you have DISM.exe version 6.2.9200.16384. This should have been updated when the Windows ADK for Windows 8 was installed. It is located at %ProgramFiles(x86)%\Windows Kits\8.0\Assessment and Deployment Kit\Deployment Tools\%PROCESSOR_ARCHITECTURE%\DISM

  • The script must be run from an elevated command prompt.
  • You must be able to supply the ID of the USB drive that is going to be provisioned.
  • You must have the path to the Windows 8 install image that will be used for the workspace.

Tip

If you are planning on using computers running Windows 7 as host computers for Windows To Go workspaces you will need to modify their BIOS settings or use temporary boot device selection to enable the computer to boot from a USB drive.  For more information about accomplishing this task, see Tips for configuring your BIOS settings to work with Windows To Go.

Save the following code sample to a .cmd file (for example, WTG_WIN7_Provision.cmd) and then make the changes necessary for your environment.

ECHO OFF

REM *****************************************************************************************************

REM ** Microsoft Windows To Go Sample BatchFile provisioning script.

REM **

REM ** This script is designed to be used from an elevated command prompt on a computer that is running either Windows 8 or Windows 7 with the Windows 8 ADK

REM ** The script will provision 1 USB drive for Windows To Go (WTG)

REM **

REM ** User must supply the ID for the USB device to become a WTG drive.

REM ** User must supply the path to the install image.

REM ** User must have DISM.exe version 6.2.9200.16384 and dependencies from the win8 ADK

REM **

REM *****************************************************************************************************

 

if "%1" equ "" goto help

if %1 LSS 1 goto InvalidDrive

if "%2" equ "" goto help

 

REM Create SanPolicy unattend file.

echo ^<?xml version="1.0" encoding="utf-8" standalone="yes"?^>                     > San_Policy.xml

echo ^<unattend xmlns="urn:schemas-microsoft-com:unattend"^>                       >> San_Policy.xml

echo   ^<settings pass="offlineServicing"^>                                        >> San_Policy.xml

echo     ^<component                                                               >> San_Policy.xml

echo         xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"         >> San_Policy.xml

echo         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"                 >> San_Policy.xml

echo         language="neutral"                                                    >> San_Policy.xml

echo         name="Microsoft-Windows-PartitionManager"                             >> San_Policy.xml

echo         processorArchitecture="amd64"                                         >> San_Policy.xml

echo         publicKeyToken="31bf3856ad364e35"                                     >> San_Policy.xml

echo         versionScope="nonSxS"                                                 >> San_Policy.xml

echo         ^>                                                                    >> San_Policy.xml

echo       ^<SanPolicy^>4^</SanPolicy^>                                            >> San_Policy.xml

echo     ^</component^>                                                            >> San_Policy.xml

echo     ^<component                                                               >> San_Policy.xml

echo         xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"         >> San_Policy.xml

echo         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"                 >> San_Policy.xml

echo         language="neutral"                                                    >> San_Policy.xml

echo         name="Microsoft-Windows-PartitionManager"                             >> San_Policy.xml

echo         processorArchitecture="x86"                                           >> San_Policy.xml

echo         publicKeyToken="31bf3856ad364e35"                                     >> San_Policy.xml

echo         versionScope="nonSxS"                                                 >> San_Policy.xml

echo         ^>                                                                    >> San_Policy.xml

echo       ^<SanPolicy^>4^</SanPolicy^>                                            >> San_Policy.xml

echo     ^</component^>                                                            >> San_Policy.xml

echo   ^</settings^>                                                               >> San_Policy.xml

echo ^</unattend^>                                                                 >> San_Policy.xml

 

REM Create a generic OOBE unattend file.

echo ^<?xml version="1.0" encoding="utf-8"?^>                                                                                                                                                                                                                                                         > unattend.xml

echo ^<unattend xmlns="urn:schemas-microsoft-com:unattend"^>                                                                                                                                                                                                                                          >> unattend.xml

echo     ^<settings pass="oobeSystem"^>                                                                                                                                                                                                                                                               >> unattend.xml

echo         ^<component name="Microsoft-Windows-Shell-Setup" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="AMD64" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"^>          >> unattend.xml

echo             ^<OOBE^>                                                                                                                                                                                                                                                                             >> unattend.xml

echo                 ^<HideEULAPage^>true^</HideEULAPage^>                                                                                                                                                                                                                                            >> unattend.xml

echo                 ^<ProtectYourPC^>1^</ProtectYourPC^>                                                                                                                                                                                                                                             >> unattend.xml

echo                 ^<NetworkLocation^>Work^</NetworkLocation^>                                                                                                                                                                                                                                      >> unattend.xml

echo             ^</OOBE^>                                                                                                                                                                                                                                                                            >> unattend.xml

echo         ^</component^>                                                                                                                                                                                                                                                                           >> unattend.xml

echo         ^<component name="Microsoft-Windows-International-Core" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="AMD64"^>                                                                                                                       >> unattend.xml

echo           ^<InputLocale^>en-US^</InputLocale^>                                                                                                                                                                                                                                                   >> unattend.xml

echo           ^<SystemLocale^>en-US^</SystemLocale^>                                                                                                                                                                                                                                                 >> unattend.xml

echo           ^<UILanguage^>en-US^</UILanguage^>                                                                                                                                                                                                                                                     >> unattend.xml

echo           ^<UserLocale^>en-US^</UserLocale^>                                                                                                                                                                                                                                                     >> unattend.xml

echo         ^</component^>                                                                                                                                                                                                                                                                           >> unattend.xml

echo         ^<component name="Microsoft-Windows-WinRE-RecoveryAgent" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"^>  >> unattend.xml

echo             ^<UninstallWindowsRE^>true^</UninstallWindowsRE^>                                                                                                                                                                                                                                    >> unattend.xml

echo         ^</component^>                                                                                                                                                                                                                                                                           >> unattend.xml

echo         ^<component name="Microsoft-Windows-Shell-Setup" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="X86" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"^>            >> unattend.xml

echo             ^<OOBE^>                                                                                                                                                                                                                                                                             >> unattend.xml

echo                 ^<HideEULAPage^>true^</HideEULAPage^>                                                                                                                                                                                                                                            >> unattend.xml

echo                 ^<ProtectYourPC^>1^</ProtectYourPC^>                                                                                                                                                                                                                                             >> unattend.xml

echo                 ^<NetworkLocation^>Work^</NetworkLocation^>                                                                                                                                                                                                                                      >> unattend.xml

echo             ^</OOBE^>                                                                                                                                                                                                                                                                            >> unattend.xml

echo         ^</component^>                                                                                                                                                                                                                                                                           >> unattend.xml

echo         ^<component name="Microsoft-Windows-International-Core" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86"^>                                                                                                                         >> unattend.xml

echo           ^<InputLocale^>en-US^</InputLocale^>                                                                                                                                                                                                                                                   >> unattend.xml

echo           ^<SystemLocale^>en-US^</SystemLocale^>                                                                                                                                                                                                                                                 >> unattend.xml

echo           ^<UILanguage^>en-US^</UILanguage^>                                                                                                                                                                                                                                                     >> unattend.xml

echo           ^<UserLocale^>en-US^</UserLocale^>                                                                                                                                                                                                                                                     >> unattend.xml

echo         ^</component^>                                                                                                                                                                                                                                                                           >> unattend.xml

echo         ^<component name="Microsoft-Windows-WinRE-RecoveryAgent" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"^>    >> unattend.xml

echo             ^<UninstallWindowsRE^>true^</UninstallWindowsRE^>                                                                                                                                                                                                                                    >> unattend.xml

echo         ^</component^>                                                                                                                                                                                                                                                                           >> unattend.xml

echo     ^</settings^>                                                                                                                                                                                                                                                                                >> unattend.xml

echo ^</unattend^>                                                                                                                                                                                                                                                                                    >> unattend.xml

 

 

REM Create DiskPart Commands for cleaning and creating a WTG MBR

REM formatted device.  This will create 2 partitions for BIOS & UEFI

REM roaming and set the NoDefaultDriveLetter attribute.

echo select disk %1                             > cmds.txt

echo clean                                      >> cmds.txt

echo create partition primary size=350          >> cmds.txt

echo active                                     >> cmds.txt

echo format FS=FAT32 quick LABEL="WTG-SYSTEM"   >> cmds.txt

echo assign letter=S                            >> cmds.txt

echo create partition primary                   >> cmds.txt

echo format FS=NTFS quick LABEL="WTG-WINDOWS"   >> cmds.txt

echo assign letter=W                            >> cmds.txt

echo attributes volume set NODEFAULTDRIVELETTER >> cmds.txt

 

diskpart /s cmds.txt

del cmds.txt

 

REM Apply the image from the command line.

dism /apply-image /index:1 /applydir:w:\ /imagefile:%2

 

REM Change the boot sector from Windows 7 to Windows 8

w:\windows\system32\bootsect.exe /nt60 S:

 

REM We're running bcdboot from the newly applied image so we know that the correct boot files for the architecture and operating system are used.

w:\windows\system32\bcdboot.exe W:\windows /F ALL /s S:

 

REM Apply SAN policy and configure the default unattend file.

dism /image:w:\ /apply-unattend:San_Policy.xml

copy  unattend.xml w:\windows\System32\sysprep\unattend.xml

 

del San_Policy.xml

del unattend.xml

 

goto end

 

:InvalidDrive

ECHO ERROR: do not specify the boot drive (ID 0), this would erase the current drive.

 

:help

ECHO Usage WTG_WIN7_Provision.cmd ^<USB DiskId^> ^<PathToWim^>

ECHO

ECHO Example: WTG_WIN7_Provision.cmd 1 .\9200_x86fre_ent.wim

:end

Considerations when using different USB keyboard layouts with Windows To Go

Before provisioning your Windows To Go drive you need to consider if your workspace will boot on a machine with a non-English USB keyboard attached. As described in KB article 927824 there is a known issue where the plug and play ID causes the keyboard to be incorrectly identified as an English 101 key keyboard. To avoid this problem, you can modify the provisioning script to set the override keyboard parameters.

In the PowerShell provisioning script, after the image has been applied, you can add the following commands that will correctly set the keyboard settings. The following example uses the Japanese keyboard layout:

            reg load HKLM\WTG-Keyboard ${OSDriveLetter}:\Windows\System32\config\SYSTEM > info.log

            reg add HKLM\WTG-Keyboard\ControlSet001\Services\i8042prt\Parameters /v LayerDriver /d JPN:kbd106dll /t REG_SZ /f

            reg add HKLM\WTG-Keyboard\ControlSet001\Services\i8042prt\Parameters /v OverrideKeyboardIdentifier /d PCAT_106KEY /t REG_SZ /f

            reg add HKLM\WTG-Keyboard\ControlSet001\Services\i8042prt\Parameters /v OverrideKeyboardSubtype /d 2 /t REG_DWORD /f

            reg add HKLM\WTG-Keyboard\ControlSet001\Services\i8042prt\Parameters /v OverrideKeyboardType /d 7 /t REG_DWORD /f

            reg unload HKLM\WTG-Keyboard

 

See also

 

(Chơi cho vui) AIRDROP CHAINGE FINANCE - dự án xây dựng ứng dụng ngân hàng số cho mọi người

 Không hiểu lắm về cái này, tuy nhiên thấy quảng cáo khá nhiều, lại chỉ cung cấp vài thông tin cá nhân (mà mấy ông lớn như facebook với goog...