24.2 FreeBSD ¸üÐÂ

Written by Tom Rhodes. Based on notes provided by Colin Percival.

¡¡¡¡´ò°²È«²¹¶¡ÊǶÔÓÚά»¤¼ÆËã»úÈí¼þµÄÒ»¸öÖØÒª²¿·Ö£¬ ÌØ±ðÊǶÔÓÚ²Ù×÷ϵͳ¡£¶ÔÓÚ FreeBSD À´Ëµ£¬ ºÜ³¤µÄÒ»¶Îʱ¼äÒÔÀ´Õâ¶¼²»ÊÇÒ»¼þÈÝÒ×µÄÊÂÇé¡£ ²¹¶¡´òÔÚÔ´´úÂëÉÏ£¬´úÂëÐèÒª±»ÖØÐ±àÒëΪ¶þ½øÖÆ£¬ È»ºóÔÙÖØÐ°²×°±àÒëºóµÄ³ÌÐò¡£

¡¡¡¡FreeBSD ÒýÈëÁË freebsd-update ¹¤¾ßÖ®ºóÕâ±ã²»ÔÙÊÇÎÊÌâÁË¡£Õâ¸ö¹¤¾ßÌṩÁË 2 ÖÖ¹¦ÄÜ¡£ µÚÒ»£¬Ëü¿ÉÒ԰Ѷþ½øÖƵݲȫºÍ¿±Îó¸üÐÂÖ±½ÓÓ¦ÓÃÓÚ FreeBSD µÄ»ù±¾ÏµÍ³£¬¶ø²»ÐèÒªÖØÐ±àÒëºÍ°²×°¡£µÚ¶þ£¬ Õâ¸ö¹¤¾ß»¹Ö§³ÖÖ÷Òª¸ú´ÎÒªµÄ·¢ÐаæµÄÉý¼¶¡£

×¢Òâ: Óɰ²È«Ð¡×éÖ§³ÖµÄ¸÷ÖÖÌåϵ½á¹¹ºÍ·¢Ðа涼¿ÉʹÓöþ½øÖƸüС£ ÔÚÉý¼¶µ½Ò»¸öеķ¢Ðа汾֮ǰ£¬ Ó¦ÏÈÔĶÁһϵ±Ç°·¢ÐаæµÄÉùÃ÷£¬ ÒòΪËüÃÇ¿ÉÄܰüº¬ÓйØÓÚÄãÆÚÍûÉý¼¶°æ±¾µÄÖØÒªÏûÏ¢¡£ ÕâЩ·¢ÐÐÉùÃ÷¿ÉÒÔͨ¹ýÒÔÏÂÁ´½Ó²éÔÄ£º http://www.FreeBSD.org/releases/¡£

¡¡¡¡Èç¹û crontab ÖдæÔÚÓÐÓõ½ freebsd-update ÌØÐԵIJ¿·Ö£¬ ÄÇôÕâЩÔÚ¿ªÊ¼ÒÔϲÙ×÷ǰ±ØÐëÏȱ»½ûÖ¹¡£

24.2.1 ÅäÖÃÎļþ

¡¡¡¡ÓÐЩÓû§¿ÉÄÜÏ£Íûͨ¹ýµ÷ÕûÅäÖÃÎļþ /etc/freebsd-update.conf ÖеÄĬÈÏÅäÖÃÀ´¸üºÃµØ¿ØÖÆÉý¼¶µÄ¹ý³Ì¡£ ¿ÉÓõIJÎÊýÔÚÎĵµÖнéÉܵĺÜÏêϸ£¬ µ«ÏÂÃæµÄÕâЩ¿ÉÄÜÐèÒª½øÒ»²½µÄ½âÊÍ£º

# Components of the base system which should be kept updated.
Components src world kernel

