I guess the hardware store should have raised prices appropriately so that people don't come in and buy up all the generators. Keep an item that is in demand at an artificially low price will cause the hoarding that you see.
My real world experience is that good businesses like Home Depot bring in extra supply before and after a hurricane and they usually stay open extended hours. People get what they want, and Home Depot does a great business, making lots of money at its usual prices or just a bit more to cover their costs. Everbody's happy and it's a win-win situation. So why should Home Depot and their customers be distracted from their good work just to keep a few charlatans from cornering the market?