B.4. Nội dung của tập tin định cấu hình sẵn (cho jessie)

Những đoạn cấu hình được dùng trong phụ lục này cũng sẵn sàng dạng tập tin định cấu hình sẵn ví dụ tại ../example-preseed.txt.

Ghi chú rằng mẫu này dựa vào tiến trình cài đặt vào kiến trúc kiểu x86 Intel. Nếu bạn đang cài đặt vào kiến trúc khác, một số phần mẫu (v.d. phần chọn bố trí bàn phím và phần cài đặt bộ nạp khởi động) có lẽ không phải là thích hợp, cũng sẽ cần phải được thay thế bằng thiết lập debconf thích hợp với kiến trúc đó.

Có thể tìm thêm chi tiết về cách làm việc thực sự của các thành phần khác nhau của Trình Cài đặt Debian tại Phần 6.3, “Sử dụng mỗi thành phần”.

B.4.1. Địa phương hoá

Việc đặt giá trị địa phương hoá sẽ hoạt động được chỉ nếu bạn dùng khả năng chèn sẵn kiểu initrd. Đối với các phương pháp khác, tập tin cấu hình sẵn sẽ được tải chỉ sau khi hỏi các câu này.

Miền địa phương (locale) có thể được dùng để xác định cả hai ngôn ngữ và quốc gia, và có thể là bất cứ tổ hợp nào một ngôn ngữ được debian-installer hỗ trợ và một quốc gia nhận ra. Nếu tổ hợp này không làm một miền địa phương hợp lệ thì trình cài đặt tự động chọn một miền địa phương vẫn hợp lệ cho ngôn ngữ đã chọn. Để chỉ định miền địa phương dưới dạng một tham số khởi động, hãy dùng locale=vi.

Mặc dù phương pháp này rất dễ sử dụng, nó không cho phép chèn sẵn tất cả các tổ hợp các ngôn ngữ, quốc gia và miền địa phương[22]. Cũng có thể ghi rõ từng giá trị. Hoặc có thể ghi rõ ngôn ngữ và quốc gia dưới dạng tham số khởi động.

# Chỉ chèn sẵn miền địa phương, ngôn ngữ và quốc gia.
d-i debian-installer/locale string vi

# Cũng có thể chèn sẵn từng giá trị riêng, để uyển chuyển hơn.
#d-i debian-installer/language string vi
#d-i debian-installer/country string AU
#d-i debian-installer/locale string vi.UTF-8
# Tuỳ chọn có thể ghi rõ thêm miền địa phương.
#d-i localechooser/supported-locales multiselect vi.UTF-8, en_US.UTF-8

Tiến trình cấu hình bàn phím bao gồm việc chọn bố trí bàn phím (cho các bố trí không la-tinh) và chọn phím để chuyển giữa bố trí không la-tinh và bố trí US.

# Chọn bàn phím.
d-i keyboard-configuration/xkb-keymap select vn
# d-i keyboard-configuration/toggle select No toggling

Để bỏ qua bước cấu hình bàn phím, hãy chèn sẵn keymap bằng skip-config (bỏ qua cấu hình). Kết quả là bố trí bàn phím của hạt nhân còn lại hoạt động.

B.4.2. Cấu hình mạng

Tất nhiên, việc chèn sẵn bước cấu hình mạng sẽ không hoạt động được nếu bạn tải tập tin cấu hình sẵn qua mạng. Nhưng nó rất có ích khi bạn khởi động từ đĩa CD hay thanh USB. Nếu bạn tải tập tin cấu hình sẵn qua mạng, bạn có khả năng gởi tham số cấu hình mạng bằng cách sử dụng tham số khởi động hạt nhân.

Nếu bạn cần phải chọn một giao diện riêng khi khởi động qua mạng, trước khi tải tập tin cấu hình sẵn qua mạng, hãy nhập tham số khởi động như interface=eth1.

