Similar topics (5)

Windows 7 กับ Sysprep

Started by ans58670, 03 May 2011, 14:16:48

previous topic - next topic

0 Members and 1 Guest are viewing this topic.

Go Down

ans58670

- จากความเหนื่อยของคุณ แฟนต้า๚ ಠ-ಠ ที่ต้องไปลง Windows ทีละ 20-30 เครื่อง และผ่านไปผ่านมาเห็นเขาใช้ Program พวก System Preparation Assisted Tool ในการเตรียม Windows เพื่อติดตั้ง Windows ลงเครื่องใหม่กัน ก็เลยงงว่าเอามาทำไม จึงลองนั่งศึกษาดูพบว่ามันคือ GUI ของ sysprep ธรรมดานี่เอง (เรานี่ไม่ทันสมัยเสียเลยนะพ่อคุณ)

- ไอ้เรารึก็อายุมากแล้ว จะใช้วิธีแบบหนุ่มๆที่ใช้ GUI แบบนั้นก็ไม่เป็น ด้วยว่ารู้จักแต่ XML สำหรับ Unattend ของ sysprep ใน Windows 7 แบบธรรมดาเท่านั้น ก็เลยเอา Code ที่เขียนเอาไว้ใช้มาฝาก

Code Select

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
   <settings pass="oobeSystem">
       <component name="Microsoft-Windows-International-Core" 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">
           <InputLocale>en-us</InputLocale>
           <SystemLocale>th-th</SystemLocale>
           <UILanguage>en-us</UILanguage>
           <UILanguageFallback>en-us</UILanguageFallback>
           <UserLocale>th-th</UserLocale>
       </component>
       <component name="Microsoft-Windows-Shell-Setup" 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">
           <OOBE>
               <HideEULAPage>true</HideEULAPage>
               <NetworkLocation>Home-Work-Public</NetworkLocation>
               <ProtectYourPC>1</ProtectYourPC>
               <SkipUserOOBE>true</SkipUserOOBE>
           </OOBE>
           <RegisteredOrganization>--??--</RegisteredOrganization>
           <RegisteredOwner>--??--</RegisteredOwner>
           <UserAccounts>
               <LocalAccounts>
                   <LocalAccount wcm:action="add">
                       <Password>
                           <Value></Value>
                           <PlainText>true</PlainText>
                       </Password>
                       <Name>--??--</Name>
                       <Group>administrators</Group>
                       <DisplayName>--??--</DisplayName>
                   </LocalAccount>
               </LocalAccounts>
               <AdministratorPassword>
                   <Value></Value>
                   <PlainText>true</PlainText>
               </AdministratorPassword>
           </UserAccounts>
       </component>
   </settings>
   <settings pass="specialize">
       <component name="Microsoft-Windows-Shell-Setup" 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">
           <ShowWindowsLive>false</ShowWindowsLive>
           <TimeZone>SE Asia Standard Time</TimeZone>
           <Display>
               <ColorDepth>32</ColorDepth>
               <DPI>120</DPI>
               <HorizontalResolution>1024</HorizontalResolution>
               <VerticalResolution>768</VerticalResolution>
           </Display>
           <ComputerName>--??--</ComputerName>
           <CopyProfile>true</CopyProfile>
   <AutoLogon>
  <Password>
         <Value></Value>
   <PlainText>true</PlainText>
  </Password>
       <Domain></Domain>
  <Enabled>true</Enabled>
  <LogonCount>999999</LogonCount>
  <Username>--??--</Username>
   </AutoLogon>
       </component>
       <component name="Microsoft-Windows-Deployment" 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">
           <RunSynchronous>
               <RunSynchronousCommand wcm:action="add">
                   <Order>1</Order>
                   <Path>net user administrator /active:no</Path>
               </RunSynchronousCommand>
  </RunSynchronous>
       </component>
   </settings>
   <settings pass="generalize">
       <component name="Microsoft-Windows-Security-Licensing-SLC" 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">
           <SkipRearm>1</SkipRearm>
       </component>
   </settings>
</unattend>


- Code นี้ให้ใส่ใน Notepad แล้ว Save เป็น XML

