انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: نسخه های کرنل لینوکس  (دفعات بازدید: 1560 بار)

0 کاربر و 2 مهمان درحال مشاهده موضوع.

آفلاین Far7id

  • Jr. Member
  • *
  • ارسال: 92
  • جنسیت : پسر
نسخه های کرنل لینوکس
« : 29 اسفند 1396، 11:33 ب‌ظ »
درود. سال نو مبارک  ;)
اینکه همیشه دو نسخه از کرنل توی سیستم‌عامل نگه‌داری میشن دلیلش چیه؟
مثلا الان که آخرین نسخه کرنل رو دارم نسخه قبل از اون هم داخل فایل ها دارم و همیشه اینطور بوده.
دلیلش چیه؟

آفلاین nixoeen

  • ناظر انجمن
  • *
  • ارسال: 4866
  • جنسیت : پسر
  • masoft قدیم
پاسخ : نسخه های کرنل لینوکس
« پاسخ #1 : 01 فروردین 1397، 02:52 ق‌ظ »
نسخهٔ قدیمی‌تر رو می‌تونید پاک کنید. دلیلی که مستقیما جایگزین نمیشه اینه که هنوز در حال استفاده از اون کرنل (و مخلفاتش) هستید و بعد از ریست کردن سیستم می‌تونید مستقیما اون رو پاک کنید.

آفلاین M!lad

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1757
پاسخ : نسخه های کرنل لینوکس
« پاسخ #2 : 01 فروردین 1397، 04:55 ب‌ظ »
دلیلش این هست که اگر نسخه جدید که بهش بروز رسانی کردید با سیستم مشکل داشته باشه بتونید با نسخه قبلی سیستم رو بوت کنید. فرضا Debian فقط یک نسخه رو نگه می‌داره.
..I feel no fault for the fault I feel..

آفلاین سلمان م.

  • ناظر انجمن
  • *
  • ارسال: 4106
  • جنسیت : پسر
  • GNU Operating System - سیستم عامل گنو
پاسخ : نسخه های کرنل لینوکس
« پاسخ #3 : 01 فروردین 1397، 06:26 ب‌ظ »
فرضا Debian فقط یک نسخه رو نگه می‌داره.
به صورت پیش‌فرض، دبیان فقط یک نسخه قدیمی رو نگه می‌داره، یعنی در مجموع دو تا لینوکس روی سیستم نصب هست، که همیشه به صورت خودکار با آخرین نسخه بوت می‌شه و اون یکی رو در صورت تمایل می‌شه توی گراب انتخاب کرد تا با اون سیستم بالا بیاد.

برای دیدن اینکه در حال حاضر چه نسخه‌هایی از لینوکس روی سیستم نصب هست می‌شه توی دیرکتوری boot رو دید:

$ ls /boot | grep vmlinuz

آفلاین bed123derkelo

  • High Sr. Member
  • *
  • ارسال: 658
  • جنسیت : پسر
پاسخ : نسخه های کرنل لینوکس
« پاسخ #4 : 01 فروردین 1397، 09:01 ب‌ظ »
باسلام
ممنون از پاسخهایی که به دوستمون دادید.

من از دبیان پایدار استفاده میکنم بخاطر اینکه خودم کانفیگش کردم برنامه های مشخصی نصب کردم خیلی اهل ور رفتن به سیستم نیستم وقتی داره خوب کار میکنه مشکلی نداره چیزی تغییر نمیدم.فقط هر چند هفته ۱ بار بروز رسانی میکنم.
دستور زیر دوتا نسخه کرنل نشون میده احتیاجی به پاک کردن هست؟برای بوت شدن با آخرین نسخه کاری باید انجام بدم؟آیا مشکلی به وجود نمیاد؟
اصلا چقدر ضروری هست این کار؟
hashem@Hashem-Thinkpad-Edge-E530:~$ ls /boot | grep vmlinuz
vmlinuz-4.9.0-3-amd64
vmlinuz-4.9.0-6-amd64
hashem@Hashem-Thinkpad-Edge-E530:~$

