Breach bombs damage systems and crew, and cause cracks, but don't hurt hulls. Alternate bombing the medical bay and the O2 generator. Put priority on whichever one the crew is trying to repair. Eventually they'll have so little health they won't try to repair things, and you can just wait. If the ship doesn't have a medical bay it's even easier - just bomb the O2 generator until they stop trying to repair it.
If you're taking this tack, it helps to upgrade your own shields (and maybe have a defense drone) so you can sit and wait them out without having to waste missiles bombing their weapons as well.
Ion weapons can help, but it's hard to get enough of them to punch through 3-4 shields reliably, while you are still getting shot at. If you have them, great, but don't prioritize them.
You are correct about sensors. Don't even bother trying to kill crew without damaging the ship until you have the first sensor upgrade or a slug crew member.
Experiment Setup
I moved my whole crew up to the front of the Red-Tail, and evacuated the back half of the ship, leaving oxygen in only the three front rooms. This reduced my oxygen total to 20%. Then I closed doors and started timing every 10% increase.
Results
First I closed all the doors. Each 10% increase took 9.7, 10.5, 10.6, 10.2, 10.2, 10.6, 10.0, and 10.6 seconds. So it's very slightly less than 1% per second (1% per 1.03 seconds or 0.97% per second, possibly from 0.96% per 1 second which is a common math error when programming a game that runs at 60Hz).
Next, I closed only the outside doors, and opened all the inside ones. This took 66.3 seconds (8.2; 8.3; 8.3; 8.4; 8.2; 8.2; 8.3, 8.4). So oxygen does diffuse (faster?) through open doors. The background of the previously pressured areas turned slightly pink.
Next, I opened all the doors between depressurized areas but left closed the doors in the front which were still pressured. 82.6 seconds, basically the same as my first test.
Finally, I depressurized only the back three rooms of the ship, turned off my O2 generator, closed the outer doors, and opened all the inner ones. The three back rooms re-pressurized despite my generator being turned off until they equalized with the rest of the ship, which was also steadily losing oxygen; eventually the whole ship depressurized.
Conclusions
This behavior is explained by a model where the O2 generator works by supplying a fixed amount of oxygen to each room per second, oxygen is naturally consumed slower than this replenishment, and oxygen diffuses only between open doors. This means if a room with a high oxygen level has an open connection to a room with a low oxygen level it is giving oxygen to that room and receiving replenishing oxygen from the generator nearly as fast as it is giving it up and the other room is receiving oxygen from the generator, resulting in overall faster replenishment. If the doors are closed the new oxygen in the already-pressurized room is just "wasted".
Because the oxygen level required to keep your crew alive is fairly low it's often good to open doors to help re-pressurize areas faster assuming your oxygen generator is working.
FTL's model of oxygen seems to match our intuitions about how fixed volumes of gasses in an enclosed space work.
One interesting prediction of this model is that a sufficiently long path length of rooms may make it possible to survive indefinitely with a working generator despite a door open to hard vacuum. I've been testing this prediction on the Osprey for several minutes now, and it seems to be true.
If I open the second door on the top left, the room Mr Buga and Liam are in de-pressurizes. If I close it but leave the top one open, it re-pressurizes.
Best Answer
The weapon pre-igniter can be found from both the randomly generated stores (which in turn have randomly generated inventories) and as a random reward from encounters.
Due to this it is not possible to predict where they will appear in an individual game.