Vinales, who finished second in last weekend’s delayed opening race of the season at the same circuit, posted a time of one minute, 37.063 seconds to pip Italian teammate Rossi, who finished 0.142sec back in second.
Championship leader Fabio Quartararo had a disappointing day on his Yamaha-SRT, finishing 14th.
“I feel comfortable with the bike. I think we made an improvement compared to last week,” said Vinales after shrugging off temperatures pushing 35 degrees.
“I think this is a good test for us, we never raced at the same track twice in a row. The most important thing is to understand how we do better on race day.”
Reigning world champion Marc Marquez did not take part in Friday’s sessions, although he has been declared fit to race despite a broken arm, on which he had surgery on Tuesday after crashing heavily in last Sunday’s Spanish Grand Prix opener.
He will attempt to set a competitive time in Saturday’s practice.
Fellow Spaniard Alex Rins (Suzuki) and Cal Crutchlow (Honda-LCR) took part in practice despite also suffering injuries in the opening race.
Rins, who dislocated his shoulder, was 21st fastest, just behind Crutchlow who fractured his wrist.
Crutchlow had also required surgery, carried out on Tuesday at the same hospital in Barcelona where Marquez was treated.
Rossi, seven times a world champion in the elite class, didn’t finish last weekend’s race due to a technical issue.
Not surprisingly, he wasn’t getting too carried away by Friday’s run.
“As always, Saturday morning will be crucial. It will be very important to find the right spot to make the right lap time to stay in the top 10,” said the Italian veteran who is in his final season as a Yamaha factory rider.
“We’ll have to try. I feel better with the bike compared to last week. We have to work because in some corners I’m not fantastic. But anyway, it was a positive day.”
Two more free practice sessions and qualifying are scheduled for Saturday. The race on Sunday will start at 1200 GMT.
Combined first and second practice times ahead of the Andalucia MotoGP at Jerez:
1. Maverick Vinales (ESP/Yamaha) 1min 37.063sec, 2. Valentino Rossi (ITA/Yamaha) at 0.142, 3. Brad Binder (AFS/KTM) 0.307, 4. Franco Morbidelli (ITA/Yamaha-SRT) 0.353, 5. Pol Espargaro (ESP/KTM) 0.379, 6. Miguel Oliveira (POR/KTM) 0.429, 7. Jack Miller (AUS/Ducati-Pramac) 0.503, 8. Takaaki Nakagami (JPN/Honda-LCR) 0.529, 9. Aleix Espargaro (ESP/Aprilia) 0.672, 10. Andrea Dovizioso (ITA/Ducati) 0.676
Download our app and read this and other great stories on the move. Available for Android and iOS.