توی این دو روز گذشته یکی از package های خیلی مهم سیستم عامل FreeBSD به نام gettext به نسخه جدید ارتقا پیدا کرده است . این package توسط تعدا د زیادی فایل مانند PHP و هر آنچه مربوط به PHP می باشد مورد استفاده قرار می گیرد و خیلی از برنامه ها مانند BASH نیز با ابن package کار می کنند . حال اگر شما این package را به نسخه جدید upgrade کنید ولی بقیه برنامه ها را که به این package وابسته است upgrade نکنید این برنامه ها کار نخواهند کرد و سیستم شما break می شود .
از اینرو برای اینکه مشکلی پیش نیاید به نکات زیر توجه کنید:
۱- فعلا از upgrade بسته gettext تا دو یا سه روز و یا بیشتر جلوگیری کنید تا تمام بسته هایی که به gettext ربط دارند برای upgrade آماده شوند و این زمان بستگی به port نویس ها دارد.
۲- اگر مدیریت یک server را به عهده دارید و شل یوزر root را که به صورت پیش فرض csh است به bash تغییر داده اید .قبل از upgrade بسته gettext آن را به csh بر گردانید . چون اگر در هنگام upgrade بسته gettext و bash که از آن استفاده می کنید به مشکل برخورد کردید و bash به نسخه جدید تر upgrade نشد . برای مدتی bash را از دست داده اید و به اصطلاح شل شما که bash است break شده است و دیگر یوزر root دارای شل نمی باشد . فرض کنید شما برای ارتباط به server از ssh استفاده می کنید و شل یوزر root شما bash است و در اثر upgrade ناقص gettext و bash شل شما که bash خراب شده . در این حالت چی کار می کنید . به راحتی نمی توانید ssh کنید و برای همیشه ارتباط با server را از دست می دهید . پس حتما اگر از bash به عنوان شل استفاده می کنید آن را به csh یا zsh یا هر چیز دیگری که دوست دارید تغییر دهید تا مشکلی برای شما پیش نیاید .
۳- بعد از چند روز آینده اول بسته gettext را با استفاده از دستور زیر
# portmaster -D -u gettext
upgrade کنید و سپس حتما با دستور زیر
# portmaster -D -r gettext
تمام بسته هایی را که به gettext ربط دارد و به اصطلاح dependency است upgrade کنید . اگر به مشکل بر خورد کردید نگران نشده و کار را از نوع آغاز کنید . در حین upgrade بسته gettext و تمام dependency های این بسته از reset یا reboot سیستم جدا خود داری کنید . اگر سیستم reboot شد احتمال آسیب دیدن سیستم شما زیاد است .
هیچ بسته ا ی را به تنهایی upgrade نکنید و حتما از دستور بالا استفاده کنید.