¡¡¡¡Õâ¸ö²ÎÊýÊÇ¿ØÖÆ FreeBSD µÄÄÄÒ»²¿·Ö½«±»±£³Ö¸üС£ ĬÈϵÄÊǸüÐÂÔ´´úÂ룬Õû¸ö»ù±¾ÏµÍ³»¹ÓÐÄںˡ£ ÕâЩ²¿¼þ¸ú°²×°Ê±µÄÄÇЩÏàͬ£¬¾ÙÀýÀ´Ëµ£¬ ÔÚÕâÀï¼ÓÈë world/games ¾Í»áÔÊÐí´òÈëÓÎÏ·Ïà¹ØµÄ²¹¶¡¡£ ʹÓà src/bin ÔòÊÇÔÊÐí¸üРsrc/bin Ŀ¼ÖеÄÔ´´úÂë¡£

¡¡¡¡×îºÃµÄÑ¡ÔñÊǰÑÕâ¸öÑ¡Ïî±£ÁôΪĬÈÏÖµ£¬ ÒòΪÈç¹ûÒªÐÞ¸ÄËüÈ¥°üº¬Ò»Ð©Ö¸¶¨µÄÑ¡Ï ¾ÍÐèÒªÓû§Áгöÿһ¸öÏëÒª¸üеÄÏîÄ¿¡£ Õâ¿ÉÄÜ»áÒýÆð¿Éŵĺó¹û£¬ ÒòΪ²¿·ÖµÄÔ´´úÂëºÍ¶þ½øÖƳÌÐòµÃ²»µ½Í¬²½¡£

# Paths which start with anything matching an entry in an IgnorePaths
# statement will be ignored.
IgnorePaths

¡¡¡¡Ìí¼Ó·¾¶£¬±ÈÈç /bin »òÕß /sbin ÈÃÕâЩָ¶¨µÄĿ¼ÔÚ¸üйý³ÌÖв»±»Ð޸ġ£ Õâ¸öÑ¡ÏîÄܹ»·ÀÖ¹±¾µØµÄÐ޸ı» freebsd-update ¸²¸Ç¡£

# Paths which start with anything matching an entry in an UpdateIfUnmodified
# statement will only be updated if the contents of the file have not been
# modified by the user (unless changes are merged; see below).
UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile

¡¡¡¡¸üÐÂÖ¸¶¨Ä¿Â¼ÖеÄδ±»Ð޸ĵÄÅäÖÃÎļþ¡£ Óû§µÄÈκÎÐ޸ͼ»áʹÕâЩÎļþµÄ×Ô¶¯¸üÐÂʧЧ¡£ »¹ÓÐÁíÍâÒ»¸öÑ¡Ï KeepModifiedMetadata£¬ Õâ¸öÄÜÈà freebsd-update Ôںϲ¢Ê±±£´æÐ޸ġ£

# When upgrading to a new FreeBSD release, files which match MergeChanges
# will have any local changes merged into the version from the new release.
MergeChanges /etc/ /var/named/etc/

¡¡¡¡Ò»¸ö freebsd-update Ó¦¸Ã³¢ÊԺϲ¢µÄÅäÖÃÎļþµÄÁÐ±í¡£ÎļþºÏ²¢µÄ¹ý³ÌÊÇ Ò»ÏµÁÐµÄ diff(1) ²¹¶¡ÀàËÆÓÚ¸üÉÙÑ¡ÏîµÄ mergemaster(8) ºÏ²¢µÄÑ¡ÏîÊǽÓÊÜ£¬´ò¿ªÒ»¸öÎı¾±à¼­Æ÷£¬»òÕß freebsd-update »á±»ÖÐÖ¹¡£ ÔÚ²»ÄÜÈ·¶¨µÄʱºò£¬ÇëÏȱ¸·Ý /etc È»ºó½ÓÊܺϲ¢¡£¸ü¶à¹ØÓÚ mergemaster µÄÐÅÏ¢Çë²ÎÔÄ µÚ 24.7.11.1 ½Ú¡£

# Directory in which to store downloaded updates and temporary
# files used by FreeBSD Update.
# WorkDir /var/db/freebsd-update

¡¡¡¡Õâ¸öĿ¼ÊÇ·ÅÖÃËùÓв¹¶¡ºÍÁÙʱÎļþµÄ¡£ Óû§×öÒ»¸ö°æ±¾Éý¼¶µÄ»°£¬ÇëÈ·ÈÏ´Ë´¦ÖÁÉÙÓÐ 1 GB µÄ¿ÉÓôÅÅ̿ռ䡣