Mặc dù thường không thể chèn sẵn cấu hình mạng khi dùng khả năng chèn trước qua mạng (dùng địa chỉ Mạng preseed/url), bạn vẫn còn có khả năng sử dụng dãy câu lệnh theo đây để chỉnh sửa sự hạn chế này, chẳng hạn nếu bạn muốn đặt một địa chỉ tĩnh cho giao diện mạng. Dãy câu lệnh này ép buộc cấu hình mạng chạy lại sau khi nạp tập tin chèn sẵn, bằng cách tạo văn lệnh preseed/run chứa những câu lệnh này:

kill-all-dhcp; netcfg

Theo đây có những biến debconf thích hợp với cấu hình mạng.

# Tắt hoàn toàn cấu hình mạng. Có ích khi cài đặt từ đĩa CD
# vào thiết bị không chạy mạng trong đó các câu hỏi,
# cảnh báo và thời hạn dài về mạng là sự phiền nhiễu.
#d-i netcfg/enable boolean false

# netcfg sẽ chọn một giao diện có liên kết nếu có thể. Điều này làm nó
# bỏ qua việc hiển thị danh sách nếu có nhiều hơn một giao diện.
d-i netcfg/choose_interface select auto

# Thay vì vậy, chọn một giao diện nào đó:
#d-i netcfg/choose_interface select eth1

# Để đặt thời gian dò tìm liên kết khác (mặc định là 3 giây).
# Giá trị được hiểu là giây.
#d-i netcfg/link_wait_timeout string 10

# Nếu bạn có máy phục vụ DHCP chạy chậm và trình cài đặt quá hạn
# trong khi đợi nó, đoạn này có thể hữu ích:
#d-i netcfg/dhcp_timeout string 60

# Nếu bạn thích tự tay cấu hình mạng, hãy bỏ ghi chú dòng này
# và cấu hình mạng tĩnh dưới đây.
#d-i netcfg/disable_autoconfig boolean true

# Nếu bạn muốn tập tin cấu hình sẵn cũng hoạt động được
# trên hệ thống có hay không có trình phục vụ DHCP,
# hãy bỏ ghi chú hai dòng này và cấu hình mạng tĩnh dưới đây.
#d-i netcfg/dhcp_failed note
#d-i netcfg/dhcp_options select Configure network manually

# Cấu hình mạng tĩnh.
#d-i netcfg/get_nameservers string 192.168.1.1
#d-i netcfg/get_ipaddress string 192.168.1.42
#d-i netcfg/get_netmask string 255.255.255.0
#d-i netcfg/get_gateway string 192.168.1.1
#d-i netcfg/confirm_static boolean true

# Tên máy/miền nào được gán từ DHCP thì có mức ưu tiên cao hơn giá trị
# được đặt vào đây. Tuy nhiên, việc đặt giá trị vẫn ngăn
# không hiển thị câu hỏi, ngay cả khi giá trị đến từ DHCP.
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain

# Tắt hiển thị hộp thoại khoá WEP đó.
d-i netcfg/wireless_wep string
# Tên máy DHCP lạ mà một số nhà cung cấp dịch vụ Internet sử dụng
# như là một kiểu mật khẩu.
#d-i netcfg/dhcp_hostname string radish

# Nếu cần phần vững tự do cho mạng hay phần cứng khác, bạn có thể
# cấu hình trình cài đặt để luôn thử nạp nó, mà không nhắc.
# Hoặc thay đổi đối số thành false (sai) để tắt chức năng hỏi.
#d-i hw-detect/load_firmware boolean true

Ghi chú rằng netcfg sẽ tự động quyết định mặt nạ mạng nếu netcfg/get_netmask không phải được chèn sẵn. Trong trường hợp này, biến phải được đánh dấu là seen (được thấy) cho quá trình tự động cài đặt. Tương tự, netcfg sẽ chọn một địa chỉ thích hợp nếu không đặt netcfg/get_gateway. Như một trường hợp đặc biệt, bạn cũng có thể đặt netcfg/get_gateway thành none (không có) để chỉ định không nên dùng cổng ra nào.

