The landing at Grand Gulf was turned away by something like 14 pieces of artillery.So you've got Grand Gulf and you've got Rodney, both possible landing locations, and if Pemberton's entire force is deployed down there you've also got the Warrenton area (which has good roads and was a site of cotton exports in the 1830s, so was presumably a functional landing place).
Grand Gulf, Rodney and Warrenton/Vicksburg are too far apart for forces at one location to contest a landing made at another location. This means that Pemberton cannot guarantee contesting a landing with more than - at most - a third of his force. Bruinsberg makes a fourth landing site some miles from Grand Gulf.
What it looks like Pemberton did was to place some troops to cover possible landing sites, but without knowing Grant's landing site ahead of time there's not really much he could have done to prevent a landing entirely. He only had so many troops to spread, and as it is it looks like he did have a few brigades close enough to at least theoretically contest the landing.
The only way Pemberton could contest the landing with his entire force, however, is if he knew ahead of time what landing site Grant would pick - and Grant himself hadn't firmed that up, so it'd be basically impossible.
Out of curiosity, if you were in Pemberton's place what would you do? We can both agree I think that he should have ensured his cavalry was around, but how would you have distributed his forces?
A smaller force can contest the landing and fight a delaying action. The deep ravines and the few roads could have benefited a delaying action by a smaller force.
Pemberton had too many forces assigned north of Vicksburg, and he was too slow bringing back forces that had been sent east.