2 Feature: Untrusted partitions
4 I don't want to touch other media than the one Tails runs from
6 Scenario: Tails ignores a swap volume and another Tails that are on an internal hard drive
8 And I temporarily create a 100 MiB disk named "swap"
9 And I create a gpt swap partition on disk "swap"
10 And I plug SATA drive "swap"
11 And I temporarily create a 2 GiB disk named "live_hd"
12 And I write the Tails ISO image to disk "live_hd"
13 And I plug SATA drive "live_hd"
14 When I start Tails with network unplugged and I login
15 Then a "swap" partition was detected by Tails on drive "swap"
16 And drive "live_hd" is detected by Tails
17 But Tails has no disk swap enabled
18 And drive "live_hd" is not mounted
20 Scenario: Tails detects LUKS-encrypted GPT partitions labeled "TailsData" stored on USB drives as persistence volumes when the removable flag is set
22 And I temporarily create a 100 MiB disk named "fake_TailsData"
23 And I create a gpt partition labeled "TailsData" with an ext4 filesystem encrypted with password "asdf" on disk "fake_TailsData"
24 And I plug removable USB drive "fake_TailsData"
25 When I start the computer
26 And the computer boots Tails
27 Then drive "fake_TailsData" is detected by Tails
28 And Tails Greeter has detected a persistence partition
30 Scenario: Tails detects LUKS-encrypted GPT partitions labeled "TailsData" stored on USB drives as persistence volumes when the removable flag is unset
32 And I temporarily create a 100 MiB disk named "fake_TailsData"
33 And I create a gpt partition labeled "TailsData" with an ext4 filesystem encrypted with password "asdf" on disk "fake_TailsData"
34 And I plug non-removable USB drive "fake_TailsData"
35 When I start the computer
36 And the computer boots Tails
37 Then drive "fake_TailsData" is detected by Tails
38 And Tails Greeter has not detected a persistence partition
40 Scenario: Tails detects LUKS-encrypted GPT partitions labeled "TailsData" stored on local hard drives as persistence volumes
42 And I temporarily create a 100 MiB disk named "fake_TailsData"
43 And I create a gpt partition labeled "TailsData" with an ext4 filesystem encrypted with password "asdf" on disk "fake_TailsData"
44 And I plug SATA drive "fake_TailsData"
45 When I start the computer
46 And the computer boots Tails
47 Then drive "fake_TailsData" is detected by Tails
48 And Tails Greeter has not detected a persistence partition
50 Scenario: Tails can be forced to boot from an internal hard drive
52 And I temporarily create a 2 GiB disk named "live_hd"
53 And I write the Tails ISO image to disk "live_hd"
54 And the computer is set to boot from SATA drive "live_hd"
55 And I set Tails to boot with options "live-media="
56 When I start Tails with network unplugged and I login
57 Then Tails is running from SATA drive "live_hd"
59 Scenario: Booting Tails does not automount untrusted partitions
61 And I temporarily create a 100 MiB disk named "gpt_ext2"
62 And I create a gpt partition with an ext2 filesystem on disk "gpt_ext2"
63 And I plug SATA drive "gpt_ext2"
64 And I temporarily create a 100 MiB disk named "msdos_fat32"
65 And I create an msdos partition with a vfat filesystem on disk "msdos_fat32"
66 And I plug SATA drive "msdos_fat32"
67 And I start Tails from DVD with network unplugged and I login
68 Then drive "gpt_ext2" is detected by Tails
69 And drive "gpt_ext2" is not mounted
70 And drive "msdos_fat32" is detected by Tails
71 And drive "msdos_fat32" is not mounted