- ต้องอธิบายกันให้เข้าใจ ไม่อยากให้หลับหูหลับตาใช้โดยไม่เข้าใจมัน เพราะเมื่อท่านเข้าใจแล้ว ก็สามารถนำไปประยุกต์ใช้ได้อีกมาก โดยไม่ต้องใช้ GUI ช่วย (คิดเอาว่าบางคนไม่รู้เรื่องเลยด้วยซ้ำ)

+ <InputLocale>en-us</InputLocale>         => ตั้งค่า Input ให้เป็น en-us (สหรัฐ)
  <SystemLocale>th-th</SystemLocale>         => ตั้งค่า System Locale ให้เป็น th-th (ไทย)
  <UILanguage>en-us</UILanguage>            => ตั้งค่าภาษาพื้นฐานเป็น en-us (สหรัฐ)
  <UILanguageFallback>en-us</UILanguageFallback>      => หากเจอภาษาที่ไม่รู้จัก ให้ใช้ภาษา en-us (สหรัฐ)
  <UserLocale>th-th</UserLocale>            => ตั้งค่า User Locale เป็น th-th (ไทย)

+ <HideEULAPage>true</HideEULAPage>         => ไม่ต้องแสดงหน้า End User License Agreement (ขี้เกียจตอบ)
  <NetworkLocation>Home-Work-Public</NetworkLocation>   => ตั้งค่า Network Location เป็น Home, Work หรือ Public เลือกเอาอันใดอันหนึ่ง
  <ProtectYourPC>1</ProtectYourPC>         => ตั้งค่าให้ Protect Computer แบบ 1 คือแบบ Reccommend
  <SkipUserOOBE>true</SkipUserOOBE>         => ขี้เกียจตอบเรื่อง OOBE (Out-Of-Box Experience)

+ <RegisteredOrganization>--??--</RegisteredOrganization>   => ตั้งชื่อบริษัทเอาเอง
  <RegisteredOwner>--??--</RegisteredOwner>      => ตั้งชื่อเจ้าของตามใจชอบ
   <UserAccounts>
          <LocalAccounts>
                   <LocalAccount wcm:action="add">   => เพิ่ม Local Account คือใส่ Account ใหม่
                       <Password>
                           <Value></Value>      => User Account ใหม่ที่จะใช้นี้ ไม่มี Password แฮะ
                           <PlainText>true</PlainText>   => ใช้ Password แบบ Plain Text (คืออักษรทั่วไป)
                       </Password>
                       <Name>--??--</Name>      => ตั้งชื่อให้ User Account ของท่านสิจ๊ะ
                       <Group>administrators</Group>   => มั่นใจให้อยู่ในกรุ๊ป Admin
                       <DisplayName>--??--</DisplayName>   => ให้แสดงออกมาว่าเป็นชื่ออะไร (ปกติเหมือน User Account นอกจากจะคิดเป็นอื่น)
                   </LocalAccount>
               </LocalAccounts>
               <AdministratorPassword>
                   <Value></Value>         => ไม่ใส่ Admin Password
                   <PlainText>true</PlainText>      => ใช้แบบ Plain Text
               </AdministratorPassword>
   </UserAccounts>

