# Brazilian Portuguese translations for live-manual # Copyright (C) 2012 Willer Gomes Junior # This file is distributed under the same license as the live-manual package. # msgid "" msgstr "" "Project-Id-Version: live-manual 4.0~a4-1\n" "POT-Creation-Date: 2015-04-27 07:35+0200\n" "PO-Revision-Date: 2012-07-28 11:38-0400\n" "Last-Translator: Willer Gomes Junior \n" "Language-Team: none\n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. type: Plain text #: en/about_manual.ssi:92 en/about_manual.ssi:100 en/about_manual.ssi:108 #: en/about_manual.ssi:116 en/about_manual.ssi:124 en/about_manual.ssi:132 #: en/appendix_style-guide.ssi:124 en/appendix_style-guide.ssi:134 #: en/appendix_style-guide.ssi:144 en/appendix_style-guide.ssi:154 #: en/appendix_style-guide.ssi:164 en/appendix_style-guide.ssi:177 #: en/examples.ssi:14 en/examples.ssi:30 en/examples.ssi:40 en/examples.ssi:54 #: en/examples.ssi:67 en/examples.ssi:83 en/examples.ssi:93 #: en/examples.ssi:106 en/examples.ssi:114 en/examples.ssi:124 #: en/examples.ssi:134 en/examples.ssi:149 en/examples.ssi:157 #: en/examples.ssi:165 en/examples.ssi:173 en/examples.ssi:189 #: en/examples.ssi:203 en/examples.ssi:211 en/examples.ssi:219 #: en/examples.ssi:235 en/examples.ssi:249 en/examples.ssi:257 #: en/examples.ssi:265 en/examples.ssi:285 en/examples.ssi:293 #: en/examples.ssi:302 en/examples.ssi:312 en/project_bugs.ssi:62 #: en/project_coding-style.ssi:30 en/project_coding-style.ssi:40 #: en/project_coding-style.ssi:53 en/project_coding-style.ssi:63 #: en/project_coding-style.ssi:94 en/project_coding-style.ssi:102 #: en/project_coding-style.ssi:112 en/project_coding-style.ssi:123 #: en/project_contributing.ssi:34 en/project_contributing.ssi:45 #: en/project_contributing.ssi:59 en/project_contributing.ssi:68 #: en/project_contributing.ssi:79 en/project_contributing.ssi:87 #: en/project_git.ssi:8 en/project_git.ssi:16 en/project_git.ssi:24 #: en/project_git.ssi:34 en/project_git.ssi:44 en/project_git.ssi:56 #: en/project_procedures.ssi:39 en/project_procedures.ssi:51 #: en/user_basics.ssi:50 en/user_basics.ssi:58 en/user_basics.ssi:68 #: en/user_basics.ssi:86 en/user_basics.ssi:100 en/user_basics.ssi:113 #: en/user_basics.ssi:121 en/user_basics.ssi:159 en/user_basics.ssi:167 #: en/user_basics.ssi:179 en/user_basics.ssi:190 en/user_basics.ssi:198 #: en/user_basics.ssi:210 en/user_basics.ssi:218 en/user_basics.ssi:226 #: en/user_basics.ssi:238 en/user_basics.ssi:250 en/user_basics.ssi:260 #: en/user_basics.ssi:270 en/user_basics.ssi:288 en/user_basics.ssi:319 #: en/user_basics.ssi:335 en/user_basics.ssi:343 en/user_basics.ssi:363 #: en/user_basics.ssi:390 en/user_basics.ssi:406 #: en/user_customization-binary.ssi:18 en/user_customization-contents.ssi:24 #: en/user_customization-contents.ssi:33 en/user_customization-contents.ssi:51 #: en/user_customization-installer.ssi:32 #: en/user_customization-installer.ssi:44 #: en/user_customization-packages.ssi:14 en/user_customization-packages.ssi:22 #: en/user_customization-packages.ssi:40 en/user_customization-packages.ssi:53 #: en/user_customization-packages.ssi:67 en/user_customization-packages.ssi:95 #: en/user_customization-packages.ssi:106 #: en/user_customization-packages.ssi:114 #: en/user_customization-packages.ssi:138 #: en/user_customization-packages.ssi:151 #: en/user_customization-packages.ssi:161 #: en/user_customization-packages.ssi:171 #: en/user_customization-packages.ssi:195 #: en/user_customization-packages.ssi:211 #: en/user_customization-packages.ssi:290 #: en/user_customization-packages.ssi:302 #: en/user_customization-packages.ssi:312 #: en/user_customization-packages.ssi:326 #: en/user_customization-packages.ssi:342 #: en/user_customization-packages.ssi:359 en/user_customization-runtime.ssi:14 #: en/user_customization-runtime.ssi:26 en/user_customization-runtime.ssi:44 #: en/user_customization-runtime.ssi:56 en/user_customization-runtime.ssi:75 #: en/user_customization-runtime.ssi:83 en/user_customization-runtime.ssi:92 #: en/user_customization-runtime.ssi:121 en/user_customization-runtime.ssi:131 #: en/user_customization-runtime.ssi:139 en/user_customization-runtime.ssi:148 #: en/user_customization-runtime.ssi:157 en/user_customization-runtime.ssi:172 #: en/user_customization-runtime.ssi:202 en/user_customization-runtime.ssi:210 #: en/user_customization-runtime.ssi:219 en/user_customization-runtime.ssi:229 #: en/user_customization-runtime.ssi:237 en/user_customization-runtime.ssi:245 #: en/user_customization-runtime.ssi:253 en/user_customization-runtime.ssi:261 #: en/user_customization-runtime.ssi:269 en/user_customization-runtime.ssi:277 #: en/user_customization-runtime.ssi:285 en/user_installation.ssi:38 #: en/user_installation.ssi:48 en/user_installation.ssi:56 #: en/user_installation.ssi:66 en/user_installation.ssi:74 #: en/user_installation.ssi:82 en/user_installation.ssi:106 #: en/user_installation.ssi:121 en/user_installation.ssi:134 #: en/user_managing_a_configuration.ssi:22 #: en/user_managing_a_configuration.ssi:32 #: en/user_managing_a_configuration.ssi:55 #: en/user_managing_a_configuration.ssi:67 #: en/user_managing_a_configuration.ssi:76 en/user_overview.ssi:34 #: en/user_overview.ssi:47 en/user_overview.ssi:55 msgid "code{" msgstr "code{" #. type: Plain text #: en/about_manual.ssi:96 en/about_manual.ssi:104 en/about_manual.ssi:112 #: en/about_manual.ssi:120 en/about_manual.ssi:128 en/about_manual.ssi:136 #: en/appendix_style-guide.ssi:128 en/appendix_style-guide.ssi:138 #: en/appendix_style-guide.ssi:148 en/appendix_style-guide.ssi:158 #: en/appendix_style-guide.ssi:173 en/appendix_style-guide.ssi:182 #: en/examples.ssi:20 en/examples.ssi:34 en/examples.ssi:44 en/examples.ssi:61 #: en/examples.ssi:71 en/examples.ssi:89 en/examples.ssi:102 #: en/examples.ssi:110 en/examples.ssi:118 en/examples.ssi:128 #: en/examples.ssi:141 en/examples.ssi:153 en/examples.ssi:161 #: en/examples.ssi:169 en/examples.ssi:177 en/examples.ssi:197 #: en/examples.ssi:207 en/examples.ssi:215 en/examples.ssi:231 #: en/examples.ssi:239 en/examples.ssi:253 en/examples.ssi:261 #: en/examples.ssi:269 en/examples.ssi:289 en/examples.ssi:298 #: en/examples.ssi:308 en/examples.ssi:324 en/project_bugs.ssi:66 #: en/project_coding-style.ssi:36 en/project_coding-style.ssi:47 #: en/project_coding-style.ssi:59 en/project_coding-style.ssi:70 #: en/project_coding-style.ssi:98 en/project_coding-style.ssi:106 #: en/project_coding-style.ssi:119 en/project_coding-style.ssi:130 #: en/project_contributing.ssi:41 en/project_contributing.ssi:55 #: en/project_contributing.ssi:64 en/project_contributing.ssi:73 #: en/project_contributing.ssi:83 en/project_contributing.ssi:90 #: en/project_git.ssi:12 en/project_git.ssi:20 en/project_git.ssi:28 #: en/project_git.ssi:38 en/project_git.ssi:48 en/project_git.ssi:60 #: en/project_procedures.ssi:47 en/project_procedures.ssi:92 #: en/user_basics.ssi:54 en/user_basics.ssi:62 en/user_basics.ssi:72 #: en/user_basics.ssi:91 en/user_basics.ssi:105 en/user_basics.ssi:117 #: en/user_basics.ssi:125 en/user_basics.ssi:163 en/user_basics.ssi:171 #: en/user_basics.ssi:184 en/user_basics.ssi:194 en/user_basics.ssi:202 #: en/user_basics.ssi:214 en/user_basics.ssi:222 en/user_basics.ssi:230 #: en/user_basics.ssi:242 en/user_basics.ssi:254 en/user_basics.ssi:264 #: en/user_basics.ssi:274 en/user_basics.ssi:311 en/user_basics.ssi:323 #: en/user_basics.ssi:339 en/user_basics.ssi:347 en/user_basics.ssi:374 #: en/user_basics.ssi:394 en/user_basics.ssi:410 #: en/user_customization-binary.ssi:25 en/user_customization-contents.ssi:29 #: en/user_customization-contents.ssi:43 en/user_customization-contents.ssi:55 #: en/user_customization-installer.ssi:38 #: en/user_customization-installer.ssi:49 #: en/user_customization-packages.ssi:18 en/user_customization-packages.ssi:26 #: en/user_customization-packages.ssi:45 en/user_customization-packages.ssi:59 #: en/user_customization-packages.ssi:71 #: en/user_customization-packages.ssi:100 #: en/user_customization-packages.ssi:110 #: en/user_customization-packages.ssi:118 #: en/user_customization-packages.ssi:143 #: en/user_customization-packages.ssi:157 #: en/user_customization-packages.ssi:167 #: en/user_customization-packages.ssi:177 #: en/user_customization-packages.ssi:201 #: en/user_customization-packages.ssi:216 #: en/user_customization-packages.ssi:294 #: en/user_customization-packages.ssi:306 #: en/user_customization-packages.ssi:316 #: en/user_customization-packages.ssi:330 #: en/user_customization-packages.ssi:355 #: en/user_customization-packages.ssi:364 en/user_customization-runtime.ssi:18 #: en/user_customization-runtime.ssi:30 en/user_customization-runtime.ssi:48 #: en/user_customization-runtime.ssi:69 en/user_customization-runtime.ssi:79 #: en/user_customization-runtime.ssi:88 en/user_customization-runtime.ssi:97 #: en/user_customization-runtime.ssi:125 en/user_customization-runtime.ssi:135 #: en/user_customization-runtime.ssi:144 en/user_customization-runtime.ssi:153 #: en/user_customization-runtime.ssi:162 en/user_customization-runtime.ssi:180 #: en/user_customization-runtime.ssi:206 en/user_customization-runtime.ssi:215 #: en/user_customization-runtime.ssi:223 en/user_customization-runtime.ssi:233 #: en/user_customization-runtime.ssi:241 en/user_customization-runtime.ssi:249 #: en/user_customization-runtime.ssi:257 en/user_customization-runtime.ssi:265 #: en/user_customization-runtime.ssi:273 en/user_customization-runtime.ssi:281 #: en/user_customization-runtime.ssi:289 en/user_installation.ssi:42 #: en/user_installation.ssi:52 en/user_installation.ssi:62 #: en/user_installation.ssi:70 en/user_installation.ssi:78 #: en/user_installation.ssi:86 en/user_installation.ssi:111 #: en/user_installation.ssi:128 en/user_installation.ssi:139 #: en/user_managing_a_configuration.ssi:28 #: en/user_managing_a_configuration.ssi:43 #: en/user_managing_a_configuration.ssi:61 #: en/user_managing_a_configuration.ssi:72 #: en/user_managing_a_configuration.ssi:80 en/user_overview.ssi:41 #: en/user_overview.ssi:51 en/user_overview.ssi:59 msgid "}code" msgstr "}code" #. type: Plain text #: en/user_customization-runtime.ssi:2 msgid ":B~ Customizing run time behaviours" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:4 msgid "1~customizing-run-time-behaviours Customizing run time behaviours" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:6 msgid "" "All configuration that is done during run time is done by live-config. Here " "are some of the most common options of live-config that users are interested " "in. A full list of all possibilities can be found in the man page of live-" "config." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:8 msgid "2~ Customizing the live user" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:10 msgid "" "One important consideration is that the live user is created by live-boot at " "boot time, not by live-build at build time. This not only influences where " "materials relating to the live user are introduced in your build, as " "discussed in {Live/chroot local includes}#live-chroot-local-includes, but " "also any groups and permissions associated with the live user." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:12 msgid "" "You can specify additional groups that the live user will belong to by using " "any of the possibilities to configure live-config. For example, to add the " "live user to the #{fuse}# group, you can either add the following file in " "#{config/includes.chroot/etc/live/config/user-setup.conf}#:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:16 #, no-wrap msgid " LIVE_USER_DEFAULT_GROUPS=\"audio cdrom dip floppy video plugdev netdev powerdev scanner bluetooth fuse\"\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:20 msgid "" "or use #{live-config.user-default-groups=audio,cdrom,dip,floppy,video," "plugdev,netdev,powerdev,scanner,bluetooth,fuse}# as a boot parameter." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:22 msgid "" "It is also possible to change the default username \"user\" and the default " "password \"live\". If you want to do that for any reason, you can easily " "achieve it as follows:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:24 msgid "" "To change the default username you can simply specify it in your config:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:28 #, no-wrap msgid " $ lb config --bootappend-live \"boot=live components username=live-user\"\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:32 msgid "" "One possible way of changing the default password is by means of a hook as " "described in {Boot-time hooks}#boot-time-hooks. In order to do that you can " "use the \"passwd\" hook from #{/usr/share/doc/live-config/examples/hooks}#, " "prefix it accordingly (e.g. 2000-passwd) and add it to #{config/includes." "chroot/lib/live/config/}#" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:34 msgid "2~customizing-locale-and-language Customizing locale and language" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:36 msgid "When the live system boots, language is involved in two steps:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:38 msgid "_* the locale generation" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:40 msgid "_* setting the keyboard configuration" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:42 msgid "" "The default locale when building a Live system is #{locales=en_US.UTF-8}#. " "To define the locale that should be generated, use the #{locales}# parameter " "in the #{--bootappend-live}# option of #{lb config}#, e.g." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:46 #, no-wrap msgid " $ lb config --bootappend-live \"boot=live components locales=de_CH.UTF-8\"\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:50 msgid "Multiple locales may be specified as a comma-delimited list." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:52 msgid "" "This parameter, as well as the keyboard configuration parameters indicated " "below, can also be used at the kernel command line. You can specify a locale " "by #{language_country}# (in which case the default encoding is used) or the " "full #{language_country.encoding}# word. A list of supported locales and the " "encoding for each can be found in #{/usr/share/i18n/SUPPORTED}#." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:54 msgid "" "Both the console and X keyboard configuration are performed by #{live-config}" "# using the #{console-setup}# package. To configure them, use the #{keyboard-" "layouts}#, #{keyboard-variants}#, #{keyboard-options}# and #{keyboard-model}" "# boot parameters via the #{--bootappend-live}# option. Valid options for " "these can be found in #{/usr/share/X11/xkb/rules/base.lst}#. To find layouts " "and variants for a given language, try searching for the English name of the " "language and/or the country where the language is spoken, e.g:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:67 #, no-wrap msgid "" "$ egrep -i '(^!|german.*switzerland)' /usr/share/X11/xkb/rules/base.lst\n" " ! model\n" " ! layout\n" " ch German (Switzerland)\n" " ! variant\n" " legacy ch: German (Switzerland, legacy)\n" " de_nodeadkeys ch: German (Switzerland, eliminate dead keys)\n" " de_sundeadkeys ch: German (Switzerland, Sun dead keys)\n" " de_mac ch: German (Switzerland, Macintosh)\n" " ! option\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:71 msgid "" "Note that each variant lists the layout to which it applies in the " "description." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:73 msgid "" "Often, only the layout needs to be configured. For example, to get the " "locale files for German and Swiss German keyboard layout in X use:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:77 #, no-wrap msgid " $ lb config --bootappend-live \"boot=live components locales=de_CH.UTF-8 keyboard-layouts=ch\"\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:81 msgid "" "However, for very specific use cases, you may wish to include other " "parameters. For example, to set up a French system with a French-Dvorak " "layout (called Bepo) on a TypeMatrix EZ-Reach 2030 USB keyboard, use:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:86 #, no-wrap msgid "" " $ lb config --bootappend-live \\\n" " \"boot=live components locales=fr_FR.UTF-8 keyboard-layouts=fr keyboard-variants=bepo keyboard-model=tm2030usb\"\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:90 msgid "" "Multiple values may be specified as comma-delimited lists for each of the " "#{keyboard-*}# options, with the exception of #{keyboard-model}#, which " "accepts only one value. Please see the #{keyboard(5)}# man page for details " "and examples of #{XKBMODEL}#, #{XKBLAYOUT}#, #{XKBVARIANT}# and #{XKBOPTIONS}" "# variables. If multiple #{keyboard-variants}# values are given, they will " "be matched one-to-one with #{keyboard-layouts}# values (see #{setxkbmap(1)}# " "#{-variant}# option). Empty values are allowed; e.g. to define two layouts, " "the default being US QWERTY and the other being US Dvorak, use:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:95 #, no-wrap msgid "" " $ lb config --bootappend-live \\\n" " \"boot=live components keyboard-layouts=us,us keyboard-variants=,dvorak\"\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:99 msgid "2~persistence Persistence" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:101 msgid "" "A live cd paradigm is a pre-installed system which runs from read-only " "media, like a cdrom, where writes and modifications do not survive reboots " "of the host hardware which runs it." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:103 msgid "" "A live system is a generalization of this paradigm and thus supports other " "media in addition to CDs; but still, in its default behaviour, it should be " "considered read-only and all the run-time evolutions of the system are lost " "at shutdown." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:105 msgid "" "'Persistence' is a common name for different kinds of solutions for saving " "across reboots some, or all, of this run-time evolution of the system. To " "understand how it works it would be handy to know that even if the system is " "booted and run from read-only media, modifications to the files and " "directories are written on writable media, typically a ram disk (tmpfs) and " "ram disks' data do not survive reboots." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:107 msgid "" "The data stored on this ramdisk should be saved on a writable persistent " "medium like local storage media, a network share or even a session of a " "multisession (re)writable CD/DVD. All these media are supported in live " "systems in different ways, and all but the last one require a special boot " "parameter to be specified at boot time: #{persistence}#." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:109 msgid "" "If the boot parameter #{persistence}# is set (and #{nopersistence}# is not " "set), local storage media (e.g. hard disks, USB drives) will be probed for " "persistence volumes during boot. It is possible to restrict which types of " "persistence volumes to use by specifying certain boot parameters described " "in the live-boot(7) man page. A persistence volume is any of the following:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:111 msgid "_* a partition, identified by its GPT name." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:113 msgid "_* a filesystem, identified by its filesystem label." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:115 msgid "" "_* an image file located on the root of any readable filesystem (even an " "NTFS partition of a foreign OS), identified by its filename." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:117 msgid "" "The volume label for overlays must be #{persistence}# but it will be ignored " "unless it contains in its root a file named #{persistence.conf}# which is " "used to fully customize the volume's persistence, this is to say, specifying " "the directories that you want to save in your persistence volume after a " "reboot. See {The persistence.conf file}#persistence-conf for more details." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:119 msgid "" "Here are some examples of how to prepare a volume to be used for " "persistence. It can be, for instance, an ext4 partition on a hard disk or on " "a usb key created with, e.g.:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:123 #, no-wrap msgid " # mkfs.ext4 -L persistence /dev/sdb1\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:127 msgid "See also {Using the space left on a USB stick}#using-usb-extra-space." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:129 msgid "" "If you already have a partition on your device, you could just change the " "label with one of the following:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:133 #, no-wrap msgid " # tune2fs -L persistence /dev/sdb1 # for ext2,3,4 filesystems\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:137 msgid "" "Here's an example of how to create an ext4-based image file to be used for " "persistence:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:142 #, no-wrap msgid "" " $ dd if=/dev/null of=persistence bs=1 count=0 seek=1G # for a 1GB sized image file\n" " $ /sbin/mkfs.ext4 -F persistence\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:146 msgid "" "Once the image file is created, as an example, to make #{/usr}# persistent " "but only saving the changes you make to that directory and not all the " "contents of #{/usr}#, you can use the \"union\" option. If the image file is " "located in your home directory, copy it to the root of your hard drive's " "filesystem and mount it in #{/mnt}# as follows:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:151 #, no-wrap msgid "" " # cp persistence /\n" " # mount -t ext4 /persistence /mnt\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:155 msgid "" "Then, create the #{persistence.conf}# file adding content and unmount the " "image file." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:160 #, no-wrap msgid "" " # echo \"/usr union\" >> /mnt/persistence.conf\n" " # umount /mnt\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:164 msgid "" "Now, reboot into your live medium with the boot parameter \"persistence\"." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:166 msgid "3~persistence-conf The persistence.conf file" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:168 msgid "" "A volume with the label #{persistence}# must be configured by means of the " "#{persistence.conf}# file to make arbitrary directories persistent. That " "file, located on the volume's filesystem root, controls which directories it " "makes persistent, and in which way." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:170 msgid "" "How custom overlay mounts are configured is described in full detail in the " "persistence.conf(5) man page, but a simple example should be sufficient for " "most uses. Let's say we want to make our home directory and APT cache " "persistent in an ext4 filesystem on the /dev/sdb1 partition:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:178 #, no-wrap msgid "" " # mkfs.ext4 -L persistence /dev/sdb1\n" " # mount -t ext4 /dev/sdb1 /mnt\n" " # echo \"/home\" >> /mnt/persistence.conf\n" " # echo \"/var/cache/apt\" >> /mnt/persistence.conf\n" " # umount /mnt\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:182 msgid "" "Then we reboot. During the first boot the contents of #{/home}# and #{/var/" "cache/apt}# will be copied into the persistence volume, and from then on all " "changes to these directories will live in the persistence volume. Please " "note that any paths listed in the #{persistence.conf}# file cannot contain " "white spaces or the special #{.}# and #{..}# path components. Also, neither " "#{/lib}#, #{/lib/live}# (or any of their sub-directories) nor #{/}# can be " "made persistent using custom mounts. As a workaround for this limitation you " "can add #{/ union}# to your #{persistence.conf}# file to achieve full " "persistence." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:184 msgid "3~ Using more than one persistence store" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:186 msgid "" "There are different methods of using multiple persistence store for " "different use cases. For instance, using several volumes at the same time or " "selecting only one, among various, for very specific purposes." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:188 msgid "" "Several different custom overlay volumes (with their own #{persistence.conf}" "# files) can be used at the same time, but if several volumes make the same " "directory persistent, only one of them will be used. If any two mounts are " "\"nested\" (i.e. one is a sub-directory of the other) the parent will be " "mounted before the child so no mount will be hidden by the other. Nested " "custom mounts are problematic if they are listed in the same #{persistence." "conf}# file. See the persistence.conf(5) man page for how to handle that " "case if you really need it (hint: you usually don't)." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:190 msgid "" "One possible use case: If you wish to store the user data i.e. #{/home}# and " "the superuser data i.e. #{/root}# in different partitions, create two " "partitions with the #{persistence}# label and add a #{persistence.conf}# " "file in each one like this, #{# echo \"/home\" > persistence.conf}# for the " "first partition that will save the user's files and #{# echo \"/root\" > " "persistence.conf}# for the second partition which will store the superuser's " "files. Finally, use the #{persistence}# boot parameter." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:192 msgid "" "If a user would need multiple persistence store of the same type for " "different locations or testing, such as #{private}# and #{work}#, the boot " "parameter #{persistence-label}# used in conjunction with the boot parameter " "#{persistence}# will allow for multiple but unique persistence media. An " "example would be if a user wanted to use a persistence partition labeled " "#{private}# for personal data like browser bookmarks or other types, they " "would use the boot parameters: #{persistence}# #{persistence-label=private}" "#. And to store work related data, like documents, research projects or " "other types, they would use the boot parameters: #{persistence}# " "#{persistence-label=work}#." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:194 msgid "" "It is important to remember that each of these volumes, #{private}# and " "#{work}#, also needs a #{persistence.conf}# file in its root. The live-boot " "man page contains more information about how to use these labels with legacy " "names." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:196 msgid "3~ Using persistence with encryption" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:198 msgid "" "Using the persistence feature means that some sensible data might get " "exposed to risk. Especially if the persistent data is stored on a portable " "device such as a usb stick or an external hard drive. That is when " "encryption comes in handy. Even if the entire procedure might seem " "complicated because of the number of steps to be taken, it is really easy to " "handle encrypted partitions with live-boot. In order to use *{luks}*, which " "is the supported encryption type, you need to install /{cryptsetup}/ both on " "the machine you are creating the encrypted partition with and also in the " "live system you are going to use the encrypted persistent partition with." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:200 msgid "To install /{cryptsetup}/ on your machine:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:204 #, no-wrap msgid " # apt-get install cryptsetup\n" msgstr " # apt-get install cryptsetup\n" #. type: Plain text #: en/user_customization-runtime.ssi:208 msgid "" "To install /{cryptsetup}/ in your live system, add it to your package-lists:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:213 #, no-wrap msgid "" " $ lb config\n" " $ echo \"cryptsetup\" > config/package-lists/encryption.list.chroot\n" msgstr "" " $ lb config\n" " $ echo \"cryptsetup\" > config/package-lists/encryption.list.chroot\n" #. type: Plain text #: en/user_customization-runtime.ssi:217 msgid "" "Once you have your live system with /{cryptsetup}/, you basically only need " "to create a new partition, encrypt it and boot with the #{persistence}# and " "#{persistence-encryption=luks}# parameters. We could have already " "anticipated this step and added the boot parameters following the usual " "procedure:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:221 #, no-wrap msgid " $ lb config --bootappend-live \"boot=live components persistence persistence-encryption=luks\"\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:225 msgid "" "Let's go into the details for all of those who are not familiar with " "encryption. In the following example we are going to use a partition on a " "usb stick which corresponds to #{/dev/sdc2}#. Please be warned that you need " "to determine which partition is the one you are going to use in your " "specific case." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:227 msgid "" "The first step is plugging in your usb stick and determine which device it " "is. The recommended method of listing devices in live-manual is using #{ls -" "l /dev/disk/by-id}#. After that, create a new partition and then, encrypt it " "with a passphrase as follows:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:231 #, no-wrap msgid " # cryptsetup --verify-passphrase luksFormat /dev/sdc2\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:235 msgid "" "Then open the luks partition in the virtual device mapper. Use any name you " "like. We use *{live}* here as an example:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:239 #, no-wrap msgid " # cryptsetup luksOpen /dev/sdc2 live\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:243 msgid "" "The next step is filling the device with zeros before creating the " "filesystem:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:247 #, no-wrap msgid " # dd if=/dev/zero of=/dev/mapper/live\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:251 msgid "" "Now, we are ready to create the filesystem. Notice that we are adding the " "label #{persistence}# so that the device is mounted as persistence store at " "boot time." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:255 #, no-wrap msgid " # mkfs.ext4 -L persistence /dev/mapper/live\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:259 msgid "" "To continue with our setup, we need to mount the device, for example in #{/" "mnt}#." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:263 #, no-wrap msgid " # mount /dev/mapper/live /mnt\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:267 msgid "" "And create the #{persistence.conf}# file in the root of the partition. This " "is, as explained before, strictly necessary. See {The persistence.conf file}" "#persistence-conf." msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:271 #, no-wrap msgid " # echo \"/ union\" > /mnt/persistence.conf\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:275 msgid "Then unmount the mount point:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:279 #, no-wrap msgid " # umount /mnt\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:283 msgid "" "And optionally, although it might be a good way of securing the data we have " "just added to the partition, we can close the device:" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:287 #, no-wrap msgid " # cryptsetup luksClose live\n" msgstr "" #. type: Plain text #: en/user_customization-runtime.ssi:290 msgid "" "Let's summarize the process. So far, we have created an encryption capable " "live system, which can be copied to a usb stick as explained in {Copying an " "ISO hybrid image to a USB stick}#copying-iso-hybrid-to-usb. We have also " "created an encrypted partition, which can be located in the same usb stick " "to carry it around and we have configured the encrypted partition to be used " "as persistence store. So now, we only need to boot the live system. At boot " "time, live-boot will prompt us for the passphrase and will mount the " "encrypted partition to be used for persistence." msgstr ""