آفلاین M!lad

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1757
پاسخ : نسخه های کرنل لینوکس
« پاسخ #5 : 01 فروردین 1397، 09:06 ب‌ظ »
فرضا Debian فقط یک نسخه رو نگه می‌داره.
به صورت پیش‌فرض، دبیان فقط یک نسخه قدیمی رو نگه می‌داره، یعنی در مجموع دو تا لینوکس روی سیستم نصب هست، که همیشه به صورت خودکار با آخرین نسخه بوت می‌شه و اون یکی رو در صورت تمایل می‌شه توی گراب انتخاب کرد تا با اون سیستم بالا بیاد.


شاید تو نسخه‌های جدیدتر، یا زمانی که کامل (به همراه DE) نصب بشن، چون هر جا الان به Debian دسترسی دارم:



من که مشکلی تو داشتن ۲ تا کرنل نمی‌بینم.
خودکار سیستم با آخرین کرنل بوت میشه.
..I feel no fault for the fault I feel..

آفلاین علی رزم دیده

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1244
  • جنسیت : پسر
  • ali76 سابق
پاسخ : نسخه های کرنل لینوکس
« پاسخ #6 : 01 فروردین 1397، 10:28 ب‌ظ »
با سلام و تبریک سال نو

@Far7id
همون طور که دوستان گفتن دلیلش اینه که بعد آپگرید کردن کرنل ، همچنان کرنل قبلی مورد استفاده قرار می گیره و بعد ری استارت کرنل جدید جایگزین می شه و دلیل دیگه اش هم اینه که اگه تو پروسه ی نصب کرنل جدید مشکلی پیش بیاد یا به هر دلیل کرنل جدید با سخت افزار شما یا ماشین های شبیه ساز و ... تداخلی داشته باشه بتونین هم چنان بوت بگیرین و هم چنین مشکلی توی اجرای نرم افزارها پیش نیاد.

دو تا کرنل هیچ مشکلی نداره و اتفاقاً بودن دومی به صورت زاپاس خوب هم هست و من توصیه می کنم به صورت دستی اقدام به پاک کردن دومی نکنین.
مطمئنا اگه پاک کردن کرنل دوم توصیه می شد ، توسعه دهندگان apt این کار رو می کردن در صورتی که با زدن دستور sudo apt autoremove همیشه کرنل های سوم و چهارم و ... پاک می شن ولی هیچ وقت کرنل دوم پاک نمی شه (چه کرنل دوم ، کرنل قدیمی باشه ، چه کرنل جدید و مورد استفاده) پس شما هم به صورت دستی اقدام به پاک کردن کرنل های قدیمی نکنین و کرنل های قدیمی رو فقط به دستور sudo apt autoremove پاک کنین.

@M!lad
میلاد جان حق با سلمان هستش دبیان یا اوبونتو (جدید یا قدیمی / با DE یا بدون اون) فرقی نداره همیشه حداقل دو تا کرنل نگه داشته می شه
تو این مورد شما که عکسش رو گذاشتین به احتمال زیاد سیستم ، یا لایو هستش یا تازه نصب شده و بروزرسانی ها انجام نشده
شما یه بار دستور sudo apt update && sudo apt upgrade رو وارد کنین تا سیستم بروز بشه و کرنل های جدیدتر نصب بشه ، بعد بروز رسانی به احتمال زیاد می بینین که دو تا کرنل نگه داشته می شه.
« آخرین ویرایش: 01 فروردین 1397، 10:31 ب‌ظ توسط علی رزم دیده »

آفلاین M!lad

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1757
پاسخ : نسخه های کرنل لینوکس
« پاسخ #7 : 01 فروردین 1397، 10:34 ب‌ظ »
 @علی رزم دیده

احتمالا به این دلیل هست که Minimal نصب کردم‌اشون، فرضا PC ام هم که سالهاست رو Debian دارم همین طور هست.

در کل apt رو می‌شه جوری تنظیم کرد که تعداد دلخواه کرنل نگه داره (autoremove) تاثیر نداشته باشه، برا من احتمالا یکی هست رو Debianهام.
« آخرین ویرایش: 01 فروردین 1397، 10:36 ب‌ظ توسط M!lad »
..I feel no fault for the fault I feel..

آفلاین علی رزم دیده

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1244
  • جنسیت : پسر
  • ali76 سابق
پاسخ : نسخه های کرنل لینوکس
« پاسخ #8 : 01 فروردین 1397، 10:46 ب‌ظ »
در کل apt رو می‌شه جوری تنظیم کرد که تعداد دلخواه کرنل نگه داره (autoremove) تاثیر نداشته باشه، برا من احتمالا یکی هست رو Debianهام.