# When upgrading between releases, should the list of Components be
# read strictly (StrictComponents yes) or merely as a list of components
# which *might* be installed of which FreeBSD Update should figure out
# which actually are installed and upgrade those (StrictComponents no)?
# StrictComponents no

¡¡¡¡µ±ÉèÖÃ³É yes ʱ£¬ freebsd-update ½«¼ÙÉèÕâ¸ö Components ÁбíʱÍêÕûµÄ£¬ ²¢ÇÒ¶Ô´ËÁбíÒÔÍâµÄÏîÄ¿²»»áÐ޸ġ£Êµ¼ÊÉϾÍÊÇ freebsd-update »á³¢ÊÔ¸üРComponets ÁбíÀïµÄÿһ¸öÎļþ¡£

24.2.2 °²È«²¹¶¡

¡¡¡¡°²È«²¹¶¡´æ´¢ÔÚÔ¶³ÌµÄ»úÆ÷ÉÏ£¬ ¿ÉÒÔʹÓÃÈçϵÄÃüÁîÏÂÔØ²¢°²×°£º

# freebsd-update fetch
# freebsd-update install

¡¡¡¡Èç¹û¸øÄں˴òÁ˲¹¶¡£¬ÄÇôϵͳÐèÒªÖØÐÂÆô¶¯¡£ Èç¹ûÒ»Çж¼½øÕ¹Ë³Àû£¬ÏµÍ³¾ÍÓ¦¸Ã±»´òºÃÁ˲¹¶¡¶øÇÒ freebsd-update ¿ÉÓÉÒ¹¼ä cron(8) Ö´ÐС£ÔÚ /etc/crontab ÖмÓÈëÒÔÏÂÌõÄ¿×ãÒÔÍê³ÉÕâÏîÈÎÎñ£º

@daily                                  root    freebsd-update cron

¡¡¡¡ÕâÌõ¼Ç¼ÊÇ˵Ã÷ÿÌìÔËÐÐÒ»´Î freebsd-update ¹¤¾ß¡£ ÓÃÕâÖÖ·½·¨£¬ ʹÓÃÁË cron ²ÎÊý£¬ freebsd-update ½ö¼ì²éÊÇ·ñ´æÔÚ¸üС£ Èç¹ûÓÐÁËеIJ¹¶¡£¬¾Í»á×Ô¶¯ÏÂÔØµ½±¾µØµÄ´ÅÅÌ£¬ µ«²»»á×Ô¶¯¸øÏµÍ³´òÉÏ¡£root »áÊÕµ½Ò»·âµç×ÓÓʼþ¸æÖªÐèÊÖ¶¯°²×°²¹¶¡¡£

¡¡¡¡Èç¹û³öÏÖÁË´íÎ󣬿ÉÒÔʹÓÃÏÂÃæµÄ freebsd-update ÃüÁî»ØÍ˵½ÉÏÒ»´ÎµÄÐ޸ģº

# freebsd-update rollback

¡¡¡¡Íê³ÉÒÔºóÈç¹ûÄں˻òÈκεÄÄÚºËÄ£¿é±»Ð޸ĵϰ£¬ ¾ÍÐèÒªÖØÐÂÆô¶¯ÏµÍ³¡£Õ⽫ʹ FreeBSD ×°ÔØÐµĶþ½øÖƳÌÐò½øÄÚ´æ¡£

¡¡¡¡freebsd-update ¹¤¾ßÖ»ÄÜ×Ô¶¯¸üРGENERIC Äںˡ£ Èç¹ûÄúʹÓÃ×ÔÐÐÁª±àµÄÄںˣ¬ ÔòÔÚ freebsd-update °²×°Íê¸üÐÂµÄÆäÓಿ·ÖÖ®ºóÐèÒªÊÖ¹¤ÖØÐÂÁª±àºÍ°²×°Äںˡ£ ²»¹ý£¬ freebsd-update »á¼ì²â²¢¸üÐÂλÓÚ /boot/GENERIC (Èç¹û´æÔÚ) ÖÐµÄ GENERIC Äںˣ¬ ¼´Ê¹Ëü²»Êǵ±Ç° (ÕýÔÚÔËÐеÄ) ϵͳµÄÄںˡ£

