Win7 + SysPrep + CloneZilla = lost settings
Solution 1
You're doing this all wrong. Clonezilla is a very poor Ghost clone (sorry for the pun) and Symantec doesn't even sell Ghost anymore, so that should give you a clue as to how outdated this 'disk cloning' approach is. See: http://mdtguy.wordpress.com/2013/06/13/clonezilla-is-a-joke-and-a-bad-one-at-that/
So there's two options here:
Using the PersistAllDeviceInstalls and copyprofile settings you could set the unattended.xml file to tell sysprep to persist all drivers and settings (not recommended). This puts you in the business of building an image for every make and model you support (pain in the ass). Copy profile is good, persist drivers? not so good. See below.
...Better Idea...
USE MDT 2013 instead. It's free AND actually written by Microsoft (the people who wrote the OS)
- Download and install ADK 8.1 (yes, it works for Win7)
- Download and install MDT 2013 (yes, it also works for Win7)
- Create a share for building the reference image in the MDT workbench.
- Import the .wim file for Win7 from the ISO
- Create a build image task sequence (enable windows updates if you like)
- Update share and using a VM, boot to WinPE image it creates in boot folder
- Build your reference image in a VM (this way you have a driverless image)
- Capture your image (MDT will do the sysprep for you.)
- Build a second share in MDT for deploying this image.
- Create a deploy image task sequence.
- Load your drivers into this share using the "total control" method taught by Johan Arwidmark
- MDT will inject drivers at deploy time.
A more thorough guide can be found here: http://mdtguy.wordpress.com/getting-started/
I know this seems like overkill, but it has several key advantages, one of which is you have a hardware agnostic image that runs on all makes and models.
MDT will also name systems for you, update the images and install java, flash, firefox, whatever and finally join to the domain for you.
Clonezilla is a bad, bad choice if you're trying to roll out windows 7. Don't try to be a hero and reinvent the wheel here, the new MS Deployment tools are money, they just take some work to get up and running but are worth the time.
Solution 2
This is normal behavior for Sysprep. Please see the TechNet articles ‘How Sysprep Works and 'Maintain Driver Configurations When Capturing a Windows Image'. However, this makes your image restricted to that specific hardware. You can also 'Add and Remove Drivers Offline'. You should not activate Windows or join it to a domain prior to running sysprep.
The newest imaging and deployment tools from Microsoft can manage device drivers to make your images hardware independent. If you have a Windows Server 2008 R2 or newer, then Windows Deployment Services(WDS) is a built in role that can be enabled and has a driver store that you would put all device drivers into for automatic installation during the deployment.
The Microsoft Deployment Toolkit (MDT) is a free deployment solution that not only manages device drivers, but allows you to install software, packages and updates (even checking your WSUS server or Windows Update) during the deployment process, automatically. This allows you to create a hardware independent image that you can deploy to all your machines. MDT can be installed on your Technician workstation.
Hope this helps,
Related videos on Youtube
dante
Updated on September 18, 2022Comments
-
dante almost 2 years
The
UISearchBar
cannot perform a search, what's wrong?I am looking for no tutorial on searching using json, but my code is already displayed in the table view but cannot search. I am new to the iOS developer world.
import UIKit class updatedata: UIViewController,UITableViewDataSource, UISearchBarDelegate{ @IBOutlet weak var searchbarr: UISearchBar! private var actors : [listpeserta]! = [] private var realdata : [listpeserta]! = [] var searching = false @IBOutlet weak var tableView: UITableView! override func viewDidLoad() { super.viewDidLoad() let url : URL = URL(string: "link")! var request : URLRequest = URLRequest (url: url) request.httpMethod = "GET" NSURLConnection.sendAsynchronousRequest(request, queue: .main) { (response, data, error) in guard let data = data else { print(error) return } let responseString : String! = String(data : data, encoding: .utf8) do { let jsonDecoder : JSONDecoder = JSONDecoder() self.actors = try jsonDecoder.decode([listpeserta].self, from: data) self.realdata = self.actors self.tableView.reloadData() }catch{print(error.localizedDescription)} } } func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { if searching {return realdata.count} else { return actors.count} } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = UITableViewCell(style: .default, reuseIdentifier: nil) if searching { cell.textLabel?.text = realdata[indexPath.item].nama }else {cell.textLabel?.text = actors[indexPath.item].nama} return cell } func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) { realdata = actors.filter({$0.nama.prefix(searchText.count) == searchText.lowercased()}) searching = true tableView.reloadData() } func searchBarCancelButtonClicked(_ searchBar: UISearchBar) { searching = false searchBar.text = "" tableView.reloadData() } }
this is, class listpeserta.swift
import Foundation class listpeserta: Codable { public var nama : String! }
-
Logman almost 11 yearshow did you use SysPrep? unattend ? more info....
-
oshirowanen almost 11 yearssysprep just gave me 2 options, 1. enter system out-of-box experience, 2. enter system audit mode. I selected option 1.
-
MDT Guy over 10 yearsYou're doing it wrong, see my basic walkthrough below...
-
paky almost 4 yearsDid you set the delegate of your searchBar searchbarr.delegate = self ? Didn't found one in your code or did I overlook it.
-
paky almost 4 yearsAnd also you said your code is already displayed in the table view, but I also can't find the tableview.dataSource = self. That make me a bit confused.
-
dante almost 4 yearsthankyuuu, searchbarr.delegate = self this is it
-
paky almost 4 yearsAlright glad to be of help, maybe I should post it as an answer then...
-
-
oshirowanen almost 11 yearsSo how do I change Sysprep's default behaviour to clone the video drivers?
-
BlueBerry - Vignesh4303 almost 11 years@oshirowanen under settings tab u can create it(Beware, if you have different settings you'll have to use more than one image – or to use an answer file).
-
oshirowanen almost 11 yearsWhich settings tab? When I run sysprep from the default sysprep in windows 7, I see no settings tab.