+ <ShowWindowsLive>false</ShowWindowsLive>      => ปิดพวก Windows Live ทั้งหลายเช่น MSN เป็นต้น (ไม่เคยใช้เลยปิดเสียเลย)
  <TimeZone>SE Asia Standard Time</TimeZone>      => Time Zone บ้านเราเขาใช้ code ว่าอย่างนี้แหละ
  <Display>
    <ColorDepth>32</ColorDepth>         => ขอ Display แบบ 32-bit
    <DPI>120</DPI>               => ขนาดตัวอักษร 120 DPI เพราะตัวเล็กแล้วมองไม่เห็น (ชักจะเป็น ส.ว. เหมือนคุณ MILD_PLUS)
    <HorizontalResolution>1024</HorizontalResolution>   => ความกว้างหน้าจอแบบมาตรฐาน 1024 Pix
   <VerticalResolution>768</VerticalResolution>   => ความสูงหน้าจอ 768 Pix
  </Display>
  <ComputerName>--??--</ComputerName>         => ชื่อ Computer ของท่าน เชิญตามสบาย
  <CopyProfile>true</CopyProfile>            => อันนี้สำคัญ สั่งให้ copy เอา Profile ของ User ที่ใช้อยู่ในเครื่อง Master มาเป็น Account ที่สร้างใหม่
  <AutoLogon>
   <Password>
       <Value></Value>            => Password ของ Auto Logon ต้องเหมือนกับ Local Account ข้างบน ไม่มีก็ไม่ใส่
       <PlainText>true</PlainText>         => Password แบบ Plain Text
   </Password>
       <Domain></Domain>            => Logon ต้องเข้า Domain ไหม? เครื่องทั่วๆไปจะไม่มี นอกจากที่ใช้ต่อในระบบ
   <Enabled>true</Enabled>            => บอกให้ใช้ Auto Logon ไม่งั้นที่ทำมาก็เสียเวลาเปล่า
   <LogonCount>999999</LogonCount>         => ตัวสำคัญ ปกติถ้าไม่มีบรรทัดนี้ เครื่องจะให้ Auto Logon ได้แค่ 5 ครั้ง เลยใส่ค่าประชดเสียเลย
   <Username>--??--</Username>         => User Name ที่เป็นชื่อเดียวกับ Local Account ที่สร้างตอนแรก
  </AutoLogon>

+ <RunSynchronous>
   <RunSynchronousCommand wcm:action="add">      => เพิ่มคำสั่งเสียหน่อย
      <Order>1</Order>         => เป็นคำสั่งลำดับที่ 1
      <Path>net user administrator /active:no</Path>   => บอกว่าให้ปิด User ที่ชื่อ Administrator ไม่เช่นนั้นหากใส่ "yes" ก็จะมี User ชื่อ Admin ใน User Account
   </RunSynchronousCommand>
   </RunSynchronous>

+  <SkipRearm>1</SkipRearm>            => ให้ข้ามไปไม่ต้อง Rearm หากตั้งค่านี้เป็น 1 จะ Rearm ได้ 8 ครั้งจากปกติ 4 ครั้ง