×¢Òâ: ±£´æÒ»·Ý GENERIC Äں˵ĸ±±¾µ½ /boot/GENERIC ÊÇÒ»¸öÃ÷ÖǵÄÖ÷Òâ¡£ ÔÚÕï¶ÏÐí¶àÎÊÌ⣬ ÒÔ¼°ÔÚ µÚ 24.2.3 ½Ú ÖнéÉܵÄʹÓà freebsd-update ¸üÐÂϵͳʱ»áºÜÓÐÓá£

¡¡¡¡³ý·ÇÐÞ¸ÄλÓÚ /etc/freebsd-update.conf ÖеÄÅäÖ㬠freebsd-update »áËæÆäËû°²×°Ò»Æð¶ÔÄں˵ÄÔ´´úÂë½øÐиüС£ ÖØÐÂÁª±à²¢°²×°¶¨ÖƵÄÄں˿ÉÒÔÒÔͨ³£µÄ·½Ê½À´½øÐС£

×¢Òâ: ͨ¹ý freebsd-update ·¢²¼µÄ¸üÐÂÓÐʱ²¢²»»áÉæ¼°Äںˡ£ Èç¹ûÔÚÖ´ÐÐ freebsd-update install µÄ¹ý³ÌÖÐÄں˴úÂëûÓнøÐб䶯£¬ ¾ÍûÓбØÒªÖØÐÂÁª±àÄÚºËÁË¡£ ²»¹ý£¬ ÓÉÓÚ freebsd-update ÿ´Î¶¼»á¸üР/usr/src/sys/conf/newvers.sh Îļþ£¬ ¶øÐÞ¶©°æ±¾ (uname -r ±¨¸æµÄ -p Êý×Ö) À´×ÔÕâ¸öÎļþ£¬ Òò´Ë£¬ ¼´Ê¹ÄÚºËûÓз¢Éú±ä»¯£¬ ÖØÐÂÁª±àÄÚºËÒ²¿ÉÒÔÈà uname(1) ±¨¸æ×¼È·µÄÐÞ¶©°æ±¾¡£ ÔÚά»¤Ðí¶àϵͳʱÕâÑù×ö»á±È½ÏÓаïÖú£¬ ÒòΪÕâÒ»ÐÅÏ¢¿ÉÒÔѸËÙ·´Ó³»úÆ÷Éϰ²×°µÄÈí¼þ¸üÐÂÇé¿ö¡£

24.2.3 ÖØ´óºÍ´ÎÒªµÄ¸üÐÂ

¡¡¡¡Õâ¸ö¹ý³Ì»áɾ³ý¾ÉµÄÄ¿±êÎļþºÍ¿â£¬ Õ⽫ʹ´ó²¿·ÖµÄµÚÈý·½Ó¦ÓóÌÐòÎÞ·¨É¾³ý¡£ ½¨Ò齫ËùÓа²×°µÄ ports ÏÈɾ³ýÈ»ºóÖØÐ°²×°£¬»òÕßÉÔºóʹÓà ports-mgmt/portupgrade ¹¤¾ßÉý¼¶¡£ ´ó¶àÊýÓû§½«»áʹÓÃÈçÏÂÃüÁî³¢ÊÔ±àÒ룺

# portupgrade -af

¡¡¡¡Õ⽫ȷ±£ËùÓеĶ«Î÷¶¼»á±»ÕýÈ·µÄÖØÐ°²×°¡£ Çë×¢Òâ»·¾³±äÁ¿ BATCH ÉèÖÃ³É yes µÄ»°½«ÔÚÕû¸ö¹ý³ÌÖжÔËùÓÐѯÎʻشð yes£¬Õâ»á°ïÖúÔÚ±àÒë¹ý³ÌÖÐÃâÈ¥È˹¤µÄ½éÈë¡£

