1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
|
# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR Free Software Foundation, Inc.
# This file is distributed under the same license as the live-manual package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: live-manual 5.0~a2-1\n"
"POT-Creation-Date: 2015-08-23 11:04+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\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 ""
#. 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 ""
#. 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 ""
#. 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 ""
#. 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 ""
|