Truman had the same problem that faces Obama today, a general in the field who was on the verge of disobeying authority and a public that could not understand why the war was going on so long but could not accept an American defeat.
For Obama, McChrystal should be fired and the troops brought home. But Obama is no Truman and Truman went on to try and fight a war that only Eisenhower could end ignominiously. We have to recall that had we not intervened with the Soviet presence in Afghanistan in the 1970s the Soviet's allies might have made some inroads in solving some of the economic problems and all this disaster of the past 20 might not have happened. We started the war, we armed the warlords, we created al-Qaeda, we supplied the Taliban. The only option is an international conference with Pakistan, the Taliban, Iran, Russia, China, etc.