اونکه آره ؛ حتی میشه با دستکاری اسکریپت apt-auto-removal ، کاری کرد که که دستور autoremove تعداد کرنل دلخواه ما رو نیگه داره ولی دیفالتش دو تا هستش مثلاً این خروجی رو که مال اوبونتو هستش رو نیگاه کنین :
$ cat /etc/kernel/postinst.d/apt-auto-removal
#!/bin/sh
set -e
# Mark as not-for-autoremoval those kernel packages that are:
#  - the currently booted version
#  - the kernel version we've been called for
#  - the latest kernel version (as determined by debian version number)
#  - the second-latest kernel version
#
# In the common case this results in two kernels saved (booted into the
# second-latest kernel, we install the latest kernel in an upgrade), but
# can save up to four. Kernel refers here to a distinct release, which can
# potentially be installed in multiple flavours counting as one kernel.

eval $(apt-config shell APT_CONF_D Dir::Etc::parts/d)
test -n "${APT_CONF_D}" || APT_CONF_D="/etc/apt/apt.conf.d"
config_file="${APT_CONF_D}/01autoremove-kernels"

eval $(apt-config shell DPKG Dir::bin::dpkg/f)
test -n "$DPKG" || DPKG="/usr/bin/dpkg"

list="$("${DPKG}" -l | awk '/^[ih][^nc][ ]+(linux|kfreebsd|gnumach)-image-[0-9]+\./ && $2 !~ /-dbg(:.*)?$/ && $2 !~ /-dbgsym(:.*)?$/ { print $2,$3; }' \
   | sed -e 's#^\(linux\|kfreebsd\|gnumach\)-image-##' -e 's#:[^:]\+ # #')"
debverlist="$(echo "$list" | cut -d' ' -f 2 | sort --unique --reverse --version-sort)"

if [ -n "$1" ]; then
installed_version="$(echo "$list" | awk "\$1 == \"$1\" { print \$2;exit; }")"
fi
unamer="$(uname -r | tr '[A-Z]' '[a-z]')"
if [ -n "$unamer" ]; then
running_version="$(echo "$list" | awk "\$1 == \"$unamer\" { print \$2;exit; }")"
fi
# ignore the currently running version if attempting a reproducible build
if [ -n "${SOURCE_DATE_EPOCH}" ]; then
unamer=""
running_version=""
fi
latest_version="$(echo "$debverlist" | sed -n 1p)"
previous_version="$(echo "$debverlist" | sed -n 2p)"

debkernels="$(echo "$latest_version
$installed_version
$running_version
$previous_version" | sort -u | sed -e '/^$/ d')"
kernels="$( (echo "$1
$unamer"; for deb in $debkernels; do echo "$list" | awk "\$2 == \"$deb\" { print \$1; }"; done; ) \
   | sed -e 's#\([\.\+]\)#\\\1#g' -e '/^$/ d' | sort -u)"

generateconfig() {
cat <<EOF
// DO NOT EDIT! File autogenerated by $0
APT::NeverAutoRemove
{
EOF
for package in $(apt-config dump --no-empty --format '%v%n' 'APT::VersionedKernelPackages'); do
for kernel in $kernels; do
echo "   \"^${package}-${kernel}$\";"
done
done
echo '};'
if [ "${APT_AUTO_REMOVAL_KERNELS_DEBUG:-true}" = 'true' ]; then
cat <<EOF
/* Debug information:
# dpkg list:
$(dpkg -l | grep '\(linux\|kfreebsd\|gnumach\)-image-')
# list of installed kernel packages:
$list
# list of different kernel versions:
$debverlist
# Installing kernel: $installed_version ($1)
# Running kernel: ${running_version:-ignored} (${unamer:-ignored})
# Last kernel: $latest_version
# Previous kernel: $previous_version
# Kernel versions list to keep:
$debkernels
# Kernel packages (version part) to protect:
$kernels
*/
EOF
fi
}
generateconfig "$@" > "${config_file}.dpkg-new"
mv -f "${config_file}.dpkg-new" "$config_file"
chmod 444 "$config_file"

همون طوری که توی کامنت هاش گفته شده کرنل دوم رو نیگه می داره :
نقل‌قول
#  - the latest kernel version (as determined by debian version number)
#  - the second-latest kernel version

این فایل رو سیستم شما چطوری هستش ؟

آفلاین M!lad

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1757
پاسخ : نسخه های کرنل لینوکس
« پاسخ #9 : 02 فروردین 1397، 02:07 ق‌ظ »

این فایل رو سیستم شما چطوری هستش ؟

الان یکی از سرورهای Debian که بهشون دسترسی دارم رو چک کردم همینطور که شما می‌گید هست، بعد اضافه کردن کرنل جدید کرنل قبل به لیست APT::NeverAutoRemove اضافه شد، برگردم خونه PCام رو هم چک می‌کنم:
..I feel no fault for the fault I feel..

آفلاین Farhaad 1992

  • Hero Member
  • *
  • ارسال: 943
  • جنسیت : پسر
  • گنو با گنوم
پاسخ : نسخه های کرنل لینوکس
« پاسخ #10 : 02 فروردین 1397، 11:38 ق‌ظ »
هیچ دلیل فنی برای پاک کردن کرنل دوم وجود نداره مگر اینکه در یک سیستم توکار فضای ذخیره سازی به شدت محدود باشه و بخواید با پاک کردن کرنل دوم، فضای بیشتری به دست بیاورید.

فدورا و سنت او اس هم دو تا کرنل نگه میدارند و میشه در هنگام بوت یکیشو انتخاب کرد.
* نام کاربری حساب من Fedora-Red Hat است ولی نام نمایهٔ (پروفایل) من، نام حقیقی + سال تولد من است
* از دی ۱۳۹۸ دیگر فعالیت پیوسته و دائم ندارم
* نظرات و ارسال‌های من فقط در زمان ارسال خود معتبر بودند و نشان‌دهنده طرز فکر و سطح دانش فعلی من نیستند

آفلاین Far7id

  • Jr. Member
  • *
  • ارسال: 92
  • جنسیت : پسر
پاسخ : نسخه های کرنل لینوکس
« پاسخ #11 : 03 فروردین 1397، 08:39 ب‌ظ »
با سلام و تبریک سال نو

@Far7id
همون طور که دوستان گفتن دلیلش اینه که بعد آپگرید کردن کرنل ، همچنان کرنل قبلی مورد استفاده قرار می گیره و بعد ری استارت کرنل جدید جایگزین می شه و دلیل دیگه اش هم اینه که اگه تو پروسه ی نصب کرنل جدید مشکلی پیش بیاد یا به هر دلیل کرنل جدید با سخت افزار شما یا ماشین های شبیه ساز و ... تداخلی داشته باشه بتونین هم چنان بوت بگیرین و هم چنین مشکلی توی اجرای نرم افزارها پیش نیاد.

دو تا کرنل هیچ مشکلی نداره و اتفاقاً بودن دومی به صورت زاپاس خوب هم هست و من توصیه می کنم به صورت دستی اقدام به پاک کردن دومی نکنین.
مطمئنا اگه پاک کردن کرنل دوم توصیه می شد ، توسعه دهندگان apt این کار رو می کردن در صورتی که با زدن دستور sudo apt autoremove همیشه کرنل های سوم و چهارم و ... پاک می شن ولی هیچ وقت کرنل دوم پاک نمی شه (چه کرنل دوم ، کرنل قدیمی باشه ، چه کرنل جدید و مورد استفاده) پس شما هم به صورت دستی اقدام به پاک کردن کرنل های قدیمی نکنین و کرنل های قدیمی رو فقط به دستور sudo apt autoremove پاک کنین.

@M!lad
میلاد جان حق با سلمان هستش دبیان یا اوبونتو (جدید یا قدیمی / با DE یا بدون اون) فرقی نداره همیشه حداقل دو تا کرنل نگه داشته می شه
تو این مورد شما که عکسش رو گذاشتین به احتمال زیاد سیستم ، یا لایو هستش یا تازه نصب شده و بروزرسانی ها انجام نشده
شما یه بار دستور sudo apt update && sudo apt upgrade رو وارد کنین تا سیستم بروز بشه و کرنل های جدیدتر نصب بشه ، بعد بروز رسانی به احتمال زیاد می بینین که دو تا کرنل نگه داشته می شه.
درسته، پاکش نکنم بهتره شاید یک موقع برای کرنل فعلی مشکل پیش اومد.
ممنون.