Mục lục
Đang đợi hệ thống tập tin
gốc
Trước khi nâng cấp, khuyên người dùng cũng đọc thông tin trong Chương 5, Vấn đề squeeze cần ghi nhớ. Chương đó diễn tả các vấn đề có thể gặp mà không phải liên quan trực tiếp đến quá trình nâng cấp, nhưng vẫn còn có thể cần biết trước khi bắt đầu.
Trước khi nâng cấp hệ thống, rất khuyên người dùng tạo một bản sao lưu hoàn toàn, hoặc ít nhất sao lưu bất kỳ dữ liệu hay thông tin cấu hình không nên mất. Các công cụ và quá trình nâng cấp vẫn hơi tin cậy, nhưng một sự thất bại phần cứng ở giữa việc nâng cấp có thể gây ra một hệ thống rất bị hại.
The main things you'll want to back up are the contents of
/etc
, /var/lib/dpkg
,
/var/lib/apt/extended_states
and the output of
dpkg --get-selections "*"
(the quotes are important). If
you use aptitude to manage packages on your system, you
will also want to back up /var/lib/aptitude/pkgstates
.
Quá trình nâng cấp chính nó không sửa đổi gì trong thư mục
/home
(thư mục chính của mỗi người dùng). Tuy nhiên,
một số ứng dụng nào đó (v.d. thuộc về bộ ứng dụng Mozilla, và môi trường
GNOME and KDE) được biết là ghi đè lên thiết lập người dùng đã tồn tại bằng
giá trị mặc định mới khi một phiên bản mới của ứng dụng được khởi chạy đầu
tiên bởi một người dùng. Để phòng ngừa, khuyên người dùng sao lưu các tập
tin và thư mục bị ẩn (“tập tin chấm”) trong thư mục chính của
mỗi người dùng. Bản sao lưu này có thể giúp phục hồi hoặc tạo lại thiết lập
cũ. Quản trị cũng có thể muốn cho các người dùng biết về trường hợp này.
Mỗi thao tác cài đặt gói phải được chạy với quyền siêu người dùng: có nên
đăng nhập dưới root
(người chủ) hoặc sử dụng lệnh
su hay sudo để lấy được quyền truy cập
cần thiết.
Việc nâng cấp có một số điều kiện tiên quyết: người dùng nên kiểm tra trước khi thật thực hiện tiến trình nâng cấp.
Khuyên quản trị thông báo trước cho mọi người dùng biết về bất kỳ quá trình nâng cấp dự định, dù người dùng đang truy cập đến hệ thống thông qua một kết nối ssh nên thấy ít trong khi nâng cấp, và nên có thể tiếp tục làm việc.
Muốn thực hiện thêm bước phòng ngừa thì sao lưu hoặc tháo gắn kết phân vùng
/home
) trước khi nâng cấp.
You will have to do a kernel upgrade when upgrading to squeeze, so a reboot will be necessary.
During the upgrade process, there might be services associated with packages that will be include in the upgrade. If this is the case, these services might be stopped while the packages that are going to be upgraded are being replaced and configured. During this time, these services will not be available.
The precise downtime for these service will vary depending on the number of packages being upgraded in the system, and it also includes the time the system administrator answers the configuration questions from different package upgrades (if any). Notice that if the upgrade process is left unattended and the system requests input throughout the upgrade there is a high possibility of services being unavailable[4] for a significant period of time.
If the system being upgraded provides critical services for your users or network[5], you can reduce the downtime if you do a minimal system upgrade, as described in Phần 4.4.4, “Nâng cấp hệ thống tối thiểu”, followed by a kernel upgrade and reboot (see Phần 4.4.5, “Upgrading the kernel and udev”), and then upgrade the packages associated with your critical services. Upgrade these packages prior to doing the full upgrade described in Phần 4.4.6, “Upgrading the system”. This way you can ensure that these critical services are running and available through the full upgrade process, and their downtime is reduced.
Do rất nhiều thay đổi trong hạt nhân (so lenny với squeeze) đối với trình điều khiển, phát hiện phần cứng và đặt tên và sắp đặt các tập tin thiết bị, thật sự rủi ro là người dùng có thể gặp khó khăn trong việc khởi động lại hệ thống sau khi nâng cấp. Rất nhiều vấn đề có thể gặp đã được diễn tả trong chương này, và những chương kế tiếp của Ghi chú Phát hành này.
Vì lý do đó hợp lý là người dùng hay quản trị đảm bảo có thể phục hồi nếu hệ thống không khởi động lại được hoặc, đối với hệ thống quản lý từ xa, không chạy mạng được.
Nếu quản trị nâng cấp từ xa qua một liên kết ssh, rất khuyên quản trị cũng thực hiện những bước phòng ngừa cần thiết để có khả năng truy cập đến máy phục vụ qua một thiết bị nối tiếp từ xa. Vẫn có thể là, sau khi nâng cấp hạt nhân và khởi động lại hệ thống, một số thiết bị sẽ bị thay tên (như diễn tả trong Phần 4.6.2, “Số thứ tự thiết bị khác”) thì quản trị cần phải sửa chữa cấu hình hệ thống thông qua một bàn giao tiếp cục bộ. Hơn nữa, nếu hệ thống bị tình nguyện cờ khởi động lại ở giữa quá trình nâng cấp, quản trị có thể cần phải phục hồi dùng một bàn giao tiếp cục bộ.
Cái hiển nhiện nhất để thử đầu tiên để khởi động lại bằng hạt nhân cũ. Tuy nhiên, vì các lý do khác nhau diễn tả ở nơi khác của tài liệu này, sự thử này không phải đảm bảo thành công.
Nếu nó không thành công, quản trị cần một phương pháp khác để khởi động hệ
thống để truy cập và sửa chữa nó. Một lựa chọn là sử dụng một ảnh cứu đặc
biệt hay một đĩa CD Linux Động. Sau khi khởi động từ đó, quản trị nên có khả
năng gắn kết hệ thống tập tin gốc và chroot
vào nó để xem
xét và sửa chữa vấn đề.
Một lựa chọn khác có thể khuyến khích là sử dụng chế độ cứu của Bộ Cài Đặt Debian squeeze. Lợi ích khi sử dụng bộ cài đặt là người dùng có thể chọn trong nhiều phương pháp cài đặt khác nhau một phương pháp riêng lẻ thích hợp nhất với trường hợp đó. Để tìm thêm thông tin, xem phần “Phục hồi một hệ thống bị hỏng” trong Chương 8 của Sổ tay Cài đặt (dịch sang tiếng Việt) vàHỏi Đáp Cài đặt Debian.
Công cụ initramfs-tools
bao gồm một
trình bao gỡ lỗi[6] trong mỗi initrd nó tạo. Nếu (ví dụ) initrd không thể gắn kết hệ
thống tập tin gốc, nó sẽ mở trình bao gỡ lỗi này mà có sẵn các lệnh cơ bản
để tìm vết của vấn đề và (có thể) sửa chữa nó.
Các cái cơ bản cần kiểm tra: có những tập tin thiết bị đúng trong thư mục
/dev
; những mô-đun nào được nạp (cat
/proc/modules
); kết xuất của lệnh dmesg về lỗi
nạp trình điều khiển. Kết xuất của dmesg cũng hiển thị
tập tin thiết bị nào được gán cho đĩa nào; quản trị cũng nên so thông tin đó
với kết xuất của câu lệnh echo $ROOT
để kiểm tra hệ thống
tập tin gốc nằm trên thiết bị mong đợi.
Nếu quản trị có phải sửa chữa được vấn đề, việc gõ lệnh thoát
exit
sẽ thoát khỏi trình bao gỡ lỗi và tiếp tục lại tiến
trình khởi động ở điểm thời nó thất bại trước. Tất nhiên, quản trị cũng cần
phải sửa chữa vấn đề cơ sở và tạo lại initrd để mà khởi động được về sau.
Việc nâng cấp bản phân phối nên được làm hoặc cục bộ từ một bàn giao tiếp ảo chế độ văn bản (hay một thiết bị cuối nối tiếp được kết nối trực tiếp), hoặc từ xa thông qua một liên kết ssh.
![]() | Quan trọng |
---|---|
If you are using some VPN services (such as |
Để tăng hệ số an toàn khi nâng cấp từ xa, khuyên quản trị chạy tiến trình nâng cấp trên bàn giao tiếp ảo được chương trình screen cung cấp, mà hiệu lực chức năng tái kết nối an toàn và đảm bảo tiến trình nâng cấp không phải bị gián đoạn thậm chí nếu quá trình kết nối từ xa không thành công.
![]() | Quan trọng |
---|---|
Không nên nâng cấp dùng telnet, rlogin, rsh, hay một buổi hợp đăng nhập X được quản lý bởi xdm, gdm, kdm v.v. trên máy đang nâng cấp. Đó là vì mỗi dịch vụ như vậy sẽ bị chấm dứt trong quá trình nâng cấp, mà có thể gây ra một hệ thống không thể tới được mà chưa được nâng cấp hoàn toàn. |
Due to bug #512951, the splashy
package needs to be purged prior to the
upgrade.
# apt-get purge splashy
Quá trình nâng cấp diễn tả trong chương này đã được thiết kế cho việc nâng cấp từ hệ thống lenny « thuần »: hệ thống không chứa gói thuộc nhóm ba. Để nâng cấp một cách tin cậy nhất, quản trị cũng có thể gỡ bỏ các gói nhóm ba khỏi hệ thống trước khi bắt đầu nâng cấp.
Direct upgrades from Debian releases older than 5.0 (lenny) are not supported. Please follow the instructions in the Release Notes for Debian GNU/Linux 5.0 to upgrade to 5.0 first.
Thủ tục này cũng giả sử hệ thống đã được cập nhật lên bản phát hành điểm mới nhất của lenny. Không hay chưa chắc thì quản trị nên theo những hướng dẫn trong Phần A.1, “Nâng cấp hệ thống lenny”.
Trong một số trường hợp nào đó, sử dụng apt-get thay cho aptitude để cài đặt gói có thể làm cho aptitude thấy một gói nào đó là “chưa dùng” và định thời nó bị gỡ bỏ. Thông thường, quản trị nên kiểm tra hệ thống vẫn “sạch” và được cập nhật hoàn toàn trước khi tiếp tục nâng cấp.
Do đó, quản trị nên kiểm tra có hành vi bị hoãn trong bộ quản lý gói
aptitude. Vẫn có một gói định thời gỡ bỏ hay cập nhật
trong bộ quản lý gói thì nó có thể ảnh hưởng âm đến quá trình nâng cấp. Ghi
chú rằng chỉ có thể sửa chữa trường hợp này nếu tập tin liệt kê các nguồn
sources.list
vẫn còn chỉ tới
lenny;, không phải tới bản ổn
định (stable) hay squeeze; xem Phần A.2, “Kiểm tra danh sách nguồn”.
Để thực hiện thủ tục xem lại này, hãy khởi chạy aptitude trong “chế độ trực quan” và bấm phím g (“Đi”). Nếu nó hiển thị hành vi nào, quản trị nên xem lại và sửa chữa hoặc thực hiện chúng. Không có hành vi đề xuất thì chương trình hiển thị một thông điệp: “Không có gói nào được định cài đặt, gỡ bỏ hoặc nâng cấp”.
Nếu người dùng đã cấu hình APT để cài đặt một số gói nào đó từ một bản phát
hành khác với bản ổn định (stable), v.d. từ bản thử (testing), thì có lẽ
người dùng cần phải sửa đổi cấu hình ghim phiên bản trong APT (cất giữ trong
/etc/apt/preferences
) để cho phép nâng cấp gói lên
phiên bản trong bản phát hành ổn định mới. Có thể tìm thêm thông tin về chức
năng ghim phiên bản APT trong apt_preferences(5).
Bất chấp phương pháp dùng để nâng cấp, khuyên người dùng trước tiên kiểm tra trạng thái về tất cả các gói, và thẩm tra mọi gói đều có tình trạng có thể nâng cấp. Theo đây có câu lệnh sẽ hiển thị gói nào có trạng thái « Nửa cài đặt » hay « Lỗi cấu hình » hay bất cứ trạng thái lỗi nào.
# dpkg --audit
Cũng có thể kiểm tra trạng thái về tất cả các gói trên hệ thống dùng dselect, aptitude, hay câu lệnh như
# dpkg -l | pager
hay
# dpkg --get-selections "*" > ~/curr-pkgs.txt
Có nên gỡ bỏ bất kỳ tình trạng giữ lại trước khi nâng cấp. Nếu gói nào chủ yếu để nâng cấp vẫn còn bị giữ lại, thì việc nâng cấp sẽ không thành công.
Ghi chú rằng aptitude sử dụng một phương pháp khác để đăng ký các gói bị giữ lại, so với apt-get và dselect. Người dùng có thể tìm những gói bị giữ lại trong aptitude dùng câu lệnh
# aptitude search "~ahold" | grep "^.h"
Muốn kiểm tra những gói nào bị giữ lại trong apt-get thì dùng câu lệnh
# dpkg --get-selections | grep hold
Nếu người dùng đã sửa đổi và biên dịch lại gói nào một cách cục bộ, vẫn không thay đổi tên nó hoặc đặt thời điểm vào phiên bản, người dùng phải đặt tình trạng giữ lại cho nó, để ngăn cản nó được nâng cấp.
The “hold” package state for apt-get can be changed using:
# echo package_name
hold | dpkg --set-selections
Replace hold
with install
to unset the
“hold” state.
Vẫn có gì cần sửa chữa thì người dùng nên kiểm tra tập tin
sources.list
vẫn còn tham chiếu đến lenny
như diễn tả trong Phần A.2, “Kiểm tra danh sách nguồn”.
Nếu tập tin /etc/apt/sources.list
chứa phần
proposed-updates
, người dùng nên gỡ bỏ tập tin này trước
khi thử nâng cấp hệ thống. Đây là một bước phòng ngừa để giảm sự có thể bị
xung đột.
Nếu hệ thống chứa gói nào khác Debian, ghi chú rằng các gói như vậy có thể
bị gỡ bỏ trong quá trình nâng cấp, do quan hệ phụ thuộc bị xung đột. Nếu
những gói này đã được cài đặt bằng cách thêm một kho gói bổ sung vào tập tin
/etc/apt/sources.list
, người dùng nên kiểm tra nếu kho
gói đó cũng cung cấp các gói được biên dịch cho squeeze, và sửa đổi
dòng nguồn một cách tương ứng, cùng lúc với sửa đổi các dòng nguồn về gói
Debian.
Hệ thống lenny có lẽ cũng chứa phiên bản “mới” chuyển ngược không chính thức của gói có phải thuộc về Debian. Gói như vậy rất có thể gây ra vấn đề trong quá trình nâng cấp, vì kết quả là hai tập tin bị xung đột nhau[7]. Phần 4.5, “Vấn đề có thể gặp trong khi nâng cấp” có vài thông tin về cách giải quyết hai tập tin bị xung đột (nếu trường hợp này xảy ra).
Trước khi khởi chạy tiến trình nâng cấp, người dùng cần phải thiết lập tập
tin cấu hình apt
về danh sách các
gói: /etc/apt/sources.list
.
apt
sẽ xem xét mọi gói được tìm
thông qua một dòng “deb
”, và cài đặt gói có
số thứ tự phiên bản cao nhất, cũng gán quyền ưu tiên cho dòng đầu của tập
tin (do đó khi có nhiều địa chỉ máy nhân ban, bình thường đặt tên một đĩa
cứng cục bộ, sau đó các đĩa CD-ROM, và các máy nhân bản
HTTP/FTP).
Mỗi bản phát hành có một tên mã (v.d. lenny
,
squeeze
) và một tên trạng thái (tức là
oldstable
[ổn định cũ], stable
[ổn
định], testing
[thử], unstable
[bất
định]). Tham chiếu đến một bản phát hành theo tên mã có lợi ích là dễ phân
biệt các bản phát hành khác nhau. Người dùng có thể theo dõi các thông báo
phát hành tìm tên mã mới và tự cập nhật hệ thống. Tuy nhiên, người dùng phân
biệt theo tên trạng thái sẽ thấy rất nhiều bản cập nhật gói ngay khi bản mới
được phát hành.
Cấu hình mặc định được thiết lập để cài đặt từ các máy phục vụ Debian chính,
nhưng người dùng cũng có thể sửa đổi tập tin
/etc/apt/sources.list
để sử dụng máy nhân bản khác, tốt
hơn một máy nhân bản gần chỗ người dùng trên mạng.
Có thể tìm các địa chỉ máy nhân bản HTTP/FTP Debian ở http://www.debian.org/distrib/ftplist (xem phần “list of Debian mirrors” [danh sách các máy nhân bản Debian]). Máy nhân bản HTTP thường chạy nhanh hơn máy nhân bản FTP.
Ví dụ, giả sử máy nhân bản Debian gần nhất là
http://mirrors.kernel.org
. Khi xem xét nó dùng trình duyệt
Web hay một chương trình FTP, người dùng sẽ thấy những thư mục chính được
sắp đặt như thế:
http://mirrors.kernel.org/debian/dists/squeeze/main/binary-i386/... http://mirrors.kernel.org/debian/dists/squeeze/contrib/binary-i386/...
Để sử dụng máy nhân bản này với apt
,
người dùng nên thêm vào tập tin sources.list
dòng này:
deb http://mirrors.kernel.org/debian squeeze main contrib
Ghi chú rằng đoạn « dists
» được thêm ngầm, và các đối số
đằng sau tên bản phát hành được dùng để mở rộng đường dẫn ra nhiều thư mục.
Sau khi thêm các nguồn mới, hãy tắt mỗi dòng
“deb
” đã tồn tại trong
sources.list
bằng cách ghi một dấu thăng
(#
) vào trước.
Thay vào sử dụng máy nhân bản HTTP/FTP, người dùng cũng có thể sửa đổi tập
tin /etc/apt/sources.list
để sử dụng kho nhân bản trên
một đĩa cục bộ (có thể gắn kết thông qua NFS).
Ví dụ, kho nhân bản gói có thể nằm dưới
/var/ftp/debian/
, với các thư mục chính:
/var/ftp/debian/dists/squeeze/main/binary-i386/... /var/ftp/debian/dists/squeeze/contrib/binary-i386/...
Để sử dụng kho cục bộ này với apt
,
hãy thêm vào tập tin sources.list
dòng này:
deb file:/var/ftp/debian squeeze main contrib
Ghi chú rằng đoạn « dists
» được thêm ngầm, và các đối số
đằng sau tên bản phát hành được dùng để mở rộng đường dẫn ra nhiều thư mục.
Sau khi thêm các nguồn mới, hãy tắt mỗi dòng
“deb
” đã tồn tại trong
sources.list
bằng cách ghi một dấu thăng
(#
) vào trước.
Nếu người dùng chỉ muốn sử dụng các đĩa CD, hãy ghi chú
tắt (đặt #
vào trước) những dòng
“deb
” đã tồn tại trong tập tin
/etc/apt/sources.list
.
Kiểm tra tập tin /etc/fstab
chứa một dòng hiệu lực gắn
kết ổ đĩa CD ở điểm lắp /cdrom
(điểm lắp
/cdrom
chính xác cần thiết cho
apt-cdrom). Ví dụ, nếu /dev/hdc
là ổ
đĩa CD, /etc/fstab
nên chứa một dòng như thế:
/dev/hdc /cdrom auto defaults,noauto,ro 0 0
Ghi chú rằng không cho phép khoảng cách nằm giữa các từ
defaults,noauto,ro
trong trường thứ tư.
Để thẩm tra chức năng, nạp một đĩa CD và thử chạy:
# mount /cdrom # câu lệnh này gắn kết đĩa CD tới điểm lắp # ls -alF /cdrom # câu lệnh này nên hiển thị thư mục gốc của đĩa CD # umount /cdrom # câu lệnh này sẽ tháo gắn kết đĩa CD
Sau đó thì chạy:
# apt-cdrom add
cho mỗi đĩa CD nhị phân Debian, để thêm dữ liệu về mỗi đĩa CD vào co sở dữ liệu của APT.
The recommended way to upgrade from previous Debian GNU/Linux releases is to use the package management tool apt-get. In previous releases, aptitude was recommended for this purpose, but recent versions of apt-get provide equivalent functionality and also have shown to more consistently give the desired upgrade results.
Đừng quên gắn kết tất cả các phân vùng cần thiết (đặc biệt phiên bản gốc và
/usr
) với quyền đọc-ghi, dùng một câu lệnh như :
# mount -o remount,rw /điểm_lắp
Sau đó thì người dùng nên kiểm tra những mục nhập nguồn APT (trong
/etc/apt/sources.list
) tham chiếu đến hoặc
“squeeze
” hoặc
“stable
”. Không nên có nguồn nào vẫn còn chỉ
tới lenny.
![]() | Ghi chú |
---|---|
Source lines for a CD-ROM might sometimes refer to
“ |
Rất khuyên người dùng sử dụng chương trình /usr/bin/script để thu một bản sao của phiên chạy nâng cấp. Như thế, nếu một vấn đề xảy ra, có một bản sao mọi hành vi, và nếu cần, người dùng có thể cung cấp thông tin chính xác trong một báo cáo lỗi hay báo cáo nâng cấp. Để bắt đầu thu, hãy gõ câu lệnh:
# script -t 2>~/upgrade-squeeze.time -a ~/upgrade-squeeze.script
hay tương tự. Đừng để bản sao vào một thư mục tạm thời như
/tmp
hay /var/tmp
(các tập tin
trong hai thư mục này có thể bị xoá trong khi nâng cấp hoặc khi nào khởi
động lại).
The typescript will also allow you to review information that has scrolled
off-screen. If you are at the system's console, just switch to VT2 (using
Alt+F2)
and, after logging in, use less -R
~root/upgrade-squeeze.script
to view the file.
Sau khi nâng cấp xong, người dùng có thể dừng chạy script
bằng cách gõ lệnh thoát exit
vào dấu nhắc.
Có đặt cờ -t trong câu lệnh script nói trên thì người dùng cũng có thể sử dụng chương trìnhscriptreplay để phát lại toàn bộ phiên chạy.
# scriptreplay ~/upgrade-squeeze.time ~/upgrade-squeeze.script
Trước tiên nên lấy danh sách các gói sẵn sàng cho bản phát hành mới. Việc này được làm bằng cách chạy câu lệnh cập nhật:
# apt-get update
You have to make sure before upgrading your system that you have sufficient
hard disk space when you start the full system upgrade described in Phần 4.4.6, “Upgrading the system”. First, any package needed for installation that
is fetched from the network is stored in
/var/cache/apt/archives
(and the
partial/
subdirectory, during download), so you must
make sure you have enough space on the file system partition that holds
/var/
to temporarily download the packages that will be
installed in your system. After the download, you will probably need more
space in other file system partitions in order to both install upgraded
packages (which might contain bigger binaries or more data) and new packages
that will be pulled in for the upgrade. If your system does not have
sufficient space you might end up with an incomplete upgrade that might be
difficult to recover from.
apt-get can show you detailed information of the disk space needed for the installation. Before executing the upgrade, you can see this estimate by running:
# apt-get -o APT::Get::Trivial-Only=true dist-upgrade [ ... ] XXX upgraded, XXX newly installed, XXX to remove and XXX not upgraded. Need to get xx.xMB of archives. After this operation, AAAMB of additional disk space will be used.
![]() | Ghi chú |
---|---|
Việc chạy câu lệnh này ở đầu của quá trình nâng cấp cũng có thể xuất một lỗi, vì lý do diễn tả trong các phần kế tiếp. Trong trường hợp đó, người dùng cần phải đợi đến khi hoàn tất quá trình nâng cấp hệ thống tối thiểu (xem Phần 4.4.4, “Nâng cấp hệ thống tối thiểu”) và hoàn tất nâng cấp hạt nhân trước khi chạy lại câu lệnh này để ước lượng sức chứa còn trống trên đĩa. |
If you do not have enough space for the upgrade, apt-get will warn you with a message like this:
E: You don't have enough free space in /var/cache/apt/archives/.
In this situation, make sure you free up space beforehand. You can:
Remove packages that have been previously downloaded for installation (at
/var/cache/apt/archives
). Cleaning up the package
cache by running apt-get clean will remove all previously
downloaded package files.
Gỡ bỏ các gọi bị quên. Nếu người dùng đã cài đặt gói popularity-contest
, cũng có thể sử dụng
popcon-largest-unused để liệt kê những gói không dùng mà
chiếm sức chứa nhiều nhất. Cũng có thể sử dụng deborphan
hay debfoster để tìm các gói quá cũ (xem Phần 4.10, “Gói quá cũ” ). Hoặc người dùng có thể khởi chạy
aptitude trong “chế độ trực quan” và tìm các
gói quá cũ dưới tiêu đề “Gói cũ và tạo cục bộ”.
Gỡ bỏ các gói chiếm quá nhiều sức chứa mà hiện thời không phải cần thiết
(lúc nào cũng có thể phục hồi sau khi nâng cấp). Người dùng có thể liệt kê
những gói chiếm nhiều sức chứa nhất trên đĩa, dùng dpigs
(sẵn sàng trong gói debian-goodies
)
hay wajig (chạy câu lệnh wajig size
).
You can list packages that take up most of the disk space with aptitude
. Start aptitude in
“visual mode”, select
→ , press l and enter
~i
, press S and enter
~installsize
, then it will give you nice list to work
with.
Gỡ bỏ khỏi hệ thống các bản dịch và tập tin địa hoá mà không cần
thiết. Người dùng có thể cài đặt gói localepurge
và cấu hình nó để giữ trong hệ thống
chỉ một số miền địa phương đã chọn (v.d. tiếng Việt, tiếng Anh và tiếng
Nga). Thủ tục này sẽ giảm sức chứa trên đĩa được chiếm ở
/usr/share/locale
.
Tạm thời di chuyển sang một hệ thống khác, hoặc gỡ bỏ hẳn, các bản ghi hệ
thống nằm dưới /var/log/
.
Dùng một thư mục /var/cache/apt/archives
tạm thời: có
thể đặt một thư mục nhớ tạm mà tạm thời, từ một hệ thống khác (vật chứa
USB, đĩa cứng tạm thời, hệ thống đang được dùng v.v.).
![]() | Ghi chú |
---|---|
Không nên dùng một sự gắn kết NFS vì kết nối qua mạng có thể bị gián đoạn trong quá trình nâng cấp. |
Ví dụ, nếu có một ổ đĩa USB được gắn kết đến
/media/usbkey
:
gỡ bỏ các gói đã tải về trước đây để cài đặt:
# apt-get clean
sao chép thư mục /var/cache/apt/archives
sang vật chứa
USB:
# cp -ax /var/cache/apt/archives /media/usbkey/
gắn kết thư mục nhớ tạm vẫn tạm thời đến thư mục hiện thời:
# mount --bind /media/usbkey/archives /var/cache/apt/archives
sau khi nâng cấp thì phục hồi thư mục
/var/cache/apt/archives
gốc:
# umount /media/usbkey/archives
gỡ bỏ /media/usbkey/archives
còn lại.
Người dùng có thể tạo thư mục nhớ tạm vẫn tạm thời trên hệ thống tập tin nào được gắn kết trên hệ thống.
Do a minimal upgrade of the system (see Phần 4.4.4, “Nâng cấp hệ thống tối thiểu”) or partial upgrades of the system followed by a full upgrade. This will make it possible to upgrade the system partially, and allow you to clean the package cache before the full upgrade.
Ghi chú rằng để gỡ bỏ gói một cách an toàn, khuyên người dùng chuyển đổi tập
tinsources.list
về lenny như diễn tả trong
Phần A.2, “Kiểm tra danh sách nguồn”.
In some cases, doing the full upgrade (as described below) directly might remove large numbers of packages that you will want to keep. We therefore recommend a two-part upgrade process, first a minimal upgrade to overcome these conflicts, then a full upgrade as described in Phần 4.4.6, “Upgrading the system”.
To do this first, run:
# apt-get upgrade
Kết quả là nâng cấp những gói có thể nâng cấp được mà không cần gỡ bỏ hay cài đặt gói khác nào.
The minimal system upgrade can also be useful when the system is tight on space and a full upgrade cannot be run due to space constrains.
The udev
version in squeeze
requires a kernel of version 2.6.26 or newer with the
CONFIG_SYSFS_DEPRECATED
option disabled and the
CONFIG_INOTIFY_USER
and
CONFIG_SIGNALFD
options enabled. Because the standard
Debian kernels in lenny (version 2.6.26) have
CONFIG_SYSFS_DEPRECATED
enabled, and the udev
version in lenny will not
provide all the functionality expected by the latest kernels, special care
must be taken when upgrading to avoid putting your system in an unbootable
state.
Booting the 2.6.26 kernel from lenny with the udev
from squeeze may result in a failure
to correctly assign names to network devices, and will also fail to apply
certain additional permissions to block devices (such as access by the
disk
group). The software itself will appear to be
working, but some rules (for example, network-based rules) will not be
loaded properly. It is therefore strongly recommended that you upgrade the
kernel on its own at this point, to ensure a compatible kernel is available
before upgrading udev
.
Để tiếp tục quá trình nâng cấp hát nhân này, hãy chạy câu lệnh:
# apt-get install linux-image-2.6-flavor
Xem Phần 4.6.1, “Cài đặt siêu gói hạt nhân” để phân biệt mùi vị gói hạt nhân nào cần cài đặt.
Users of the grub
bootloader should
make sure that update-grub is run as part of the kernel
upgrade, or run it manually.
Immediately after upgrading the kernel, you should also install the new
udev
to minimize the risk of other
incompatibilities caused by using the old udev with a new kernel [8]. You can do this by running:
# apt-get install udev
Once you have upgraded both the kernel and udev
the system should be rebooted.
Once you have taken the previous steps, you are now ready to continue with the main part of the upgrade. Execute:
# apt-get dist-upgrade
![]() | Ghi chú |
---|---|
The upgrade process for other releases recommended the use of aptitude for the upgrade. This tool is not recommended for upgrades from lenny to squeeze. |
Câu lệnh này sẽ nâng cấp hoàn toàn hệ thống, tức là cài đặt phiên bản mới nhất của mọi gói sẵn sàng, và giải quyết mọi quan hệ phụ thuộc có thể biến đổi trong bản phát hành khác nhau. Nếu cần thiết, nó sẽ cài đặt một số gói mới (thường là phiên bản thư viện mới, hay gói bị thay tên), và gỡ bỏ gói quá cũ nào bị xung đột.
Khi nâng cấp từ một bộ đĩa CD/DVD, người dùng sẽ được nhắc nạp một đĩa nào đó ở vài điểm thời trong quá trình nâng cấp. Có lẽ cần phải nạp nhiều lần cùng một đĩa, do các gói liên quan đến nhau mà được chia ra các đĩa khác nhau.
New versions of currently installed packages that cannot be upgraded without
changing the install status of another package will be left at their current
version (displayed as “held back”). This can be resolved by
either using aptitude to choose these packages for
installation or by trying apt-get -f install
.
package
The following sections describe known issues that might appear during an upgrade to squeeze.
Support for cryptoloop has been dropped from the Linux kernel packages included in Debian 6.0. Existing installations using cryptoloop need to be transitioned to dm-crypt before the upgrade.
The upgrade process to squeeze might ask for removal of packages in the system. The precise list of packages will vary depending on the set of packages that you have installed. These release notes give general advice on these removals, but if in doubt, it is recommended that you examine the package removals proposed by each method before proceeding.
Some common packages that are expected to be removed include: autofs
(replaced by autofs5
), dhcp3
(replaced by isc-dhcp
), madwifi-source
, python-setuptools
and python2.4
(replaced by python2.6
). For more information about packages
obsoleted in squeeze, see Phần 4.10, “Gói quá cũ”.
Nếu một thao tác dùng aptitude, apt-get hay dpkg không thành công và xuất lỗi
E: Hết chỗ tạo sơ đồ bộ nhớ động (Dynamic MMap)
thì không đủ sức chứa nhớ tạm mặc định. Quản trị có thể giải quyết vấn đề
này bằng cách gỡ bỏ hay tắt ghi chú các dòng không cần thiết trong tập tin
/etc/apt/sources.list
, hoặc tăng kích cỡ vùng nhớ tạm
(đặt APT::Cache-Limit
trong tập tin cấu hình
/etc/apt/apt.conf
. Câu lệnh theo đây sẽ đặt một giá trị
nên đủ để nâng cấp:
# echo 'APT::Cache-Limit "12500000";' >> /etc/apt/apt.conf
Câu lệnh này giả sử chưa đặt biến này trong tập tin đó.
Sometimes it's necessary to enable the
APT::Force-LoopBreak
option in APT to be able to
temporarily remove an essential package due to a Conflicts/Pre-Depends
loop. apt-get will alert you of this and abort the
upgrade. You can work around this by specifying the option -o
APT::Force-LoopBreak=1
on the apt-get command
line.
It is possible that a system's dependency structure can be so corrupt as to require manual intervention. Usually this means using apt-get or
# dpkg --remove tên_gói
để loại trừ một số gói phạm lỗi, hoặc
# apt-get -f install # dpkg --configure --pending
Trong trường hợp rất khó, bạn có thể cần phải ép buộc cài đặt lại, dùng một câu lệnh như
# dpkg --install /đường/dẫn/tới/tên_gói.deb
Trường hợp tập tin bị xung đột không nên xảy ra khi nâng cấp từ một hệ thống lenny “thuần”, nhưng vẫn còn có thể xảy ra nếu hệ thống chứa bản chuyển ngược không chính thức. Sự xung đột giữa các tập tin sẽ gây ra một lỗi như :
Đang giải nén<tên_gói1>
(từ<tập_tin_gói1>
) ... dpkg: gặp lỗi khi xử lý<tên_gói1>
(--install): đang thử ghi đè lên `<tên_tập_tin>
', mà cũng nằm trong gói<tên_gói2>
dpkg-deb: tiến trình con dán bị tín hiệu giết (Ống dẫn bị vỡ) Gập lỗi khi xử lý:<tên_gói1>
Quản trị cũng có thể thử giải quyết một trường hợp các tập tin bị xung đột bằng cách ép buộc gỡ bỏ gói có tên trên dòng cuối cùng của thông điệp lỗi:
# dpkg -r --force-depends tên_gói
After fixing things up, you should be able to resume the upgrade by repeating the previously described apt-get commands.
During the upgrade, you will be asked questions regarding the configuration
or re-configuration of several packages. When you are asked if any file in
the /etc/init.d
directory, or the
/etc/manpath.config
file should be replaced by the
package maintainer's version, it's usually necessary to answer `yes' to
ensure system consistency. You can always revert to the old versions, since
they will be saved with a .dpkg-old
extension.
Chưa chắc nên làm gì thì viết tên của gói hay tập tin đó, và tháo gỡ trường
hợp vào một lúc sau. Cũng có thể tìm kiếm qua tập tin
typescript
để xem lại thông tin đã cuộn qua trên màn
hình trong khi nâng cấp.
If you are running the upgrade using the system's local console you might find that at some points during the upgrade the console is shifted over to a different view and you lose visibility of the upgrade process. For example, this will happen in desktop systems when gdm is restarted.
To recover the console where the upgrade was running you will have to use Ctrl+Alt+F1 to switch back to the virtual terminal 1 if in the graphical startup screen or use Alt+F1 if in the local text-mode console. Replace F1 with the function key with the same number of the virtual terminal the upgrade was running in. You can also use Alt+Left Arrow or Alt+Right Arrow to switch between the different text-mode terminals.
In most cases, packages should upgrade smoothly between lenny and squeeze. There are a small number of cases where some intervention may be required, either before or during the upgrade; these are detailed below on a per-package basis.
Evolution (the GNOME Desktop mail client) has been updated from version
2.22
to 2.30
. This changes the storage
format used by the package for local data and there is a possibility of data
loss if the upgrade is performed whilst evolution
is running. Exiting the application
itself may not be sufficient, as various related components will continue to
run in the background. To avoid any potential issues, it is recommended that
you completely exit your desktop environment before beginning the upgrade to
squeeze.
As part of the upgrade process, evolution
will check whether any related
processes are running and will recommend that they be closed. A secondary
check for processes will then be performed; if necessary, a choice will be
offered between allowing the remaining processes to be killed or aborting
the upgrade in order to resolve the situation by hand.
Phần này giải thích cách nâng cấp hạt nhân, và diễn tả một số vấn đề liên
quan đến quá trình nâng cấp này. Quản trị có dịp cài đặt một của những gói
linux-image-*
được Debian cung cấp,
hoặc biên dịch một hạt nhân riêng từ mã nguồn.
Ghi chú rằng rất nhiều thông tin trong phần này dựa vào giả sử rằng quản trị
sẽ sử dụng một của những hạt nhân Debian kiểu mô-đun, cùng với initramfs-tools
và udev
. Nếu quản trị chọn sử dụng một hạt nhân
riêng mà không cần thiết một initrd, hoặc sử dụng một bộ tạo ra initrd khác,
một số thông tin ở đây có thể không còn thích hợp lại.
Khi chạy quá trình nâng cấp bản phát hành (dist-upgrade
)
từ lenny lên squeeze, rất khuyên quản trị cài đặt một siêu
gói (metapackage) linux-image-2.6-*
mới. Gói này cũng có thể được tự động cài đặt bởi tiến trình
dist-upgrade
. Quản trị có thể kiểm tra nó đã được cài đặt
bằng cách chạy câu lệnh:
# dpkg -l "linux-image*" | grep ^ii
Không có kết xuất gì thì quản trị cần phải tự cài đặt một gói linux-image-2.6-*
. Để thấy danh sách các gói
linux-image-2.6-*
sẵn sàng, chạy câu
lệnh:
# apt-cache search linux-image-2.6- | grep -v transition
If you are unsure about which package to select, run uname
-r
and look for a package with a similar name. For example, if
you see '2.6.26-2-686
', it is recommended that you
install linux-image-2.6-686
. You
may also use apt-cache to see a long description of each
package in order to help choose the best one available. For example:
# apt-cache show linux-image-2.6-686
You should then use apt-get install
to install it. Once
this new kernel is installed you should reboot at the next available
opportunity to get the benefits provided by the new kernel version.
For the more adventurous there is an easy way to compile your own custom
kernel on Debian GNU/Linux. Install the kernel-package
tool and read the documentation
in /usr/share/doc/kernel-package
. Alternatively, you
can also use the kernel sources, provided in the linux-source-2.6
package. You can make use of
the deb-pkg
target available in the sources' makefile for
building a binary package. There are some differences in these two
approaches, please consult the respective package's documentation.
Nếu có thể, tốt hơn khi nâng cấp gói hạt nhân một cách riêng với quá trình
dist-upgrade
chính, để tránh bị đứng với một hệ thống tạm
thời không khởi động được. Ghi chú rằng thao tác này chỉ nên được làm đằng
sau quá trình nâng cấp tối thiểu diễn tả trong Phần 4.4.4, “Nâng cấp hệ thống tối thiểu”.
In lenny and later, a new kernel mechanism for hardware discovery may change the order in which devices are discovered on your system on each boot, affecting the device names assigned to them. For example, if you have two network adapters that are associated with two different drivers, the devices eth0 and eth1 refer to may be swapped.
For network devices, this reordering is normally avoided by the definitions
at /etc/udev/rules.d/70-persistent-net.rules
for
udev
. Since these rules were
already in place in lenny, no additional action should be
required when upgrading to squeeze to get the benefit of stable
network device names. Please note, however, that this udev mechanism means
that a given network device name is tied to a particular piece of hardware;
if you, for instance, exchange ethernet adapters in a deployed squeeze
system, the new adapter will get a new interface name instead of using the
existing one. To reuse an existing device name for new hardware, you will
need to delete the associated entry from
/etc/udev/rules.d/70-persistent-net.rules
.
For storage devices, you may be able to avoid this reordering by using
initramfs-tools
and configuring it
to load storage device driver modules in the same order they are currently
loaded. However, in light of other changes to the storage subsystem of the
Linux kernel as described at Phần 5.1.1, “Migration of disk drivers from IDE to PATA subsystem”, this is
usually not worth the effort and it is recommended instead to use device
names that are guaranteed to be stable over time, such as the UUID aliases
[9] in the /dev/disk/by-uuid/
directory or LVM
device names in /dev/mapper/
.
Nếu khởi động hệ thống dùng một initrd được tạo dùng initramfs-tools
, trong một số trường hợp các tập
tin thiết bị được udev
tạo quá trễ
để văn lệnh khởi động xử lý.
Trường hợp này thường ngụ ý khi không khởi động được vì không thể gắn kết hệ
thống tập tin gốc, và màn hình hiển thị một trình bao gỡ lỗi. Tuy nhiên, nếu
quản trị kiểm tra về sau, tất cả các thiết bị cần thiết có phải nằm trong
/dev
. Trường hợp này đã xảy ra khi hệ thống tập tin gốc
nằm trên một đĩa USB hay một mảng
RAID, đặc biệt khi dùng
LILO.
Có thể chỉnh lại vấn đề này bằng cách sử dụng tham số khởi động
rootdelay=
(khoảng đợi khởi
động: 9 giây). Điều chỉnh giá trị này để thích hợp với trường hợp riêng.
9
Một số người dùng đã thông báo rằng quá trình nâng cấp có thể gây ra hạt nhân không tìm được phân vùng gốc của hệ thống sau khi khởi động lại hệ thống.
Trong trường hợp như vậy, tiến trình khởi động hệ thống sẽ treo ở thông điệp theo đây:
Đang đợi hệ thống tập tin gốc...
và sau vài giây nữa, một dấu nhắc hộp bận thô sẽ xuất hiện.
This problem can occur when the upgrade of the kernel introduces the use of
the new generation of IDE drivers. The
IDE disk naming convention for the old drivers was
hda
, hdb
, hdc
,
hdd
. The new drivers will name the same disks
respectively sda
, sdb
,
sdc
, sdd
.
The problem appears when the upgrade does not generate a new
/boot/grub/menu.lst
file to take the new naming
convention into account. During the boot, Grub will pass a system root
partition to the kernel that the kernel doesn't find. It can also appear
when mounting filesystems if the /etc/fstab
has not
been updated accordingly. Although the upgrade process to squeeze
should cover both situations automatically.
Người dùng đã gặp vấn đề này nên nhảy tới Phần 4.7.2, “Cách giải quyết vấn đề sau khi nâng cấp”. Để tránh vấn đề này trước khi nâng cấp, đọc nữa nhé.
One can avoid this problem entirely by using an identifier for the root filesystem that does not change from one boot to the next. There are two possible methods for doing this - labeling the filesystem, or using the filesystem's universally unique identifier (UUID). These methods are supported in Debian since the etch release.
Hai phương pháp này có lợi ích và bất lợi. Phương pháp đặt nhãn vẫn dễ đọc hơn, nhưng cũng có thể gặp vấn đề nếu một hệ thống tập tin khác cùng máy có nhãn đó. Phương pháp UUID ít đẹp hơn, nhưng rất ít có thể tạo hai UUID xung đột.
Trong các mẫu thí dụ dưới đây, giả sử hệ thống tập tin gốc nằm trên
/dev/hda6
. Cũng giả sử hệ thống có bản cài đặt
udev
và hệ thống tập tin kiểu
ext2
hay ext3
.
Để thực hiện phương pháp đặt nhãn:
Đặt nhãn hệ thống tập tin (tên có số tối đa 15 ký tự) bằng cách chạy câu lệnh: e2label /dev/hda6 rootfilesys
Chỉnh sửa tập tin /boot/grub/menu.lst
và sửa đổi dòng:
# kopt=root=/dev/hda6 ro
thành
# kopt=root=LABEL=rootfilesys ro
![]() | Ghi chú |
---|---|
Không nên gỡ bỏ dấu |
Cập nhật những dòng hạt nhân (kernel
) trong tập tin lines
in menu.lst
bằng cách chạy câu lệnh
update-grub.
Chỉnh sửa tập tin /etc/fstab
và sửa đổi dòng mà gắn kết
phân vùng /
, v.d.
/dev/hda6 / ext3 defaults,errors=remount-ro 0 1
thành
LABEL=rootfilesys / ext3 defaults,errors=remount-ro 0 1
Thay đổi đáng kể là cột bên trái: không nên sửa đổi cột khác nào trên dòng này.
Để thực hiện phương pháp UUID:
Find out the universally unique identifier of your filesystem by issuing: ls -l /dev/disk/by-uuid | grep hda6. You can also use blkid /dev/hda6.
If you list the contents in /dev/disk/by-uuid
, you
should get a line similar to this one:
lrwxrwxrwx 1 root root 24 2008-09-25 08:16 d0dfcc8a-417a-41e3-ad2e-9736317f2d8a -> ../../hda6
If you use blkid, you should get an output similar to this one:
/dev/hda6: UUID="d0dfcc8a-417a-41e3-ad2e-9736317f2d8a" TYPE="ext3"
UUID là tên của liên kết tượng trưng chỉ tới
/dev/hda6
, tức là:
d0dfcc8a-417a-41e3-ad2e-9736317f2d8a
.
![]() | Ghi chú |
---|---|
UUID của mỗi hệ thống tập tin là một chuỗi riêng biệt. |
Chỉnh sửa tập tin /boot/grub/menu.lst
và sửa đổi dòng:
# kopt=root=/dev/hda6 ro
to use UUID instead:
# kopt=root=UUID=d0dfcc8a-417a-41e3-ad2e-9736317f2d8 ro
![]() | Ghi chú |
---|---|
Không nên gỡ bỏ dấu |
Cập nhật những dòng hạt nhân (kernel
) trong tập tin lines
in menu.lst
bằng cách chạy câu lệnh
update-grub.
Chỉnh sửa tập tin /etc/fstab
và sửa đổi dòng mà gắn kết
phân vùng /
, v.d.
/dev/hda6 / ext3 defaults,errors=remount-ro 0 1
thành
UUID=d0dfcc8a-417a-41e3-ad2e-9736317f2d8 / ext3 defaults,errors=remount-ro 0 1
Thay đổi đáng kể là cột bên trái: không nên sửa đổi cột khác nào trên dòng này.
Phương pháp này thích hợp khi Grub
hiển thị giao diện trình đơn để chọn mục nhập từ đó người dùng muốn khởi
động. Không có trình đơn xuất hiện thì hãy thử bấm phím Esc
trước khi hạt nhân khởi động, để ép buộc trình đơn xuất hiện. Vẫn còn không
thành công thì thử Phần 4.7.2.2, “Lời giải 2” hay Phần 4.7.2.3, “Lời giải 3”.
Trong trình đơn Grub
, hãy tô sáng
mục nhập từ đó cần khởi động. Bấm phím e để chỉnh sửa các
tùy chọn liên quan đến mục nhập này. Kết quả nên tương tự với:
root (hd0,0) kernel /vmlinuz-2.6.32-5-686 root=/dev/hda6 ro initrd /initrd.img-2.6.32-5-686
Tô sáng dòng
kernel /vmlinuz-2.6.32-5-686 root=/dev/hda6 ro
bấm phím e và thay thế
hd
bằng
X
sd
(X
X
đại
diện chữ a
, b
, c
hay d
phụ thuộc vào hệ thống. Trong mẫu thí dụ này, dòng
này trở thành:
kernel /vmlinuz-2.6.32-5-686 root=/dev/sda6 ro
Sau đó, bấm phím Enter để lưu lại thay đổi. Nếu dòng khác
nào bao gồm hd
, cũng nên sửa
đổi nó. Không nên sửa đổi mục nhập tương tự với X
root
(hd0,0)
. Một khi sửa đổi xong và lưu lại, bấm phím
b: hệ thống nên khởi động như bình thường.
Một khi khởi động được, người dùng cần phải sửa chữa bền bỉ vấn đề đó. Nhảy tới Phần 4.7.1, “Cách tránh vấn đề này trong khi nâng cấp” và áp dụng một của hai thủ tục đề xuất.
Khởi động từ vật chứa cài đặt Debian GNU/Linux (đĩa
CD/DVD) và khi được nhắc, chọn mục
rescue
(cứu) để khởi chạy chế độ cứu. Chọn ngôn ngữ, địa
điểm và bố trí bàn phím, sau đó cho phép nó cấu hình mạng (bất chấp thành
không hay không). Sau một thời gian, nó nên nhắc người dùng chọn phân vùng
cần sử dụng làm hệ thống tập tin gốc. Các lựa chọn đề xuất sẽ hình như :
/dev/sda1 /dev/sda2 /dev/sda5 /dev/sda6
Nếu người dùng biết phân vùng nào là hệ thống tập tin gốc, chọn phân vùng thích hợp. Không thì chỉ thử phân vùng thứ nhất. Nếu phần mềm than phiền về một phân vùng hệ thống tập tin không hợp lệ, chỉ thử phân vùng kế tiếp, v.v. Thử lần lượt phân vùng nọ sau phân vùng kia không nên làm hại phân vùng, và nếu chỉ có một hệ điều hành được cài đặt trên đĩa thì dễ tìm phân vùng hệ thống tập tin đúng. Nếu có nhiều hệ điều hành được cài đặt vào đĩa, tốt hơn khi người dùng biết phân vùng nào là đúng.
Một khi chọn phân vùng, người dùng sẽ thấy một số tùy chọn khác nhau. Bật tùy chọn sẽ thực hiện một trình bao trong phân vùng đã chọn. Nếu phần mềm than phiền rằng nó không thể làm như thế, thử tùy chọn này trong một phiên bản khác.
Sau đó thì quản trị nên có quyền truy cập đến trình bao dưới người dùng
root
(người chủ) trên hệ thống tập tin gốc được gắn kết
đến /target
. Quản trị cần quyền truy cập đến nội dung
của các thư mục /boot
, /sbin
và
/usr
trên đĩa cứng, mà giờ nên sẵn sàng dưới
/target/boot
, /target/sbin
và
/target/usr
. Nếu thư mục như vậy cần được gắn kết từ
phiên bản khác, hãy làm như thế (xem /etc/fstab
để tìm
biết phân vùng nào nên gắn kết).
Nhảy tới Phần 4.7.1, “Cách tránh vấn đề này trong khi nâng cấp” và áp dụng một
của hai thủ tục đề xuất để sửa bền bỉ vấn đề này. Sau đó, gõ lệnh
exit
để thoát khỏi trình bao cứu, và chọn mục
reboot
để khởi động hệ thống như bình thường (đừng quên
gỡ bỏ vật chứa có khả năng khởi động).
Khởi động từ bản phát hành CD-Động (LiveCD), v.d. Debian Động, Knoppix hay Ubuntu Động.
Gắn kết phiên bản chứa thư mục /boot
. Không biết thư
mục nào thì sử dụng kết xuất của lệnh dmesg để tìm biết
nếu đĩa được biết như là hda
, hdb
,
hdc
,hdd
hay sda
,
sdb
, sdc
, sdd
. Một
khi biết đĩa nào cần thao tác, v.d. sdb
, chạy câu lệnh
theo đây để thấy bảng phân vùng của đĩa và tìm phân vùng đúng:
fdisk -l /dev/sdb
Giả sử đã gắn kết phân vùng đúng dưới /mnt
, và phân
vùng này chứa thư mục /boot
và nội dung của nó, hãy
chỉnh sửa tập tin /mnt/boot/grub/menu.lst
.
Tìm phần tương tự với:
## ## End Default Options ## title Debian GNU/Linux, kernel 2.6.32-5-686 root (hd0,0) kernel /vmlinuz-2.6.32-5-686 root=/dev/hda6 ro initrd /initrd.img-2.6.32-5-686 title Debian GNU/Linux, kernel 2.6.32-5-686 (single-user mode) root (hd0,0) kernel /vmlinuz-2.6.32-5-686 root=/dev/hda6 ro single initrd /initrd.img-2.6.32-5-686 ### END DEBIAN AUTOMAGIC KERNELS LIST
và thay thế mỗi chuỗi hda
, hdb
,
hdc
, hdd
bằngsda
,
sdb
, sdc
, sdd
như
thích hợp. Không nên sửa đổi dòng tương tự với:
root (hd0,0)
Khởi động lại hệ thống, gỡ bỏ đĩa CD-Động, và hệ thống nên khởi động đúng.
Một khi khởi động được, áp dụng một của hai thủ tục đề xuất dưới Phần 4.7.1, “Cách tránh vấn đề này trong khi nâng cấp” để sửa chữa bền bỉ vấn đề này.
Sau khi nâng cấp, có vài việc có thể làm để chuẩn bị cho bản phát hành kế tiếp.
Gỡ bỏ các gói quá cũ và không dùng như diễn tả trong Phần 4.10, “Gói quá cũ”. Cũng nên xem lại những tập tin cấu hình được chúng dùng và có dịp tẩy mỗi gói để cũng gỡ bỏ các tập tin cấu hình (và dữ liệu liên quan khác).
During the upgrade, you will normally have been offered the option to "chainload" GRUB 2: that is, to keep GRUB Legacy as the primary boot loader but to add an option to it to load GRUB 2 and then start your Debian GNU/Linux system from that. This allows you to verify that GRUB 2 works on your system before committing to use it permanently.
Once you have confirmed that GRUB 2 works, you should switch to using it properly: the chainloading setup is only intended to be used temporarily. You can do this by running upgrade-from-grub-legacy.
The GRUB Manual has more information on the changes between GRUB Legacy and GRUB 2, some of which may require changes to complex configurations. If you have not modified your boot loader configuration, you should not need to do anything further.
With the next release of Debian GNU/Linux 7.0 (codenamed wheezy) some features will be deprecated. Users will need to migrate to other alternatives to prevent trouble when updating to 7.0.
This includes the following features:
OpenVZ and Linux-Vserver: Debian GNU/Linux 6.0 will be the last release to include Linux kernel virtualization featuresets outside of mainline. This means that the OpenVZ and Linux-Vserver featuresets should be considered deprecated, and users should migrate to linux-2.6 upstream merged virtualization solutions like KVM, Linux Containers or Xen.
The gdm
package (GNOME Display
Manager version 2.20) will be obsoleted by gdm3
, a rewritten version. See Phần 5.5, “Thay đổi và hỗ trợ môi trường GNOME” for more information.
Introducing several thousand new packages, squeeze also retires and omits more than four thousand old packages that were in lenny. It provides no upgrade path for these obsolete packages. While nothing prevents you from continuing to use an obsolete package where desired, the Debian project will usually discontinue security support for it a year after squeeze's release[10], và không phải thông thường cung cấp hỗ trợ khác nào đã ra đời. Khuyên quản trị thay thế mỗi gói như vậy bằng một gói xen kẽ sẵn sàng (nếu có).
Có rất nhiều lý do gói bị gỡ bỏ khỏi bản phát hành: gói đó không còn được duy trì lại bởi dự án gốc; không còn có lại một Nhà phát triển Debian quan tâm đến duy trì gói đó; chức năng được gói đó cung cấp đã bị thay thế bằng một gói phần mềm/phiên bản mới; hoặc gói đó không còn thích hợp lại với squeeze do lỗi nội bộ. Trong trường hợp cuối cùng, gói đó có thể vẫn còn nằm trong bản phân phối “bất định” (unstable).
Dễ phát hiện những gói nào “quá cũ” trong một hệ thống đã cập nhật, vì giao diện quản lý gói sẽ đánh dấu chúng một cách tương ứng. Trong aptitude, danh sách các gói như vậy được hiển thị dưới tiêu đề “Gói cũ và tạo cục bộ”. dselect cung cấp một danh sách tương tự mà có thể chứa nội dung khác.
Also, if you have used aptitude or
apt-get to manually install packages in lenny
it will have kept track of those packages you manually installed and will be
able to mark as obsolete those packages pulled in by dependencies alone
which are no longer needed if a package has been removed.
aptitude and apt
,
unlike deborphan, will not mark for removal packages that
you manually installed, as opposed to those that were automatically
installed through dependencies. To remove automatically installed packages
that are no longer used, run:
# apt-get autoremove
Cũng có công cụ bổ sung để tìm các gói quá cũ,
v.d. deborphan, debfoster hay
cruft. deborphan rất khuyến khích, dù
trong chế độ mặc định nó chỉ thông báo các thư viện quá cũ : những gói trong
phần thư viện “libs
” hay phần thư viện cũ
“oldlibs
” mà không dùng bởi gói khác
nhau. Không nên mù quáng gỡ bỏ những gói được tìm bởi công cụ như vậy, đặc
biệt nếu phần mềm sử dụng tùy chọn khác mặc định cũng năng nổ mà có khuynh
hướng xuất kết quả dương giả. Rất khuyên người dùng tự xem lại những gói đề
xuất gỡ bỏ (tức là nội dung, kích cỡ và mô tả về mỗi gói) trước khi thật sự
gỡ bỏ chúng.
Hệ thống Theo dõi Lỗi Debian thường cung cấp thông tin bổ sung về lý do gỡ bỏ một gói nào đó. Khuyên người dùng xem lại cả hai những báo cáo lỗi được lưu trữ về gói chính nó, và những báo cáo lỗi được lưu trữ về gói-giả ftp.debian.org.
The list of obsolete packages includes:
The plone
content management
suite. This has been done on request by the developers to use the Unified
Installer for Linux, which they consider their only supported deployment
platform. The recommended tool for installing Plone on a Debian GNU/Linux system is
the Unified Installer, available for download from http://plone.org/
nessus
, the vulnerability scanning
server and its associated libraries and other software. It has been
deprecated in favor of the software provided by OpenVAS which includes
openvas-server
and openvas-client
. As there is no automatic upgrade
path you will have to install OpenVAS and manually move over your Nessus
service configuration (users, certificates, etc.) to OpenVAS.
Java 5 software including the packages sun-java5-jre
and sun-java5-bin
, successor is Java 6: sun-java6-jre
and associated packages.
apt-proxy
is no longer provided,
alternatives to this tool include apt-cacher-ng
, apt-cacher
and approx
. Although no automatic upgrade path
exists, user of apt-proxy
can switch
to these alternatives by manually installing any of these packages.
Some of Xorg's video drivers are no longer available in squeeze and
are obsolete. This includes xserver-xorg-video-cyrix
, xserver-xorg-video-i810
, xserver-xorg-video-imstt
, xserver-xorg-video-nsc
, xserver-xorg-video-sunbw2
, and xserver-xorg-video-vga
. They might be removed
through the upgrade. Users should install xserver-xorg-video-all
instead.
The utility used in lenny to display a splash image at boot time,
usplash
, is no longer available. It
has been replaced by plymouth
.
Một số gọi nào đó từ lenny đã bị chia ra vài gọi khác nhau trong squeeze, thường để cải tiến khả năng bảo tồn hệ thống. Để làm dễ dàng đường dẫn nâng cấp trong các trường hợp như vậy, squeeze thường cung cấp các gói “giả”: gói trống cùng tên với gói cũ trong lenny với quan hệ phụ thuộc mà gây ra cài đặt gói mới. Sau khi nâng cấp, các gói “giả” được thấy là quá cũ thì có thể được gỡ bỏ an toàn.
Most (but not all) dummy packages' descriptions indicate their purpose.
Package descriptions for dummy packages are not uniform, however, so you
might also find deborphan with the
--guess-
options (e.g.
*
--guess-dummy
) useful to detect them in your system.
Note that some dummy packages are not intended to be removed after an
upgrade but are, instead, used to keep track of the current available
version of a program over time.
[4] If the debconf priority is set to a very high level you might prevent configuration prompts, but services that rely on default answers that are not applicable to your system will fail to start.
[5] For example: DNS or DHCP services, specially when there is no redundancy or failover. In the DHCP case end-users might be disconnected from the network if the lease time is lower than the time it takes for the upgrade process to complete.
[6] Cũng có thể tắt tính năng này bằng cách thêm tham số
panic=0
vào các tham số khởi động.
[7] Hệ thống quản lý gói Debian bình thường không cho phép Gói 1 gỡ bỏ hoặc thay thế một tập tin thuộc về Gói 2, nếu nó chưa xác định để thay thế Gói 2.
[8] There are also known incompatibilities between the old kernel and the new
udev
. If you find issues after the
reboot with the new kernel you will have to downgrade the udev
in order to use the old one.
[9] Some devices, such as those used by crypt, RAID or LVM have stable non-UUID identifiers. In these cases you should use the name of the devices, which are already unambiguous and stable.
[10] Hoặc miễn là không có bản phát hành nữa trong khoảng thời gian đó. Bình thường chỉ hai bản phát hành ổn định được hỗ trợ nhau vào một lúc nào đó.