B.4.3. Bàn giao tiếp mạng

# Dùng thiết lập theo đây nếu bạn muốn sử dụng thành phần
# bàn giao tiếp mạng (network-console) để cài đặt từ xa
# thông qua SSH (trình bao bảo mật). Trường hợp này chỉ hữu ích
# nếu bạn định tự thực hiện phần còn lại của quá trình cài đặt.
#d-i anna/choose_modules string network-console
#d-i network-console/authorized_keys_url string http://10.0.0.1/openssh-key
#d-i network-console/password password r00tme
#d-i network-console/password-again password r00tme

B.4.4. Thiết lập máy nhân bản

Phụ thuộc vào phương pháp cài đặt bạn dùng, máy nhân bản có thể được dùng để tải về thành phần cài đặt thêm, để cài đặt hệ thống cơ bản, và để thiết lập danh sách các nguồn /etc/apt/sources.list cho hệ thống đã cài đặt.

Tham số mirror/suite xác định bộ phần mềm đối với hệ thống đã cài đặt.

Tham số mirror/udeb/suite quyết định bộ phần mềm đối với thành phần nào thêm vào trình cài đặt. Nó có ích chỉ nếu thành phần nào tựchật sự được tải về qua mạng, cũng nên tương ứng với bộ phần mềm được dùng để xây dựng initrd cho phương pháp cài đặt được dùng. Bình thường, trình cài đặt tự động sử dụng giá trị đúng thì không nên lập tham số này.

# Chọn FTP thì không cần đặt chuỗi mirror/country.
#d-i mirror/protocol string ftp
d-i mirror/country string manual
d-i mirror/http/hostname string http.us.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string

# Bộ phần mềm cần cài đặt.
#d-i mirror/suite string testing
# Bộ phần mềm cần dùng để nạp các thành phần cài đặt (tùy chọn).
#d-i mirror/udeb/suite string testing

B.4.5. Thiết lập tài khoản

Có khả năng chèn sẵn mật khẩu cho tài khoản người chủ, cũng tên và mật khẩu cho tài khoản của người dùng chuẩn thứ nhất. Đối với mật khẩu, bạn có thể dùng giá trị nhập thô (không mật mã) hay băm kiểu MD5.

[Cảnh báo] Cảnh báo

Ghi chú rằng tiến trình chèn sẵn mật khẩu không phải là bảo mật hoàn toàn, vì mọi người có quyền truy cập tập tin cấu hình sẵn thì biết các mật khẩu nằm trong nó. Việc dùng băm MD5 được xem là tốt hơn một ít theo các điều khoản của bảo mật, nhưng nó cũng có thể cung cấp ý thức bảo mật giả, vì cách truy cập băm MD5 cho phép người khác tấn công bằng sức mạnh vũ phu.

# Bỏ qua bước tạo tài khoản người chủ (tài khoản kiểu người dùng chuẩn
# sẽ có khả năng dùng lệnh sudo).
#d-i passwd/root-login boolean false
# Hoặc để bỏ qua bước tạo tài khoản kiểu người dùng chuẩn:
#d-i passwd/make-user boolean false

# Mật khẩu người chủ, hoặc bằng nhập thô :
#d-i passwd/root-password password r00tme
#d-i passwd/root-password-again password r00tme
# hoặc được mật mã bằng mẫu MD5:
#d-i passwd/root-password-crypted password [mẫu MD5]

# Để tạo tài khoản kiểu người dùng chuẩn.
#d-i passwd/user-fullname string Debian User
#d-i passwd/username string debian
# Mật khẩu của người dùng chuẩn, hoặc bằng nhập thô :
#d-i passwd/user-password password insecure
#d-i passwd/user-password-again password insecure
# hoặc được mật mã bằng mẫu MD5:
#d-i passwd/user-password-crypted password [mẫu MD5]
# Tạo người dùng thứ nhất dùng UID đã ghi rõ thay cho giá trị mặc định.
#d-i passwd/user-uid string 1010

# Tài khoản người dùng sẽ được thêm vào một số nhóm đầu tiên chuẩn.
# Để ghi đè thiết lập này, dùng chuỗi này:
#d-i passwd/user-default-groups string audio cdrom video

Biến passwd/root-password-cryptedpasswd/user-password-crypted cũng có thể được chèn trước bằng ! là giá trị. Trong trường hợp đó, tài khoản tương ứng bị tắt. Trường hợp này có thể là tiện với tài khoản người chủ, miễn là phương pháp xen kẽ được thiết lập để cho phép hoạt động quản lý hay đăng nhập người chủ (thí dụ bằng cách dùng khả năng xác thức khoá SSH hay sudo).

Theo đây có câu lệnh có thể dùng để tạo mẫu duy nhất MD5 cho một mật khẩu :

mkpasswd -m sha-512

B.4.6. Thiết lập đồng hồ và múi giờ

# Điều khiển nếu đồng hồ phần cứng được đặt thành UTC không.
d-i clock-setup/utc boolean true

# Bạn có thể đặt điều này thành bất cứ giá trị nào hợp lệ cho $TZ (múi giờ),
# xem nội dung của « /usr/share/zoneinfo/ » để tìm giá trị hợp lệ.
d-i time/zone string Asia/Saigon

# Điều khiển có nên dùng giao thức thời gian NTP
# để đặt đồng hồ trong khi cài đặt hay không.
d-i clock-setup/ntp boolean true
# Máy phục vụ NTP cần dùng. Giá trị mặc định gần lúc nào cũng đúng.
#d-i clock-setup/ntp-server string ntp.example.com

B.4.7. Phân vùng

Sử dụng chức năng chèn sẵn để phân vùng đĩa cứng vẫn bị hạn chế thành khả năng được hỗ trợ bởi partman-auto. Bạn có thể chọn phân vùng hoặc sức chứa trống trên đĩa, hoặc một đĩa hoàn toàn. Bố trí của đĩa có thể được quyết định bằng cách sử dụng một công thức xác định sẵn, một công thức riêng từ một tập tin công thức, hay một công thức nằm trong tập tin cấu hình sẵn.

Khả năng chèn sẵn thiết lập phân vùng cấp cao dùng RAID, LVM và mật mã cũng được hỗ trợ, còn không phải với tính linh hoạt đầy đủ có thể làm khi phân vùng trong một tiến trình cài đặt không chèn sẵn.

Những ví dụ dưới đây chỉ cung cấp thông tin cơ bản về cách sử dụng công thức. Để tìm thông tin chi tiết, xem hai tập tin partman-auto-recipe.txtpartman-auto-raid-recipe.txt trong gói debian-installer. Cả hai tập tin này cũng có sẵn từ the kho nguồn debian-installer. Ghi chú rằng chức năng được hỗ trợ vẫn có thể thay đổi giữa hai lần phát hành.

[Cảnh báo] Cảnh báo

Việc nhận diện đĩa phụ thuộc vào thứ tự tải trình điều khiển chúng. Nếu có nhiều đĩa trong hệ thống, hãy chắc là đĩa đúng sẽ được chọn, trước khi dùng khả năng chèn sẵn.

B.4.7.1. Mẫu phân vùng

# Nếu hệ thống vẫn có sức chứa trống, bạn có dịp chỉ phân vùng sức chứa đó.
# Sự chọn này chỉ hoạt động nếu « partman-auto/method » (bên dưới)
# chưa được lập.
#d-i partman-auto/init_automatically_partition select biggest_free

# Hoặc bạn có thể chỉ định một đĩa cần phân vùng.
# Nếu hệ thống chỉ có một đĩa thì trìn