¡¡¡¡Èç¹ûÕýÔÚʹÓõÄÊǶ¨ÖƵÄÄںˣ¬ ÔòÉý¼¶²Ù×÷»á¸´ÔÓһЩ¡£ Äú»áÐèÒª½«Ò»·Ý GENERIC Äں˵ĸ±±¾·Åµ½ /boot/GENERIC¡£ Èç¹ûϵͳÖÐûÓÐ GENERIC Äںˣ¬ ¿ÉÒÔÓÃÒÔÏÂÁ½ÖÖ·½·¨Ö®Ò»À´°²×°£º

¡¡¡¡ÉÏÊö²½Öè²¢²»ÐèҪʹÓÃÕâ¸ö GENERIC ÄÚºËÀ´Òýµ¼ÏµÍ³¡£

¡¡¡¡ÖØ´óºÍ´ÎÒªµÄ¸üпÉÒÔÓÉ freebsd-update ÃüÁîºóÖ¸¶¨Ò»¸ö·¢Ðа汾À´Ö´ÐУ¬ ¾ÙÀýÀ´Ëµ£¬ÏÂÃæµÄÃüÁ°ïÖúÄãÉý¼¶µ½ FreeBSD 8.1£º

# freebsd-update -r 8.1-RELEASE upgrade

¡¡¡¡ÔÚÖ´ÐÐÕâ¸öÃüÁîÖ®ºó£¬freebsd-update ½«»áÏȽâÎöÅäÖÃÎļþºÍÆÀ¹Àµ±Ç°µÄϵͳÒÔ»ñµÃ¸üÐÂϵͳËùÐèµÄ±ØÒªÐÅÏ¢¡£ È»ºó±ã»áÏÔʾ³öÒ»¸ö°üº¬ÁËÒѼì²âµ½Óëδ¼ì²âµ½µÄ×é¼þÁÐ±í¡£ ÀýÈ磺

Looking up update.FreeBSD.org mirrors... 1 mirrors found.
Fetching metadata signature for 8.0-RELEASE from update1.FreeBSD.org... done.
Fetching metadata index... done.
Inspecting system... done.

The following components of FreeBSD seem to be installed:
kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games
src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
world/base world/info world/lib32 world/manpages

The following components of FreeBSD do not seem to be installed:
kernel/generic world/catpages world/dict world/doc world/games
world/proflibs

Does this look reasonable (y/n)? y

¡¡¡¡´Ëʱ£¬freebsd-update ½«»á³¢ÊÔÏÂÔØËùÓÐÉý¼¶ËùÐèµÄÎļþ¡£ÔÚijЩÇé¿öÏ£¬ Óû§¿ÉÄܱ»Îʼ°Ð谲װЩʲôºÍÈçºÎ½øÐÐÖ®ÀàµÄÎÊÌâ¡£

¡¡¡¡

¡¡¡¡µ±Ê¹Óö¨ÖÆÄÚºËʱ£¬ Ç°ÃæµÄ²½Öè»á²úÉúÀàËÆÏÂÃæµÄ¾¯¸æ£º

WARNING: This system is running a "MYKERNEL" kernel, which is not a
kernel configuration distributed as part of FreeBSD 8.0-RELEASE.
This kernel will not be updated: you MUST update the kernel manually
before running "/usr/sbin/freebsd-update install"

¡¡¡¡´ËʱÄú¿ÉÒÔÔÝʱ°²È«µØÎÞÊÓÕâ¸ö¾¯¸æ¡£ ¸üÐ嵀 GENERIC Äں˽«ÔÚÉý¼¶¹ý³ÌµÄÖм䲽ÖèÖÐʹÓá£

