There is a toggle in there & the lever you pull pulls on the elbow of that toggle to first slide the pinion OUT into the diesel flywheel. Once engaged, only then is it supposed move the engine side of the elbow in toward the tractor to engage the cranking engine's clutch! The return spring in there can be too weak to allow the toggle to work correctly. The shaft that the pinion slider moves on can be too greasy and gunky to allow it to easily slide first and thereby engage teh clutch BEFORE moving the gear! Have seen both.
Also the pinion and ring gear's tooth bevels can be all worn off so the leading ends of the teeth are flat & engagement can then be VERY difficult! If this is the problem, you can often "get 'round it" by trying to engage them BEFORE starting the cranking engine! With everything OFF, if you pull the lever back & it stops before it is all the way back, a tap on the cranking engine starter will roll the pinion so it engages & the lever will move back the rest of the way. With some coordination one CAN disengage the cranking engine CLUTCH but NOT disengage the pinion from the flywheel, start the cranking engine and then start the diesel. I did this for a long time on mine until I was able to replace my pinion and ring gears which were teh cause of my exact problem you describe. That was 30 years ago & I still treat these gears like gold. Back then I started the cranking engine & let it warm up then shut it off, engaged the gears, re-started it & because it was already warmed up could set right about starting the diesel.
Hope that helps a bit.