Preheat the oven to 425 degrees F. Bring a large pot of salted water to a boil. Meanwhile, toss the zucchini and asparagus with 1 1/2 tablespoons olive oil on a rimmed baking sheet; season with salt and pepper. Roast until tender, about 20 minutes. Heat the remaining 1 1/2 tablespoons olive oil in a large skillet over medium heat. Add the onion; cook, stirring occasionally, until softened, about 8 minutes. Add the garlic and cook 30 more seconds. Increase the heat to medium high, add the tomatoes and simmer, stirring occasionally, 15 minutes. Remove from the heat and stir in the cheese. Meanwhile, add the linguine to the boiling water and cook as the label directs. Reserve 1/2 cup cooking water, then drain the pasta and add to the skillet with the sauce. Add the roasted vegetables and the reserved cooking water; toss to combine, then stir in the basil. Divide among bowls and top with more cheese.