লিনাক্সে বাহ্যিক হার্ড-ড্রাইভের স্পিন-ডাউন জোর করুন (রাস্পবেরি পাই)


16

আমি বর্তমানে ইউএসবির মাধ্যমে সংযুক্ত একটি বাহ্যিক হার্ড-ডিস্ক সহ রাস্পবেরি পাই ব্যবহার করে একটি হোম-সার্ভার সেট আপ করছি। যাইহোক, অলস থাকার সময় আমার হার্ড-ড্রাইভ কখনই কমে না।

আমি ইতিমধ্যে raspberrypi.org এ প্রদত্ত ইঙ্গিতগুলি চেষ্টা করেছি ... কোনও সাফল্য ছাড়াই।

1.)

sudo hdparm -S5 /dev/sda

আয়

/dev/sda:
 setting standby to 5 (25 seconds)
SG_IO: bad/missing sense data, sb[]:  70 00 04 00 00 00 00 0a 00 00 00 00 44 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

2.)

sudo hdparm -y /dev/sda

আয়

/dev/sda:
 issuing standby command
SG_IO: bad/missing sense data, sb[]:  70 00 04 00 00 00 00 0a 00 00 00 00 44 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

... এবং 3)

sudo sdparm --flexible --command=stop /dev/sda

আয়

/dev/sda: HDD         1234

... ড্রাইভের স্পিন-ডাউন ছাড়াই।

আমি নিম্নলিখিত হার্ডওয়্যার ব্যবহার:

  • ইনএটেক এফডিইউ 3 সি-2 দ্বৈত পোর্টগুলি ইউএসবি 3.0 এইচডিডি ডকিং স্টেশন
  • ওয়েস্টার্ন ডিজিটাল ডাব্লুডি 10 ই জেডআরএক্স গ্রিন 1 টিবি

এটি কি সম্ভব, প্রেরিত স্পিন-ডাউন-সিগন্যালগুলি কোথাও ওভাররাইট / হারানো / উপেক্ষা করা হয়েছে?


1
আপডেট: মেশানো ইনাটেক ডকিং স্টেশনের হার্ড ড্রাইভগুলি ক্লোন করার জন্য একটি কার্যকারিতা রয়েছে যা এইচডিডিগুলির জন্য একটি মাস্টার / উত্স এবং দাস / সিঙ্ক পোর্ট সরবরাহ করে। উপরে উল্লিখিত কমান্ডগুলি, ওয়ার্কআউটকে এইচডিডি প্লাগ করার সময় স্লেভ পোর্টে প্লাগ করার সময়। এটি মাস্টার পোর্টে স্পিন-ডাউন নিখোঁজ হওয়ার সমস্যা সীমাবদ্ধ করে।
ব্যবহারকারী 258346

1
আপনি যদি মনে করেন এটি সমাধান, আপনার নিজের সমাধানটি গ্রহণ করা উচিত। কর্নি যদিও মনে হয় এটি একই সমস্যা সহ ভবিষ্যতের পাঠকদের জন্য দরকারী useful
মারিউস ম্যাটুটিয়া

1
আপনি অবশ্যই বুঝতে পেরেছেন যে আপনার স্ক্রিপ্টে আপনি যে কমান্ডটি ব্যবহার করেছেন ঠিক তেমনই আপনি যা বলেছিলেন ঠিক তাই না? এইচডিপারম -ই / দেব /
এসডিএ

উত্তর:


4

আমার এইচডি-অলস ভাগ্য ছিল না; এটি দৌড়েছে কিন্তু কার্যকর হয়নি। আমি নীচে স্ক্রিপ্ট লেখা শেষ:

#!/bin/bash
# This script looks for recent disk access, and if nothing has changed, puts /dev/"drive" into spindown mode.
# This should be used only is the hdparm power management function is not working.
# Call this script with cron or manually as desired
#
#
#
# Change which drive this script looks at by changing the drive variable below:
drive="sda"
#
#
current=`date`
caller=$(ps ax | grep "^ *$PPID" | awk '{print $NF}')
filename="/tmp/diskaccess.txt"
if [ -f "$filename" ]; then
    stat_old=`cat "$filename" | tr -dc "[:digit:]"`
    stat_new=`cat /sys/block/"$drive"/stat | tr -dc "[:digit:]"`
    if [ "$stat_old" == "$stat_new" ]; then
        stat="0"
        echo "The disk hasn't been used; spinning down /dev/$drive"
        echo $stat_old
        hdparm -y /dev/$drive > /dev/null
    else
        stat="1"
        echo $stat_old
        echo $stat_new
        echo "The drive has been used..."
        echo $stat_new > $filename
    fi
