Cook the sausage and onions in a large skillet over medium/high heat, breaking up the sausage as it cooks.
Stir in the garlic, basil, oregano, salt, pepper, tomatoes and tomato sauce. Simmer for 10 minutes.
Turn off the heat and stir the cooked and drained spaghetti into the skillet and toss with the sauce to coat.
Use a serrated knife to cut the top off the crusty bread. Use your fingers, hollow out the top and bottom of the bread to form a bowl, making sure to leave enough of the outer crust to keep the bread sturdy. (Reserve the bread insides for another use. They may be frozen if needed)
Slather the softened butter on the inside of both the top and bottom of the bread bowl, and sprinkle both sides with the garlic powder and the grated Parmesan cheese.
Use tongs to pile the spaghetti high inside the bread bowl. Place the top of the bread on the pile of spaghetti and press gently.
Wrap the spaghetti sandwich in aluminum foil and either refrigerate until ready to bake, or bake immediately in a preheated 425 degree oven for 40 minutes.
*Note - if baking after refrigeration, allow the spaghetti sandwich to come to room temperature (approximately 30 minutes) before baking, and bake for 40 minutes in a preheated 425 degree oven.
Unwrap the sandwich and slice using a serrated knife.