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

کمک و پشتیبانی => انجمن عمومی => نویسنده: mdf092 در 10 آذر 1393، 04:37 ب‌ظ

عنوان: مشکل files list file for package 'xxx' is missing final newline درابونتو [حل شد]
ارسال شده توسط: mdf092 در 10 آذر 1393، 04:37 ب‌ظ
برحسب اتفاق ممکن است هنگام به‌روزرسانی اوبونتو، برخی از فهرست فایل‌ها برای به‌روزرسانی دچار مشکل شوند.
یکی از این مشکلات، حذف «خط جدید» در انتهای فایل‌ها است که مانع نصب بسته‌های جدید می‌شود.
برای حل این مشکل می‌توانید از کد پایتون زیر استفاده کنید و حالشو ببرید :)
#!/usr/bin/python


# 8th November, 2009
# update manager failed, giving me the error:
#       'files list file for package 'xxx' is missing final newline' for every package.
# some Googling revealed that this problem was due to corrupt files(s) in /var/lib/dpkg/info/
# looping though those files revealed that some did not have a final new line
# this script will resolve that problem by appending a newline to all files that are missing it
# NOTE: you will need to run this script as root, e.g. sudo python newline_fixer.py

import os

dpkg_path = '/var/lib/dpkg/info/'
paths = os.listdir(dpkg_path)
for path in paths:
    path = dpkg_path + path
    f = open(path, 'a+')
    data = f.read()
    if len(data) > 1 and data[-1:] != '\n':
        f.write('\n')
        print 'added newline character to:', path
    f.close() 

و می‌توانید فایل پایتون را به دستور زیر اجرا کنید:
sudo python ~/newline.py
عنوان: پاسخ : مشکل files list file for package 'xxx' is missing final newline درابونتو [حل شد]
ارسال شده توسط: دانیال بهزادی در 11 آذر 1393، 06:06 ق‌ظ
این تریک قشنگ بود (: