US President George W Bush has ruled out any withdrawal from Iraq while he is president.
At a news conference in Washington, he admitted keeping US forces in Iraq was "straining the psyche of our country".
But he said withdrawing troops from Iraq would be a "huge mistake" and create a safe haven for terrorists.
Meanwhile, the US military said four of its soldiers had been killed in the restive western province of Anbar in the last 24 hours.
The president had summoned journalists to announce an aid package for Lebanon, but the BBC's correspondent in Washington, Adam Brookes, says the reporters wanted to question him on Iraq.
The issue is framing the congressional election races in November, our correspondent says.
Many in the Republican Party are worried the war could cost them their narrow majority in the Senate and House of Representatives. Some have joined Democrat calls for an immediate withdrawal.
"There's a lot of people - good, decent people - saying withdraw now," Mr Bush said. "They're absolutely wrong. It would be a huge mistake."
The president said withdrawing US troops before Iraq was fully ready to govern and defend itself risked making the US less secure.
"A failed Iraq in the heart of the Middle East will provide a safe haven for terrorists and extremists," he said.
Mr Bush said Iraqis wanted a unified country.
"I hear a lot of talk about civil war. I'm concerned about that of course... The Iraqi leadership is determined to thwart the efforts of the extremists and radicals."
US forces are working with Iraqi forces in a new drive to reclaim parts of the Iraqi capital from gunmen and bombers, called Operation Together Forward.
Last week, 600 US soldiers who had just been rotated out of Iraq were called back in to Baghdad to help with the campaign.
As well as the Sunni-led insurgency that broke out after Saddam Hussein was ousted, there has been a growing trend in Baghdad and certain other cities and towns to increasing sectarian violence between Shia and Sunni Muslims.