انجمنهای فارسی اوبونتو
تازه کار => انجمن تازهکاران => نویسنده: M_Cover در 27 تیر 1392، 06:07 بظ
-
با سلام و درود
دوستان من پارتیشن سیستم عاملم پر شده است و شاخه usr که مسیر نصب برنامه پیشفرض است در پارتیشن سیستم عامل است
حالا من می خواهم مسیر پیشفرض نصب برنامه ها و دانلود برنامه ها را با apt-get تغییر دهم
راه حل های همچون apt-get clean و ... تست کردم اما فایده نداشته است چوگنه می توانم مسیر نصب برنامه ها تغییر دهم
با تشکر
-
فایلهای debی که دانلود کردین رو پاک کردین تا شاید یه مقدار فضا داشته باشین؟ اگه نه میتونین فایلهای debی رو که برای نصب برنامهها دانلود کردین از این مسیر پاک کنین تا فضا داشته باشین:
var/cache/apt/archives
-
فایل ها هم پاک می کنم فقط 9 مگ برایم فضا خالی می شود ایا راهی برای تغییر مسیر نصب apt-get است؟
-
برای تغییر محل نصب apt-get راهی نیست (بنا به گفته دوستان)
http://forum.ubuntu.ir/index.php/topic,24667.msg172642.html (http://forum.ubuntu.ir/index.php/topic,24667.msg172642.html)
-
پیش فرض 5 درصد از فضای پارتیشن برای روت رزرو میشه . حالا اگر پارتیشنتون خیلی بزرگ باشه مثلا 500 گیگ اون 5 درصد میتونه فضایه زیادی رو بی خودی هدر بده . تا موقعی که یک راه برای مشکلت پیدا کنی اون 5 درصد رو کاهش بده تا یکم جا باز بشه.
با این دستور میتونی تغییرش بدی . تو دستور زیر 2 درصد تعیین شده.
sudo tune2fs -m 2 /dev/sdXX
sdXX اونیه که توش لینوکست نصبه . با دستور df می تونی پیداش کنی که موینت پوینتش رو زده /
-
چه اصراری دارید که محل نصب برنامه ها را جا به جا کنید؟
1:می تونید بصورت لایو بیاید و فضای اون پارتیشن را بیشتر کنید.
2:فکر کنم بشه مونت پوینت ها را جا به جا کرد یک جستجویی بکنید و سپس /usr را به پارتیشنی جدا ببرید
-
اول ببین کدوم فایل از همه بیشتر فضا گرفته بعد برو دنبال جدا کردن اون . معمولا home بیشترین فضا رو می گیره تو سیستم هایه خونگی یا شخصی .
با این دستور میتونی فضای هر فایل رو در بیاری :
du -d1 -h /
-
چه اصراری دارید که محل نصب برنامه ها را جا به جا کنید؟
1:می تونید بصورت لایو بیاید و فضای اون پارتیشن را بیشتر کنید.
مشکل دقیقا همینجاست که سیستمی که سیستم عامل روش نصب یک سخت افزار arm cortexa20 و روی نند فلش 2 گیگ نصب است
از نظر نرم افزاری هم لینوکسمان هم لینارو 12.04 است
اول ببین کدوم فایل از همه بیشتر فضا گرفته بعد برو دنبال جدا کردن اون . معمولا home بیشترین فضا رو می گیره تو سیستم هایه خونگی یا شخصی .
با این دستور میتونی فضای هر فایل رو در بیاری :
در این مورد نیز من دیدم که دایرکتوری usr بیشترین حجم گرفته است حالا چگونه می توانم جداش کنم و قابل ذکر است که من دسترسی به صورت live ندارم و سیستم ما از نظر سخت افزاری مشکل کنبود فضا دارد راه های مختلف مانند dpkg هم تست کردم که مسیر برنامه ها را جابه جا اما نشد (این لینوکس هم مکافاتی داره واسه خودشا ::) :-X)من نمی دانم دلیل این که نمی توانیم در لینوکس مسیر apt-get تغییر دهیم چیست؟مگر اینطور نیست که لینوکس یک سیستم اپن سورس است چرا برای این مورد راه حلی نیست یا کسی در مورد آن فکر نکرده است؟
ببخشید من یک مهندس سخت افزار و الکترونیکم زیاد در مورد لینوکس سررشته ندارم اما در کل هدف من زیر سوال بردن لینوکس نیست (اتفاقا من هم لینوکس دوست دارم ::) :-X)اگر مبتدی پرسیدم ببخشید نیتی هم نداشتم لطفا کسی جبهه نگیرد :oops:
باتشکر از کمک دوستان
-
اگر به صورت live دست رسی نداری و می خای جداش کنی این کار رو بکن
پارتیشن جدید رو ایجاد کن .
تمام محتویات usr/ رو به اون پارتیشن منتقل کن .
مظمعن شو که تفاوتی بین محتویات نباشه یعنی همه چی درست منتقل شده که بعدا به مشکل نخوری.
بعد فایل etc/fstab/ رو برای موینت شدن usr/ موقع بالا امدن تنظیم کن .
پوشه usr/ قدیمی رو تغییر اسم بده که از طریق اون دیگه بوت نشه .
رستارت کن ببین سیستم میاد بالا یا نه .
http://askubuntu.com/questions/656/how-to-move-usr-to-a-new-partition
-
با سلام مجدد
یک پوشه به عنوان پارتیشن مانت کردم و سپس نام usr تغییر دادم به نام usr1 و مجدد پارتیشن مانت شده را در کانفیگ fstab نام آن را تغییر داردم به usr و پوشه بک داده شده را جایگذین کردم سیستم بالا نیامد یک سیستم عامل هم عوض کردم ::) ::)
حالا چه کار کنم ظاهرا این راه جواب نمیده...
-
باید ببین برا چی بالا نیامده تا مشکلش رو حل کنی .
می رفت داخل busybox ?
-
نه متاسفانه نمی رفت در bbox
خدمتتان عرض کردم سیستم ما یک سیستم سخت افزاری arm است مادربرد کامپیوتر نیست که در بوت یا حافظه اصلی بتوانیم دخالتی داشته باشیم همه این فرآیند ها به صورت خودکار در چیپ a20 انجام می شود مشکل ما هم دقیقا این است
سیستم عامل قبلی هم چون بالا نیامد من سیستم را پاک کردم و مجدد سیستم عامل نصب کردم(از خیر اون باید گذشت ::))
جنابali.abry واقعا از همراهی شما متشکرم اما جدا من مشکل اساسی در این لینوکس دارم
حالا مشکل رو مشکل هی میاد سیستم عامل قبلی که پاک کردم جدید نصب کردم دیگه نمی توانم به اینترنت وصل شوم
فکر می کنم مشکل dns دارم(قبلا شبکه کار کردیم ::)) اما نمی دونم توی لینوکس را حلش چیه حالا کلا توضیح می دهم
من آی پی ها را می تونم توی شبکه اترنت ببینم و پینگ بگیرم حتی می توان از آی پی گوگل پینگ بگیرم و جواب دارم
اما از خود دامین نمی توانم پینگ بگیرم Unknown Host
در فایل resolve.conf دی ان اس عمومی گوگل 8.8.8.8 8.8.4.4 ست کردم و حتی از این آی پی ها 8.8.8.8 هم پینگ دارم
اما به اینترنت دسترسی ندارم فایل interfaces هم یک آی پی استاتیک تعریف کردم با دی ان اس مجزا اما باز هم به اینترنت دسترسی ندارم حالا نمی دونم توی لینوکس چه جوری این مشکل حل می کنند؟ باز هم ذکر می کنم از آی پی می تونم پینگ بگیرم اما از دامین پینگ نمی ده در صورتی که dns ها درست تنظیم شده است(واقع از دست خطا های شاخ دار این لینوکس دیگه کلافه شدم)
می خواستم این موضوع توی انجمن شبکه بگم اما گفتم شاید راه حل ساده ایی دارد و ما مبتدی هستیم توی انجمن تازه کارا راحتر به جواب برسیم
-
dns رو چه شکلی وارد کردی ؟ باید این شکلی وارد بشه تا کار کنه :
nameserver 4.2.2.4
تو هر خط یک دونه میتونی تعریف کنی و تا 3 تا هم بیشتر نمیتونی تعریف کنی .
خوب شما که از اول نصب کردین اون پوشه usr رو جدا می کردین دیگه که به مشکل نخورین. راستی اگر به صورت LVM نصب کرده باشی میتونی از یک حافضه جانبی دیگه به فضایه پارتیشن روتت اضافه کنی .
-
dns رو چه شکلی وارد کردی ؟ باید این شکلی وارد بشه تا کار کنه :
nameserver 8.8.8.8
nameserver 8.8.4.4
تعریف کرده بودم مشکل از netmask بود اشتباه در interfaces تعریف شده بود
مشکل اینترنت حل شد..
خوب شما که از اول نصب کردین اون پوشه usr رو جدا می کردین دیگه که به مشکل نخورین
راستش ما برای کامپایل لینوکس روی آی سی از برنامه هایی فلش موبایل استفاده می کنیم که تمامی نصب و فرآیند خودکار انجام می شود که روی نند فلش نصب می شود که یک حافظه با سرعت بالا است و نند فلش ما 2 تا 2 گیگ است
الان هم من طبق گفته این لینک عمل کردم http://askubuntu.com/questions/656/how-to-move-usr-to-a-new-partition
مجدد سیستم بالا نیامد اگر امکان دارد راستش من اینجاشو متوجه نشدم
Delete the old files
After the reboot, the old files in /usr on the root partition will be hidden by the new partition mounted on /usr. But we can use some mount bind trickery to get to the old files and then delete them.
$ sudo mount --bind / /mnt
$ sudo rm -rf /mnt/usr
$ sudo umount /mnt
الان ما به mnt چیکار داریم در صورتی که usr ما در روت اصلی است و این bind چیه؟
راستی اگر به صورت LVM نصب کرده باشی میتونی از یک حافضه جانبی دیگه به فضایه پارتیشن روتت اضافه کنی .
منظورتان و متوجه نشدم اما دسترسی به حافظه جانبی در سیستم ما زیاد است از هارد گرفته تا sdcard که در حال حاضر من از sdcard 8گیگ به عنوان حافظه جانبی استفاده می کنم اما مشکل نصب سیستم عامل روی نند فلش است که 1.6 گیگ برای سیستم عامل از یکی از نند 2 گیگ استفاده می شود و برای ما 400 مگ باقی می مانند که قاعدتا کاری با آن نمیشه کرد
-
برای lvm :
این دستور رو بزن . اگر تو خروجی نوشته بود LINUX LVM یعنی LVM داری .
برای اون قسمت که گفتین نفهمیدین :
شما وقتی میای usr رو می بری تو یک پارتیشن دیگه بعد ریست میکنی سیستم میاد بالا اون پارتیشن usr که در usr/ موینت میشه امده جای اون usr قبلیت رو گرفته.
در واقع هر وقت هر پارتیشنی رو تو یک دایرکتوری که خودش توش چیزی داشته باشه موینت کنی محتویاتش مخفی میشه . حالا وقتی این usr جدید رو میای رویه usr قدیمت موینت میکنی محتویات اون usr قدیمیه مخفی میشه . با اون روشی که اون جا گفته شما میای / رو یک جا دیگم موینت میکنی (برای یک پارتیشن میشه چندین تا مونیت پوینت تعیین کرد) بعد از اون جای جدید به محتویات اون usr قدیمیت دست رسی پیدا میکنی و می تونی پاکشون کنی .
والا از این ساده تر بلد نبودم توضیح بدم دیگه چند بار بخونین فکر کنم متوجه بشین .
این bind معادل اپشن B- تو دستور mount هستش که به ما این قابلیت رو میده که یک پارتیشن رو چندین جا موینت کنیم .
از mnt به عنوان دومین موینت پوینت استفاده میکنیم .
-
دوست من ببخشید خیلی از دست ما اذیت شدی امیدوارم بتونیم جبران کنیم
الان من مجدد usr بدون اینکه تغییر نام بدم با یک پارتیشن دیگه موینت کردم حالا سیستم بوت نمی شود اما یک صفحه مشکی ترمینال بالا میاد
که به ترمینال دسترسی داریم من با دستور df -h دیدم پارتیشن ما موینت شده است ولی فکر کنم الان باید محتویات usr قبلی بریزم
توی پارتیشن جدید با دستور
cp -a /usr1 /usr
اطلاعات را کپی کردم و توی پارتیشن هم نشون میده که ریخته شده و حجم اشغال شده است اما با دستور
ls بهم می گه t+found داخل یوزر نشون نمی ده نمی دونم درست کپی کردم یا نه ... اما فعلا 1 گام جلو آمدیم صفحه ترمینال و الان داریم :P ::)
-
قبل از این که ریست کنی باید محتویات usr رو تو اون پارتیشن بریزی نه بعدش .
1 - پارتیشن رو بساز
2- محتویات رو بریز توش
3- فایل fstab رو تنظیم کن
4 - ریست کن
شما بزار من خودم امشب این کار رو یک بار رو vmware انجام بدن نتیجش رو ببینم شاید واقعا مشکلی پیش میادو کار نکنه.
-
خب من تست کردم.
روشی که تو اون لینک گفته جواب نمی داد ;D ولی با یک مقدار تغییرات راش انداختم 8)
1- یک پارتیشن برای این کار اماده کن . اون در mnt موینتش کن . من این دستور رو برای موینت زدم :
mount -t ext4 -o defaults /dev/sdb1 /mnt
2- از این که موینت کردی تمام محتویات فایل usr/ رو به mnt/ کپی کن. (انگار داری داخل پارتیشن جدیدت کپی میکنی چون تو mnt موینتش کردی)
cp -a /usr/* /mnt/
3- فایل fstab رو باید تنظیم کنیم .
3.1- با دستور زیر UUID پارتیشنت رو بدست بیار
blkid
3.2- از تو خروجی این دستور مقدار UUID پارتیشنت رو کپی کن و به شکل زیر فایل fstab رو تنظیم کن :
UUID=6c45a2b9-0ed1-4ff8-8bf1-ca81eabd782d / ext4 defaults 0 1
4- فایل usr/ رو تغییر اسم بده به usr-backup و یک فایل به اسم usr بساز بعد رستارت .
mv /usr /usr-backup
mkdir /usr
reboot
بعد از این که سیستم امد بالا مطمعن شو همه چیز بدون مشکل هستش و اگر همه چیز بدون مشکل رود میتونی usr-backup رو پاک کنی.
نکته اگر یک موقعی سیستم با مشکل بالا امد و دستورات رو می گفت وجود نداره به این شکل اجرا کن :
مثلا برای اجرا دستور top بزن
/usr-backup/bin/top
چون اسمش رو تغییر دادی سیستم نمیتونه پیداش کنه و باید ادرس کامل بدی.
-
سلام آقای ali.abry خیلی خیلی متشکرم مشکلم حل شد \\:D/
حیف توی این انجمن دکمه تشکر نیست ولی اگر بود هم باز شخصا از شما تشکر می کردم
فقط یک سوال کوچک
UUID=6c45a2b9-0ed1-4ff8-8bf1-ca81eabd782d / ext4 defaults 0 1
در اینجا نقش defaults و 0 و 1 چیست؟
آقا علی بزرگوار امیدوارم هرجا باشید موفق باشید :oops:
-
سلام آقای ali.abry خیلی خیلی متشکرم مشکلم حل شد \\:D/
حیف توی این انجمن دکمه تشکر نیست ولی اگر بود هم باز شخصا از شما تشکر می کردم
فقط یک سوال کوچک
UUID=6c45a2b9-0ed1-4ff8-8bf1-ca81eabd782d / ext4 defaults 0 1
در اینجا نقش defaults و 0 و 1 چیست؟
آقا علی بزرگوار امیدوارم هرجا باشید موفق باشید :oops:
اخر این اموزش فایل fstab رو توضیح داده . توضیح اون قسمت هارو هم گفته :
http://30li.ir/bash/commands/mount
-
باز هم از شما متشکرم :oops: