في Raspberry ، إذا كنت لا تستخدم واجهة رسومية ، فسيصبح من المزعج تحميل ذاكرة USB الخاصة بنا مرارًا وتكرارًا. أيضًا ، في عملية أتمتة هذا الإجراء (وهو ما أعرضه أدناه) ، يمكنك معرفة القليل عن كيفية تعامل Linux مع الأجهزة.
تثبيت autofs و udev
أول شيء سنفعله هو التثبيت Autofs y أودف
sudo apt-get install autofs udev
udev هي أداة Linux kernel مسؤولة عن إدارة دليل / dev حيث توجد جميع الأجهزة. ويسمح لنا autofs ، بمجرد تكوينه ، بالتركيب وإلغاء التحميل تلقائيًا بمجرد توصيل USB أو فصله.
أول شيء سنفعله هو توصيل ذاكرة USB (سأستخدم علامة Kingston التجارية) في جهاز الكمبيوتر / Raspberry Pi. ثم ننفذ:
سودو FDISK-L
سيكون له ناتج مشابه لهذا:
Disk / dev / mmcblk0: 15.7 جيجا بايت ... نظام معرف كتل بدء تمهيد الجهاز / dev / mmcblk0p1 2048 1607421 802687 e W95 FAT16 (LBA) / dev / mmcblk0p2 1613824 30613503 14499840 85 Linux موسع / dev / mmcblk0p3 30613504 30679039 32768 Linux … .. Disk / dev / sda: 83 غيغابايت ... نظام معرف بدء تمهيد الجهاز والنهاية / dev / sda30.9 1 2048 60436479 c W30217216 FAT95 (LBA)
تبلغ مساحة ذاكرة USB الخارجية 30.9 جيجابايت (أي أنها / dev / sda1) بينما تبلغ مساحة ذاكرة SD الموجودة في مكان تثبيت Linux 15.7 جيجابايت.
القواعد المخصصة في udev
مع العلم أن sda1 هو جهازنا ، سنستخدم udev لاستخراج المعلومات من الذاكرة ، لذلك نقوم بتنفيذ الأمر التالي:
udevadm info -a -p $ (udevadm info -q path -n / dev / sda1)
ستكون هناك كتل مفصولة بعبارة "النظر إلى الجهاز الرئيسي" / الأجهزة / ... "
لتسهيل البحث قليلاً ، يمكننا استخدام grep ، لذلك أقوم بما يلي:
udevadm info -a -p $ (udevadm info -q path -n / dev / sda1) | الشركة المصنعة grep
في حالتي لأن ذاكرتي هي كينغستون ، فإن الناتج هو:
ATTRS {Manufacturer} == "Kingston" # 1 ATTRS {Manufacturer} == "Linux 3.12.28+ dwc_otg_hcd"
أو يمكننا أيضًا البحث عن:
udevadm info -a -p $ (udevadm info -q path -n / dev / sda1) | grep model udevadm info -a -p $ (udevadm info -q path -n / dev / sdd1) | بائع grep
انا مهتم:
ATTRS {الشركة المصنعة} == "Kingston"
كما كانت أول مصادفة. في إخراج الأمر أوديفادم أبحث عن الكتلة حيث ظهرت لأول مرة "ATTRS {Manufacturer}"
آخذ بعض البيانات التي أعتبرها فريدة من جهاز الكتلة ، في حالتي:
ATTRS {product} == "xxx" ATTRS {serial} == "xxxx" DRIVERS == "usb"
ما عليك سوى إنشاء القواعد. نصنع ملفًا منتهيًا في قواعد في udev:
سودو نانو /etc/udev/rules.d/personal.rules
داخل الملف الذي نضعه
ATTRS {product} == "xxx"، ATTRS {serial} == "xxx"، DRIVERS == "usb"، SYMLINK + = "miusb"
الآن عندما أقوم بتوصيل USB الخاص بي ، سيكون هناك ملف / dev / miusb. كان هذا هو الجزء الأصعب.
إعداد السيارات
ننفذ:
sudo nano / etc / default / autofs
حيث تقول "TIMEOUT =" وضعوا "TIMEOUT = 1"
دعنا نذهب إلى /etc/auto.master
نانو / إلخ / auto.master
وداخل الملف نضعه في السطر الأخير:
/ media /etc/auto.misc
الآن نذهب إلى /etc/auto.misc
نانو / إلخ / auto.master
وفي السطر الأخير نكتب:
mymemory -fstype = vfat، users، rw، umask = 000: / dev / miusb
أخيرًا نجعله يقوم بتحميل وحدة autofs في البداية:
sudo نانو / الخ / وحدات
وفي السطر الأخير نكتب:
أوتوفس 4
وفويلا ، نعيد تشغيل Raspberry. ضع في اعتبارك أن المجلد غير موجود في / media ولكن عندما نقوم بعمل ملف
القرص المضغوط / الوسائط / الذاكرة
نحن بالفعل في الداخل. وإذا توقفنا عن استخدامه ، فسيختفي المجلد ويمكننا إزالة الجهاز دون فكه يدويًا.
شكرا لنشره 🙂
أعتقد أن هناك خطأ ، في خطوة تحرير auto.misc ، في الكود مكتوب auto.master ، في حالة قيام بعض المصاص بذلك ولا يدرك 🙂
شكرًا ، كنت أتطلع فقط للقيام بذلك على Raspbian ، لقد استخدمت Arch من قبل وكان الأمر أسهل.
جيد جدًا ، لقد حصلت على شغل عندما أضع Pi الخاص بي كعميل تورنت مع أدلة مشتركة بواسطة samba.
يقول دليل fstab أن هناك شيئًا أكثر قوة هو التحقق من ملصق الوحدة باستخدام # blkid ، في حالتي لدي قسم windows مثبت تلقائيًا عند كل بدء تشغيل على النحو التالي:
/ ديف / sda2
UUID = 24A0729FA07276E0 / home / azureus / Windows ntfs auto ، الإعدادات الافتراضية 0 2
على التوت لدي LVM مثبتة ، لا أتذكر التكوين جيدًا.
وفقًا للدليل ، يمكنك استخدام # fdisk -l للحصول على رقم محرك الأقراص والحرف و # blkid لمعرفة الملصق الذي يتوافق مع أي محرك أقراص.
تحية.
[تحديث]
تنشأ هذه التسمية من حقيقة أن هناك أشخاصًا (مثلي) يشعرون بالكسل لفصل وحدة تخزين في كل مرة يتم فيها إيقاف تشغيل الكمبيوتر ، وتكمن المشكلة في وجود عدة وحدات تخزين نظرًا لأنه لا يتم تثبيتها دائمًا بنفس الترتيب بعد عدة عمليات إعادة تشغيل . بالمناسبة ، هذا له عيب ، عندما تتم إزالة الجهاز المقابل للتسمية المخصصة لـ automount ، فإنه يلقي بخطأ ولا يسمح بتحميل / home في حالة تثبيت القسم على المنزل. يمكن حل هذا عن طريق التعليق على الجهاز الذي يسبب تعارضات في fstab أو عن طريق توصيل الجهاز مرة أخرى