else
    echo "/tmp/diskaccess.txt file does not exist; creating it now."
    echo $stat_new > $filename
fi
echo $stat " - " $drive " - " $current " - by: " $caller >> /tmp/diskaccesslog.txt

4
ভেবেছিলাম hdparm -yকাজ হয়নি।
ক্রিশ্চিয়ান সিউপিতু

ধন্যবাদ, পুরোপুরি কাজ করে। আমার ডাব্লুডির নীল হার্ডডিস্ক এখন নীচে নেমে আসে, যখন ব্যবহৃত হয় না। আপনার মতে ক্রোনটির জন্য স্ক্রিপ্টটি কল করার জন্য একটি যুক্তিসঙ্গত ইন্টারভাল কী? আমি আপাতত প্রতি 15 মিনিটে এটি কল করি।
তারাটার

5

হ্যাঁ, এটি সম্ভব তবে কিছু কাস্টম বিকাশ কাজের প্রয়োজন হবে এবং তুচ্ছ নয় এবং কোডটি আপনার ঘেরের ভিতরে থাকা ইউএসবি-> সটা ব্রিজ চিপের জন্য নির্দিষ্ট হতে চলেছে।

চুক্তিটি হ'ল ইউএসবি ব্রিজটি বৈদ্যুতিন কনভার্টারের চেয়ে বেশি কাজ করে। একটি ইউএসবি-সংযুক্ত এইচডিডি একটি এসসিএসআই ড্রাইভকে এমুলেট করে যার একটি আলাদা কমান্ড সেট রয়েছে। যদিও স্ট্যান্ডার্ড রিড / লিখুন / সন্ধান আদেশগুলি সমস্ত সময় অনুবাদ করে তত বেশি বিদেশী স্পিন আপ / ডাউন না করে। বেশিরভাগ চিপস এটি করবে না। তদুপরি কোনও সর্বজনীন চিপ স্তর API নেই। সুতরাং আমি কোডটি লিখলে আমার কাছে ইউএসবি ব্রিজ চিপের জন্য একটি প্রোগ্রামিং ম্যানুয়াল থাকতে হবে।

নীচের লাইনটি, যদি না চিপটিতে আপনার প্রোগ্রামিং সুনির্দিষ্ট থাকে এবং এটিএ এবং এসসিএসআই নির্দেশিকা সেট এবং পাস-থ্রু কমান্ডগুলি এনপ্যাপুলেট করার সাথে পরিচিত না হন, তবে আপনাকে কেবল ছাড়াই করতে হবে। খুব বেশি কাজ এবং মান নেই।


5

এটি সম্পূর্ণভাবে সম্ভব যে আপনি যে সিগন্যালগুলি প্রেরণ করছেন তা অবহেলিত। আপনি এর আউটপুট সরবরাহ করেন নি

sudo hdparm -I /dev/sdX

যা আমাদের ডিস্কের ক্ষমতাগুলি বলত, তবে অনেকগুলি ডিস্ক কেবল এই আদেশগুলি সাড়া দেয় না।

ভাগ্যক্রমে, একটি খুব সুবিধাজনক ইউটিলিটি রয়েছে, এইচডি-নিষ্ক্রিয়, যা আপনি এখান থেকে ডাউনলোড করতে পারেন , কিছু নির্দিষ্ট সময়সীমার পরে আপনাকে একটি ডিস্ক স্পিনকে বাধ্য করতে বাধ্য করে। প্রোগ্রামটি বিশেষত ডেবিয়ানের জন্য তৈরি করা হয়েছে, (তবে এটি সাধারণভাবে লিনাক্সে কাজ করে), যাতে এটির ইনস্টলেশনটি আপনার পক্ষে খুব সহজ হওয়া উচিত। আমি কেবল আশা করি এটি একটি এআরএম আর্কিটেকচারেও কাজ করে, এমন কিছু যা আমি পরীক্ষা করতে পারি না।

সম্পাদনা করুন: এটি রাস্পবিয়ানতে সঠিকভাবে সংকলন এবং ইনস্টল করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.