Hundreds of thousands of workers would not go into work Friday if a shutdown takes place through the start of the day. Others would have to work without getting paid at first. A government shutdown is only partial — functions like the postal service and Social Security checks would continue.

Some government agencies will run out of money and have to furlough workers if Congress lets funding lapse. A shutdown would be the second in less than a month.

Earlier, the Trump administration instructed federal agencies to get ready for a possible government shutdown. An Office of Management and Budget official said the office was preparing for funding to lapse. The Trump administration supports the massive bipartisan budget deal working its way through Congress and wants lawmakers to pass it, the official said.

Bipartisan Senate leaders pushed for quick passage of the deal Thursday before the midnight deadline. But Sen. Rand Paul, R-Ky., repeatedly blocked efforts to move forward with the measure, arguing that it would recklessly increase spending.

Another U.S. government shutdown is imminent as the Senate recesses until early Friday morning without passing a major budget agreement.

Senate Majority Leader Mitch McConnell (R-KY) arrives to talk to the media following the Republicans weekly policy luncheon on Capitol Hill in Washington, U.S., December 12, 2017.

The National Treasury Employees Union, a major labor union for federal agency workers, said in a statement that agencies will notify employees if they get furloughed during a shutdown. The union will work with lawmakers to make sure employees get paid if they have to work during the shutdown, the organization said.

Senate leaders moved to vote on funding the government and setting spending levels for two years on Thursday afternoon. But Sen. Rand Paul, R-Ky., objected to moving toward passing the plan and railed against it on the Senate floor for hours.

"What you're seeing is recklessness trying to be passed off as bipartisanship," he said on the Senate floor.

All senators needed to support the move to hold a vote on Thursday.

Paul's opposition significantly raised the chances of a government shutdown that lasts at least a few hours. The Kentucky Republican can block the Senate from voting on the measure until early Friday morning.

Spotted leaving the Capitol shortly before 7:30 p.m, ET, McConnell said "it's up to Rand" whether the Senate worked all night, according to NBC News.

If the Senate passes the measure, it would then have to go to a skeptical House, where both fiscal conservatives and liberals have pushed back against the agreement. The chamber expects votes by roughly 6 a.m., ET.

If the House passed it, it would go to President Donald Trump's desk for his signature.

Senate Majority Leader Mitch McConnell, Senate Minority Leader Chuck Schumer and Senate Majority Whip John Cornyn, among other lawmakers, urged Paul to allow a vote.

"The senator from Kentucky, by objecting to the unanimous consent request, will effectively shut down the federal government for no real reason," Cornyn said after one failed attempt to bring the measure to a vote.

The bill before the Senate would set up a roughly $300 billion increase in the budget caps over two years. It would pave the way to boost spending on the military and domestic programs, as well as authorize disaster relief for areas of the U.S. ravaged by natural disasters last year.

"I can't in all good honesty, in all good faith, just look the other way because my party is now complicit in the deficits," the senator said on the Senate floor.

Paul signaled that he could keep the Senate debating until early Friday morning to prove his point.

Trump, for his part, wholeheartedly backed the budget deal Wednesday after earlier in the week saying he would "love" to see a shutdown if Democrats do not get behind his immigration demands. In a tweet Wednesday, he urged Democrats and Republicans to support the agreement.

— CNBC's Ylan Mui contributed to this report