¡¡¡¡ÔÚÏÂÔØÍêÕë¶Ô±¾µØÏµÍ³µÄ²¹¶¡Ö®ºó£¬ ÕâЩ²¹¶¡»á±»Ó¦Óõ½ÏµÍ³ÉÏ¡£ Õâ¸ö¹ý³ÌÐèÒªÏûºÄµÄʱ¼äÈ¡¾öÓÚ»úÆ÷µÄËÙ¶ÈºÍÆä¸ºÔØ¡£ Õâ¸ö¹ý³ÌÖн«»á¶ÔÅäÖÃÎļþËù×öµÄ±ä¶¯½øÐкϲ¢ ©¤©¤ ÕâÒ»²¿·ÖÐèÒªÓû§µÄ²ÎÓ룬 Îļþ¿ÉÄÜ»á×Ô¶¯ºÏ²¢£¬ ÆÁÄ»ÉÏÒ²¿ÉÄÜ»á¸ø³öÒ»¸ö±à¼­Æ÷£¬ ÓÃÓÚÊÖ¹¤Íê³ÉºÏ²¢²Ù×÷¡£ ÔÚ´¦Àí¹ý³ÌÖУ¬ ºÏ²¢³É¹¦µÄ½á¹û»áÏÔʾ¸øÓû§¡£ ʧ°Ü»ò±»ºöÂԵĺϲ¢£¬ Ôò»áµ¼ÖÂÕâÒ»¹ý³ÌµÄÖÕÖ¹¡£ Óû§¿ÉÄÜ»áÏ£Íû±¸·ÝÒ»·Ý /etc ²¢ÔÚÕâÖ®ºóÊÖ¹¤ºÏ²¢ÖØÒªµÄÎļþ£¬ ÀýÈç master.passwd ºÍ group¡£

×¢Òâ: ϵͳÖÁ´Ë»¹Ã»Óб»Ð޸ģ¬ËùÓеIJ¹¶¡ºÍºÏ²¢¶¼ÔÚÁíÍâÒ»¸öĿ¼ÖнøÐС£ µ±ËùÓеIJ¹¶¡¶¼±»³É¹¦µÄ´òÉÏÁËÒÔºó£¬ËùÓеÄÅäÖÃÎļþ¶¼±»ºÏ²¢ºó£¬ ÎÒÃǾÍÒѾ­Íê³ÉÁËÕû¸öÉý¼¶¹ý³ÌÖÐ×îÀ§ÄѵIJ¿·Ö£¬ ÏÂÃæ¾ÍÐèÒªÓû§À´°²×°ÕâЩ±ä¸üÁË¡£

¡¡¡¡Ò»µ©Õâ¸ö²½ÖèÍê³Éºó£¬Ê¹ÓÃÈçϵÄÃüÁÉý¼¶ºóµÄÎļþ°²×°µ½´ÅÅÌÉÏ¡£

# freebsd-update install

¡¡¡¡Äں˺ÍÄÚºËÄ£¿é»áÊ×Ïȱ»´òÉϲ¹¶¡¡£ ´Ëʱ±ØÐëÖØÐÂÆô¶¯¼ÆËã»ú¡£ Èç¹ûÄúʹÓõÄÊǶ¨ÖƵÄÄںˣ¬ ÇëʹÓà nextboot(8) ÃüÁîÀ´½«ÏÂÒ»´ÎÓÃÓÚÒýµ¼ÏµÍ³µÄÄÚºË /boot/GENERIC (Ëü»á±»¸üÐÂ)£º

# nextboot -k GENERIC

¾¯¸æ: ÔÚʹÓà GENERIC ÄÚºËÆô¶¯Ö®Ç°£¬ ÇëÈ·ÐÅËü°üº¬ÁËÓÃÓÚÒýµ¼ÏµÍ³ËùÐèµÄÈ«²¿Çý¶¯³ÌÐò (Èç¹ûÄúÊÇÔÚÔ¶³Ì½øÐÐÉý¼¶²Ù×÷£¬ »¹Ó¦È·ÐÅÍø¿¨Çý¶¯Ò²ÊÇ´æÔÚµÄ)¡£ ÌØ±ðҪעÒâµÄÇéÐÎÊÇ£¬ Èç¹û֮ǰµÄÄÚºËÖо²Ì¬Áª±àÁËͨ³£ÒÔÄÚºËÄ£¿éÐÎʽ´æÔÚµÄÇý¶¯³ÌÐò£¬ Ò»¶¨ÒªÍ¨¹ý /boot/loader.conf »úÖÆÀ´½«ÕâЩģ¿é¼ÓÔØµ½ GENERIC Äں˵Ļù´¡ÉÏ¡£ ´ËÍ⣬ Äú¿ÉÄÜҲϣÍûÁÙʱȡÏû²»ÖØÒªµÄ·þÎñ¡¢ ´ÅÅ̺ÍÍøÂç¹ÒÔØµÈµÈ£¬ Ö±µ½Éý¼¶¹ý³ÌÍê³ÉΪֹ¡£

