Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen komut musluğudur.
Program:
ADI
musluk - bir BSD ağ borusu için bir armatür
ağ boruları 4.2
SİNOPSİS
musluk Liman (--içinde|--dışarı|--hata|--fd n)+ [--bir Zamanlar] [--ayrıntılı] [--sessizlik] [--unix]
[--yabancı ev sahibi adr] [--dış liman Liman] [--localhost adr] [--seri] [--daemon]
[--kapat (r|w) ] [--pid dosyası Dosya] [--noreuseaddr] [--biriktirme listesi n]
[-[i][o][e][#3[,4[,5...]]][v][1][q][u][d][s]] [-p yabancı liman] [-h yabancı ev sahibi] [-H
yerel ana bilgisayar] komuta args
AÇIKLAMA
musluk ağ üzerinden boruların işlevselliğini sağlamaya çalışır. olarak davranır
bir sunucu-istemci bağlantısının sunucu ucu. ile kullanıldığında hortum(1) olarak işlev görebilir
yerine
tar -cf - . | rsh diğer "cd hedefdir; tar -xf -"
musluk ve hortum özellikle etkileşimli olmayan kolay erişiminiz olmadığında kullanışlıdır.
hedef hesap (.rhosts'un kötü bir fikir olduğu bir kök hesap gibi).
musluk bir BSD soketi oluşturur, onu Liman komut satırında belirtilen ve
bağlantıları dinler.
Her zaman musluk bir bağlantı alır exec(2) saniye komuta ve onun args stdin, stdout ile,
stderr ve/veya rasgele dosya tanımlayıcıları --içinde --dışarı --hata
--fd n bayraklar. musluk ayrıca, bağlantının kullanılmayan yarısını otomatik olarak kapatır.
bir tek --içinde belirtilmişse veya sadece --dışarı ve / veya --hata belirtilir. Bkz. --kapat
Daha fazla bilgi için seçenek.
SEÇENEKLER
Eğer --bir Zamanlar bayrak belirtilir, musluk irade exec(2) komuta yerine çatal(2)ing ve
exec(2) oluyor. --bir Zamanlar ağ borusunun yalnızca bir atış için iyi olduğu anlamına gelir.
The --ayrıntılı bayrak bunu belirtir musluk ana bilgisayarların bağlanmasıyla ilgili bilgileri yazdırmalıdır.
Bu bilgiler, sayısal ana bilgisayar adresini, ana bilgisayar adlarını ve yabancı bağlantı noktası numaralarını içerir.
The --sessizlik bayrak bunu belirtir musluk bu tür bilgileri YAZDIRMAMALIDIR. --sessizlik olduğunu
Varsayılan.
The --unix bayrak belirtir Liman bir internet bağlantı noktası numarası veya hizmet adı değildir,
ancak bunun yerine bir UNIX etki alanı soketi için bir dosya adıdır.
The --yabancı ev sahibi seçeneği, musluğun olmayan tüm bağlantıları reddetmesi gerektiğini belirtir.
-den gelmek ev sahibi makine. benzer şekilde --dış liman musluğun reddetmesi gerektiğini belirtir
yerel makinelerinde bağlı olmayan tüm bağlantılar Liman argüman. Yukarıdaki
iki seçenek, kaba bir kimlik doğrulama biçimine izin verir. UNIX sistemlerinde yalnızca root'un yapabileceğini unutmayın.
1024'ün altındaki bir bağlantı noktası numarasına bir soket bağlayın.
Lütfen Bunun musluğu güvenli hale getirdiğini düşünerek aldanmayın. kandırmanın yolları var
Yıllardır bilinen (ancak yakın zamanda duyurulan) IP numaraları. bunu düşünüyorum
bu yöntem DNS sahtekarlıklarından güvenlidir, ancak muhtemelen sahte on in
/etc/host.conf neyse.
--localhost dinleme soketinin belirli bir internete bağlı olması gerektiğini belirtir
Bu ana bilgisayardaki adres. Bu, yalnızca birkaç internet numarasına sahip ana bilgisayarlarda kullanışlıdır.
--daemon musluğun kontrol terminalinden bir kez ayrılması gerektiğini belirtir
sokette dinlemeye başlamıştır. Bu, setid() sistem çağrısı kullanılarak yapılır. Eğer
sisteminizde setid yok, tüm dosya tanıtıcıları kapat standardını kullanıyor,
ioctl TIOCNOTTY, fork() ve ebeveyn çıkış '' dizisi.
--kapat (normalde) çift yönlü soketi tek yönlü sokete çevirmek için kullanılır
'r' varsa, o zaman musluk salt okunur yapmak için bağlantının yarısını kapatacak
priz. Yazmaya çalışırsak, başarısız olur. Uzak bağlantı okumaya çalışırsa,
soketi kapalı olarak algılayacaktır. Bunun yerine "w" varsa, o zaman musluk kapanacak
bağlantının diğer yarısını salt okunur bir yuva yapmak için. Okumaya çalışırsak,
soketi kapalı olarak algılayacaktır. Uzak bağlantı yazmaya çalışırsa,
hata. Varsayılan davranış, her iki yarıyı da açık bırakmaktır, ancak yarısının kapatılması
bağlantı, belirli kombinasyonlarla otomatik olarak yapılır. --içinde, --dışarı, ve --hata
bayraklar. Otomajik davranışlarını bastırmak için (sırasıyla) --fd 0, --fd 1, kullanabilirsiniz.
ve --fd 2.
--kapat bazı internet sunucularıyla (belirli httpds gibi) kullanılmayabilir, çünkü
bağlantının yarısının kapanmasını, bağlantının tamamının kapanması olarak yorumluyorlar.
bağlantı. Bu uyarı aşağıdakiler için geçerlidir: --içinde, --dışarı, ve --hata.
--seri musluğun daha fazlasını kabul etmeden önce bir çocuğun bitirmesini beklemesine neden olur
bağlantılar. Serileştirme, kritik bölüm yönetiminin çok kaba bir şeklidir.
--pid dosyası Dosya komutlar musluk işlem kimliğini yazmak için Dosya. Bu kullanışlı
musluk daha büyük bir sistemin parçası olduğunda ve bir kontrol süreci
musluk. --pid dosyası kullanırken düzgün çalışır --daemon seçeneği.
Varsayılan olarak, musluk gerçekleştirir
setockopt(fd, SOL_SOCKET, SO_REUSEADDR...)
bu, netpipes sürüm 4.0'ı 'boşanan' 'kullanılan adres' sorununu önler ve
daha erken. --noreuseaddr musluğa bu sistem çağrısını atlamasını ve 4.1 öncesine dönmesini söyler
davranış. Bu çağrı olmadan, soket her zaman sonra hemen yeniden kullanım için uygun değildir.
musluk çıkar.
--biriktirme listesi n için ikinci parametreyi belirlemenizi sağlar. dinlemek(2) sistem çağrısı. NS
varsayılan 5'tür.
KISA BAYRAKLAR
Argümanlar için yazma gereksinimlerini azaltmak (ve eskilere saygı göstermek için)
UNIX kriptotaksonomi geleneği) Bayrakların bazı kısa biçimlerini ekledim. Burada bir
yazışma tablosu:
┌──────┬─────────────┐
│Kısa │ Uzun │
│ i │ in │
│ o │ dışarı │
│ e │ yanılmak │
│ #n │ fdn │
│ v │ gereksiz sözlerle dolu │
│ 1 │ bir Zamanlar │
│ q │ sessiz │
│ u │ unix │
│ d │ daemon │
│ s │ seri │
│ p │ yabancı liman │
│ h │ yabancı ev sahibi │
│ H │ localhost │
└──────┴─────────────┘
Örneğin, aşağıdaki komut
örnek$ musluk 3000 --out --verbose --once --foreignhost istemci yankı falan
yazılabilir
örnek$ musluk 3000 -ov1h istemci yankı falan
The -p, -h, ve -H bayraklar bir argüman alır, ancak bayraklar tek bir argümanda gruplanabilir.
Daha sonra komut satırından ihtiyaç duydukları argümanları bayrakların sırasına göre alırlar.
görüntülenir.
example$ musluk 3000 -hpHov1 istemci 2999 example-le2 yankı falan
Her biri --fd kelime bayrağı ayrı bir tanımlayıcı gerektiriyordu, -# karakter bayrağı olabilir
birden fazla tanımlayıcı alın. Aşağıdakiler eşdeğerdir:
örnek$ musluk 3000 --fd 0 --fd 1 --verbose --once eko falan
örnek$ musluk 3000 -#0,1v --once eko falan
örnek$ musluk 3000 -v1#0,1 yankı falan
örnek$ musluk 3000 -#0,1v1 yankı falan
kullanırken dikkat etmeniz gerektiğini unutmayın. -# karakter bayrağı ve -1 karakter
aynı argümanda bayrak. Ayrıca, özel unutmayın kapanma(2) semantiği -içinde ve
-dışarı.
ÖRNEKLER
Bu, yerel makinede 3000 numaralı bağlantı noktasına bağlı bir TCP-IP soketi oluşturur.
örnek$ musluk 3000 --out --verbose tar -cf - .
Bazı işlemler (herhangi bir makineden) bu bağlantı noktası 3000'e bağlanmaya çalıştığında
makine musluk program olacak çatal(2) bir süreç ve çocuk exec(2) a
tar -cf - .
The --dışarı seçeneği, alt sürecin çıktısının yeniden yönlendirileceği anlamına gelir.
tarafından alınan yeni soket kabul etmek(2) çağrı. --ayrıntılı musluğun yazdıracağı anlamına gelir
her yeni bağlantı hakkında bilgi.
Bu, geçerli dizinde bir UNIX etki alanı soketi oluşturur
örnek$ musluk u-socket --out --err --once --unix csh -c \
"dd if=angio.pgm | funky.perl.script"
The --dışarı --hata seçenek, stdout ve stderr'nin alt öğede yeniden yönlendirileceği anlamına gelir.
süreci. --bir Zamanlar seçenek, musluğun olmayacağı anlamına gelir çatal(2), ancak exec(2)
yalnızca ilk işlemin musluktan önce u-sokete bağlanabilmesi için işlem yapın
kullanılamaz hale gelir.
Bu örnek, ilk bağlantı gelene kadar bir soketi dinler. Daha sonra doğar
hortum bağımlısına benzer iki yönlü bir kopya.
musluk 3000 -1v --fd 3 sh -c 'cat <&3 & cat >&3 ; çorap 3'
Onworks.net hizmetlerini kullanarak musluğu çevrimiçi kullanın