- สมมุติว่าเก็บไว้เป็นชื่อ mysysprep.xml วิธีใช้ก็แค่ไปที่ C:\Windows\System32\sysprep เปิด Command Prompt ในนี้แล้วพิมพ์คำสั่ง (ควรเตรียมโปรแกรมทั้งหลายให้เรียบร้อยก่อน)
 sysprep /generalize /oobe /shutdown /unattend:mysysprep.xml
 สักหนึ่งอึดใจเมื่อเสร็จแล้วก็จะปิดเครื่องอัตโนมัติ (หากจะให้ Restart ก็เปลี่ยนจาก /shutdown เป็น /reboot

- เปิดขึ้นมาก็แค่ใช้ ImageX หรือ Ghost ก็ได้ตามถนัด Capture หรือ Ghost เจ้า Drive C: ที่เราได้ทำ sysprep ไว้แล้ว ไม่ต้องหาพวก All Drivers อะไรมาใส่ให้ยุ่งยาก เพราะ Windows 7 มีอยู่แล้วใน Folder ที่ชื่อว่า "DriversStore"

- วันว่างจะบอกให้ว่าใน Windows 7 เขามี Folder ที่ชื่อ "Setup" อยู่ใน C:\Windows นั้นเอาไว้ทำอะไร...ฮิฮิฮิ

- เอาไปลงเครื่องใหม่ก็แค่ Apply ตัว Image นี้ลงไปที่ Drive C: ก็สำเร็จเสร็จสิ้น มันก็แค่เหนื่อยตอนเตรียมเท่านั้นเอง

- อยากรู้ว่าเปิดเครื่องใหม่จะเป็นอย่างไร ก็ให้เปิดเครื่อง Master ที่เราทำนั่นแหละ เหมือนกันเป๊ะเลย

- เผื่องานคุณ แฟนต้า๚ ಠ-ಠ จะเบาลงบ้าง [emo02]

microsoft

น่าสนใจมากเลยทีเดียวครับ ความรู้ล้วนๆ ผมเข้าไปดูใน msfn อยู่บ่อยๆแต่ก็ยังไม่ค่อยเข้าใจสักเท่าไรเลย เดี๋ยวต้องขอคำปรึกษาจากท่านด้วยนะครับ  [emo04]

ans58670

- หลักสำคัญคือ มันจะแบ่งงานออกเป็น 2 Section คือ Components กับ Packages

- เรื่องที่ทำนี้เป็นส่วนของ Components ซึ่งจะแบ่งย่อยออกเป็น 7 ส่วน ได้แก่
   1. Windows PE
   2. Offline Servicing
   3. Generalize
   4. Specialize
   5. Audit System
   6. Audit User
   7. OOBE System

- มันสำคัญที่ว่าต้องรู้ว่าจะเอาอะไรใส่ในส่วนไหนนี่แหละ เพราะใส่ผิดส่วนก็ไม่เกิดผล และบางคำสั่งใส่ได้หลายส่วนแล้วแต่ความเหมาะสม ซึ่งอาจให้ผลที่ต่างกันไป [emo02]

boogyman

ขอบคุณมากนะครับ  [emo01]
---ความรู้ คู่คุณภาพ อีกแล้วครับท่าน  [emo04]

fantasy ಠ-ಠ

ขอบคุณท่าน ans58670 มาก ๆ เลยครับ [emo19]
งานที่ผ่าน ๆ มา เวลาต้องติดตั้งวินโดวส์เป็นหลายสิบเครื่อง ในเวลาที่จำกัด
ก็มักจะไปพึ่ง ผี๓๒ (Ghost32) ให้มาสิงเครื่องอยู่บ่อย ๆ
แต่บางทีมันก็ไม่ยอมเป็นไปตามที่เราต้องการ
เครื่องเหมือนกัน อุปกรณ์เหมือนกัน แต่มันไม่ใช่ตัวเดียวกัน
ฉะนั้น อะไรก็เกิดขึ้นได้ ถ้ามี ปาปริก้า เอ๊ย ถ้ามันไม่ใช่อุปกรณ์ตัวเดียวกัน (บ้าไปแล้ว [emo05] [emo20])

วิธีการที่ท่าน ans58670 นำมาแบ่งปัน ผมก็เคยอ่านเหมือนกันครับ
แต่ไม่เข้าใจจริง ๆ (ภาษาอังกฤษไม่แข็งแรง)
เคยใช้แค่งู ๆ ปลา ๆ บางทีดัดแปลงมากไป วินโดวส์เอ๋อไปเลย
ก็ต้องมานั่งหลังขดหลังแข็ง แก้โค้ดกันต่อไป
และผมมักจะทำอะไรตอนที่ไม่ค่อยมีสติเต็มร้อยซะด้วย
เช่นตอนที่ทำเวบส่วนตัว ใส่โค้ดนั่นนี่ มากมาย
พอถึงเวลาต้องแก้ ก็งมไปนานเป็นวัน ๆ [emo18]

เดี๋ยวงานหน้า ไม่พลาดการใช้วิชามารแน่นอน [emo01]
และอีกอย่าง ช่วงปิดเทอม จะมีงานใหญ่เข้าอยู่บ่อย ๆ อย่างน้อย ๆ ก็โน้ตบุ๊คสี่ห้าสิบตัว [emo18]



ตอนนี้กำลังศึกษา ClearOS ครับผม
เพราะจะเอาคอมฯเก่ามาทำเราท์เตอร์ และไฟล์เซิพเวอร์
ที่บ้านเปิดไวไฟฟรีครับ ปล่อยให้สองเมกฯ เพื่อใช้งานจำเป็น
ให้โหลดบิทได้ด้วย (ความเร็ว 1kbps) [emo05]
เคยมีคนมาโหลดบิทด้วย แต่สู้ความเร็วไม่ไหว มันเร็วเกิน (ประชด)
หนังใหญ่เรื่องนึงเกือบครึ่งปี [emo08]

MILD_PLUS

- ผมก็เข้ามาอ่านๆ เอาความรู้..แต่ใช้ไม่เป็นครับ ใช้เป็นแต่วิธีแบบบ้านๆ (ชาวบ้านๆ) [emo08] [emo02] [emo12]

icons

ขอบคุณมากนะครับสำหรับข้อมูลความรู้ดีๆ  [emo02]

Go Up