¡¡¡¡ÏÖÔÚ¿ÉÒÔÓøüкóµÄÄÚºËÒýµ¼ÏµÍ³ÁË£º

# shutdown -r now

¡¡¡¡ÔÚÏµÍ³ÖØÐÂÉÏÏߺó£¬ÐèÒªÔÙ´ÎÔËÐÐ freebsd-update¡£ Éý¼¶µÄ״̬±»±£´æ×Å£¬ÕâÑù freebsd-update ¾ÍÎÞÐèÖØÍ·¿ªÊ¼£¬µ«ÊÇ»áɾ³ýËùÓоɵĹ²Ïí¿âºÍÄ¿±êÎļþ¡£ Ö´ÐÐÈçÏÂÃüÁî¼ÌÐøÕâ¸ö½×¶ÎµÄÉý¼¶£º

# freebsd-update install

×¢Òâ: È¡¾öÓëÊÇ·ñÓпâµÄ°æ±¾¸üУ¬Í¨³£Ö»ÓÐ 2 ¸ö¶ø²»ÊÇ 3 ¸ö°²×°½×¶Î¡£

¡¡¡¡ÏÖÔÚÐèÒªÖØÐ±àÒëºÍ°²×°µÚÈý·½Èí¼þ¡£ Õâô×öµÄÔ­ÒòÊÇijЩÒѰ²×°µÄÈí¼þ¿ÉÄÜÒÀÀµÓÚÔÚÉý¼¶¹ý³ÌÖÐÒÑɾ³ýµÄ¿â¡£ ¿ÉʹÓà ports-mgmt/portupgrade ×Ô¶¯»¯Õâ¸ö²½Ö裬ÒÔÈçϵÄÃüÁʼ£º

# portupgrade -f ruby
# rm /var/db/pkg/pkgdb.db
# portupgrade -f ruby18-bdb
# rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db
# portupgrade -af

¡¡¡¡Ò»µ©Õâ¸öÍê³ÉÁËÒÔºó£¬ÔÙ×îºóÒ»´ÎÔËÐÐ freebsd-update À´½áÊøÉý¼¶¹ý³Ì¡£ Ö´ÐÐÈçÏÂÃüÁî´¦ÀíÉý¼¶ÖеÄËùÓÐϸ½Ú£º

# freebsd-update install

¡¡¡¡Èç¹ûÄúÁÙʱÓùý GENERIC ÄÚºËÀ´Òýµ¼ÏµÍ³£¬ ÏÖÔÚÊǰ´ÕÕͨ³£µÄ·½·¨ÖØÐÂÁª±à²¢°²×°ÐµĶ¨ÖÆÄں˵ÄʱºòÁË¡£

¡¡¡¡ÖØÐÂÆô¶¯»úÆ÷½øÈëа汾µÄ FreeBSD Éý¼¶¹ý³ÌÖÁ´Ë¾ÍÍê³ÉÁË¡£

24.2.4 ϵͳ״̬¶ÔÕÕ

¡¡¡¡freebsd-update ¹¤¾ßÒ²¿É±»ÓÃÀ´¶Ô×ÅÒ»¸öÒÑÖªÍêºÃµÄ FreeBSD ¿½±´²âÊÔµ±Ç°µÄ°æ±¾¡£ Õâ¸öÑ¡ÏîÆÀ¹Àµ±Ç°µÄϵͳ¹¤¾ß£¬¿âºÍÅäÖÃÎļþ¡£ ʹÓÃÒÔϵÄÃüÁʼ¶ÔÕÕ£º

# freebsd-update IDS >> outfile.ids

