Shell komut dosyasında gecikmiş yürütme


0

Linux makinemde bir iscsi sürücüsü monte etmek için basit bir betik dosyası yaptım.

iscsiadm –m node --targetname THE_TARGET_IQN --login
mount /dev/sdb1 /home/mounted

Sorun şu ki, bu senaryoyu çıkardığımda, her zaman ilk seferinde başarısız oluyor. Bunu sever.

/etc/init.d# ./iscsi
Loggin to [iface: default, target: targetname, portal: THE_TARGET_IQN (multiple)
Loggin to [iface: default, target: targetname, portal: THE_TARGET_IQN successful.
mount: special device /dev/sdb1 does not exist
/etc/init.d# ./iscsi
isciadm: default:1 session requested, but 1 already present.
isciadm: Could not log into all portals
/etc/init.d#

İki satır arasına biraz gecikme ekleyebilirsem, iyi olacağını düşünüyorum. Bu mantıklı mı? Lütfen bunun için bana tavsiyede bulunun.


Birinci ve ikinci satırlar arasındaki ilişki nedir?
— Xen2050

Birincisi bir ISCSI'yi meşgul ediyor Ve ikincisi bir ISCSI hacmini monte etmektir
— Andrei Kim

Bende olmayan iscsiadmuyku gibi sistemimde, ancak bir web sayfası adam o terminale dönen ... Tamamlandığında önce hemen döndüren biraz garip önce beklemek için herhangi seçenekler var gibi görünmüyor, ama görünüşe En iyi seçenek, +1 a Deeh
— Xen2050

Yanıtlar:


1

İhtiyacınız olan tek şey iki komut arasındaki gecikme ise sleep X, X'in saniye cinsinden değer olduğu yeri ekleyebilirsiniz .

iscsiadm –m node --targetname THE_TARGET_IQN --login
sleep 3
mount /dev/sdb1 /home/mounted

Önyükleme üzerine monte etmek gerekirse (gönderinizden net değil). Daha sonra / dev / sdb1 komutunu / etc / fstab _netdevseçeneğine eklemeniz ve iSCSI'nin önyüklemede çalıştığından emin olmanız gerekir.


Selam. Bahsettiğin gibi önyükleme yapmak istedim. Teşekkürler. Bu yüzden / etc / init'e bir başlangıç ​​betiği olarak bir betiği dosyası yaptım. Daha iyi bir yol varsa, benimle paylaşabilir misin?
— Andrei Kim

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.