¾¯¸æ: Õâ¸öÃüÁîµÄÃû³ÆÊÇ IDS£¬ Ëü²¢²»ÊÇÒ»¸öÏñ security/snort ÕâÑùµÄÈëÇÖ¼ì²âϵͳµÄÌæ´úÆ·¡£ÒòΪ freebsd-update ÔÚ´ÅÅÌÉÏ´æ´¢Êý¾Ý£¬ ºÜÏÔÈ»ËüÃÇÓб»´Û¸ÄµÄ¿ÉÄÜ¡£ µ±È»Ò²¿ÉÒÔʹÓÃһЩ·½·¨À´½µµÍ±»´Û¸ÄµÄ¿ÉÄÜÐÔ£¬±ÈÈçÉèÖà kern.securelevel ºÍ²»Ê¹ÓÃʱ°Ñ freebsd-update Êý¾Ý·ÅÔÚÖ»¶ÁÎļþϵͳÉÏ£¬ÀýÈç DVD »ò °²È«´æ·ÅµÄÍâÖà USB ´ÅÅÌÉÏ¡£

¡¡¡¡ÏÖÔÚϵͳ½«»á±»¼ì²é£¬Éú³ÉÒ»·Ý°üº¬ÁËÎļþºÍËüÃÇµÄ sha256(1) ¹þÏ£ÖµµÄÇåµ¥£¬ÒÑÖª·¢ÐаæÖеÄÖµÓ뵱ǰϵͳÖа²×°µÄÖµ½«»á±»´òÓ¡µ½ÆÁÄ»ÉÏ¡£ Õâ¾ÍÊÇΪʲôÊä³ö±»Ë͵½ÁË outfile.ids Îļþ¡£ Ëü¹ö¶¯µÄÌ«¿éÎÞ·¨ÓÃÈâÑÛ¶ÔÕÕ£¬¶øÇÒ»áºÜ¿ìÌîÂú¿ØÖÆÌ¨µÄ»º³åÇø¡£

¡¡¡¡Õâ¸öÎļþÖÐÓзdz£³¤µÄÐУ¬µ«Êä³öµÄ¸ñʽºÜÈÝÒ×·ÖÎö¡£ ¾ÙÀýÀ´Ëµ£¬Òª»ñµÃÒ»·ÝÓë·¢ÐаæÖв»Í¬¹þÏ£ÖµµÄÎļþÁÐ±í£¬ ÒÑ¿ÉʹÓÃÈçϵÄÃüÁ

# cat outfile.ids | awk '{ print $1 }' | more
/etc/master.passwd
/etc/motd
/etc/passwd
/etc/pf.conf

¡¡¡¡Õâ·ÝÊä³öʱɾ½ÚËõ¶ÌºóµÄ£¬ÆäʵÊÇÓиü¶àµÄÎļþ¡£ ÆäÖÐÓÐЩÎļþ²¢·ÇÈËΪÐ޸쬱ÈÈç /etc/passwd ±»ÐÞ¸ÄÊÇÒòΪÌí¼ÓÁËÓû§½øÏµÍ³¡£ÔÚijЩÇé¿öÏ£¬ »¹ÓÐÁíÍâµÄһЩÎļþ£¬ÖîÈçÄÚºËÄ£¿éÓë freebsd-update µÄ²»Í¬ÊÇÒòΪËüÃDZ»¸üйýÁË¡£ ΪÁËÖ¸¶¨µÄÎļþ»òĿ¼ÅųýÔÚÍ⣬°ÑËüÃǼӵ½ /etc/freebsd-update.conf µÄ IDSIgnorePaths Ñ¡ÏîÖС£

¡¡¡¡³ýÁËÇ°ÃæÌÖÂÛ¹ýµÄ²¿·ÖÖ®Í⣬ ÕâÒ²Äܱ»µ±×÷ÊǶÔÉý¼¶·½·¨µÄÏêϸ²¹³ä¡£

±¾ÎĵµºÍÆäËüÎĵµ¿É´ÓÕâÀïÏÂÔØ£ºftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Èç¹û¶ÔÓÚFreeBSDÓÐÎÊÌ⣬ÇëÏÈÔĶÁÎĵµ£¬Èç²»Äܽâ¾öÔÙÁªÏµ<questions@FreeBSD.org>.
¹ØÓÚ±¾ÎĵµµÄÎÊÌâÇë·¢ÐÅÁªÏµ <doc@FreeBSD.org>.