EngelsFransSpaans

Ad


OnWorks-favicon

gerecht - Online in de Cloud

Voer schotel uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdrachtschotel die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


dish - tool voor parallelle sysadmin van meerdere hosts

KORTE INHOUD


schotel [optie] ... -e commando {-G hosts_bestand | gastheer_1 gastheer_2 ...}
dip {-G hosts_bestand | -g "gebruiker@host_1 ..."} lokaal_bestand :remote_bestand
dip {-G hosts_bestand | -g "gebruiker@host_1 ..."} :remote_bestand lokaal_bestand

PRODUCTBESCHRIJVING


schotel - de diligence-shell voert opdrachten uit op verschillende hosts via ssh/rsh/telnet, en ook
maakt het gemakkelijk om bestanden te distribueren via scp/rcp, een wachtwoord op afstand te wijzigen, enz. Het kan
proces hosts in parallelle modus.

OPTIES


-h Druk een helpbericht af met een korte beschrijving van alle opdrachtregelopties

-H, --hulp
Uitgebreide hulp inclusief voorbeelden

--versie
Druk de programmaversie en het copyrightbericht af en sluit af

-V Geef het versienummer weer en sluit af

-C
Configuratiemap - $HOME/.dish is standaard; In deze map bevinden zich
volgende configuratiebestanden: 'hosts', 'rests', 'pass' en 'options'. Wanneer gebruikt,
deze optie moet het eerste argument in de opdrachtregelreeks zijn, of het tweede
één als `-D' is gekozen! Als alternatief kan men de configuratiemap specificeren door
het definiëren van de omgevingsvariabele DISH_CONF.

-CC
Hetzelfde als `-C' met terugval naar standaard als lokale configuratie niet gevonden wordt; Dit betekent dat,
in het geval dat de bestanden 'pass', 'options' of 'rests' afwezig zijn in de opgegeven map,
maar dergelijke bestanden bestaan ​​in $HOME/.dish, de laatste zal worden overwogen. De enige
uitzondering is '$HOME/.dish/hosts' die genegeerd zal worden. Het gebruik van deze optie is
gelijk aan het wijzigen van de map naar de gekozen map en het uitvoeren van `dish'.

-c
Programma (alias "connector") en de opties die worden gebruikt om verbinding te maken met de afstandsbediening
host(s) - bijvoorbeeld `rsh', terwijl het voortgebrachte proces "rsh $host ".
Uw standaardconnector is `ssh'. Bovendien door een relevante op tekst gebaseerde client te gebruiken
als connector heeft men toegang tot verschillende soorten hosts - schakelaars, databases, enzovoort
op.

-e
Externe opdracht om uit te voeren; Het kan ook worden ingesteld door de omgevingsvariabele DISH_CMD.

-E
Voer de opdracht uit waarbij ook het verbindingsgedeelte is opgegeven, bijvoorbeeld "-E 'ssh $host
date'" wat gelijk is aan "-e date". Deze optie is niet compatibel met `-c' en
`-e'. Het kan ook worden ingesteld door de omgevingsvariabele DISH_FUEXE.

-t Forceer pseudo-tty-toewijzing in ssh; Dit gebeurt automatisch in het geval van een wachtwoord
veranderen.

-T
Time-out voor opdrachtuitvoering - standaard 30s (per host)

-TT
Totale time-out voor opdrachtuitvoering - standaard 300s (alle hosts); Deze optie is
alleen nuttig als hosts op volgorde worden verwerkt en de totale verwerkingstijd
mag de opgegeven bovengrens niet overschrijden.

-x
Reguliere expressie voor de shell-prompt; Deze waarde geeft aan welke prompt er moet zijn
verwacht in de shell van het programma na inloggen op een systeem door `telnet', `mysql',
`sqlplus' of andere interactieve opdrachtregelclients (zie `-c'). De standaardwaarde
is `(%|\$|#|\>) ?$'.

-X
Reguliere expressie voor de wachtwoordprompt; Het is standaard niet hoofdlettergevoelig
waarde `Wachtwoord: *$'.

-ADVERTENTIE
Reguliere expressie voor de ssh-prompt om een ​​nieuwe hostsleutel toe te voegen - `connecting
(ja/nee)?.*' is standaard

-AC
String met het antwoord op de ssh-prompt om een ​​nieuwe hostsleutel toe te voegen - `yes' is standaard

-g
Bestand met lijst van te targeten hosts/ip's/accounts; De opdracht wordt uitgevoerd op
deze doelen. Het standaard hostbestand is '$HOME/.dish/hosts' - normaal gesproken per regel één
account van de vorm "gebruiker@host" (als ssh uw keuze is voor connector). Om te
lid worden van lijsten gebruiken de optie herhaaldelijk. Als alternatief de omgevingsvariabele
DISH_HOSTS kan worden gebruikt om de doelhosts te definiëren in de opgegeven tekenreeks
ze moeten worden gescheiden door spaties. Door deze optie te combineren met `-r' of `-i' you
kan verschillende subsets van gerichte hosts/accounts definiëren.

-r
Bestand met lijst van rustende hosts/accounts die moeten worden uitgesloten; De standaard is
'$HOME/.gerecht/rust'. Een "rustende gastheer" betekent een gastheer die zal worden uitgesloten van de
doelen. De lijst met rustende hosts of de bestandsnaam kan ook worden opgegeven door het
omgevingsvariabele DISH_RESTS.

-i
Bestand met lijst van hosts/accounts om te overlappen met gerichte hosts; Er is geen
standaard bestand. Alleen overlappende hosts, zoals opgenomen in deze lijst en tegelijkertijd
tijd gedefinieerd als doelen, zal worden verwerkt.

-u
Gebruikersnaam - standaard is uw lokale gebruikersnaam; Het kan ook worden gedefinieerd door de
omgevingsvariabele DISH_USER. Intern is de waarde toegankelijk via de variabele
$gebruiker (zie voorbeelden). Verder is het niet relevant in het geval dat rekeningen van het formulier
"user@host" worden verwerkt omdat ze al de gebruikersnaam bevatten.

-p
Login wachtwoord (-p "" = -pp = -a0) - alias "login authentic" of "a0"; Als Nee
authenticatie voor login is vereist (geen gebruikers- en geen wachtwoord-prompt verschijnen), dan
gebruik `/dev/null' als wachtwoord. Als de gebruikersnaam wordt gevraagd, maar het wachtwoord is een
lege string, dan moet `/dev/empty' worden opgegeven als wachtwoord. De waarde hiervan
optie kan ook een wachtwoordbestand zijn (zie `-P'). Uiteindelijk kan men de
wachtwoord door de omgevingsvariabele DISH_PASS.

-a
Extra wachtwoord voor authenticatie (-a "" = -aa = -a1) - alias "first
authentic" of "a1"; Als binnen het spawn-proces een programma als `smbmount', `su',
`ssh', etc. vraagt ​​om authenticatie, het a1-wachtwoord wordt daaraan doorgegeven. Dit wachtwoord
kan ook worden ingesteld door de omgevingsvariabele DISH_PASS1.

-A
Nog een wachtwoord voor authenticatie (-A "" = -AA = -a2) - alias "second authentic"
of "a2"; Wanneer een voortgebracht proces, na één authenticatie door het a1-wachtwoord, vraagt
opnieuw voor een wachtwoord, dan wordt a2 verzonden. Dit wachtwoord kan ook worden ingesteld door de
omgevingsvariabele DISH_PASS2.

-n
Nieuw wachtwoord bij wachtwoordwijziging (-n "" = -nn = -ne)

-p0 Inloggen zonder authenticatie - hetzelfde als `-p /dev/null'

-p1 Stel het a1-wachtwoord in op hetzelfde wachtwoord als het inlogwachtwoord; Deze optie zou niet moeten zijn
samen gebruikt met `-p0' en `-a1'. Zie voorbeeld d) hieronder.

-P
Bestand met wachtwoord(en); Het standaard wachtwoordbestand is '$HOME/.dish/pass'. Het moet zijn
alleen leesbaar voor de gebruiker (bestandsmodus 600 of 700), anders wordt het programma afgesloten met
fout, maar zie ook volgende optie. Elke regel in het bestand kan een wachtwoord bevatten
van de vorm: "wachtwoord:gebruikersnaam:hostnaam", alternatief
"wachtwoord:::gebruikersnaam:::hostnaam", of "wachtwoord;;;gebruikersnaam;;;hostnaam". Men kan
specificeer een lijst met hosts gescheiden door de `,' of `;' karakters. Normale uitdrukkingen
voor hostnamen zijn ook toegestaan ​​(zie de voorbeeldconfiguratiebestanden in de
verdeling).

-m Negeer de toegangsrechten van het wachtwoordbestand

-s [ ]
Sequentiële verwerking van hosts (standaardmodus); Als een tijdsinterval (gemeten in
zwevende seconden) is opgegeven, dan wacht het programma deze hoeveelheid tijd
voordat u begint met het verwerken van de volgende host in de reeks.

-F Spawn-processen op de achtergrond - splitsen en loskoppelen; Op deze manier zijn alle hosts
in wezen parallel verwerkt! Het is een zeer krachtige optie - afhankelijk van jou
RAM-grootte en geheugengebruik, het zou geen probleem moeten zijn om er een paar te verwerken
honderden hosts parallel. Hoe dan ook, wees voorzichtig - als je te veel hosts hebt
de lijst, je zou je systeem onder belasting kunnen zetten. De stdout's van de achtergrond
processen worden omgeleid naar '/dev/null', maar u kunt `-l' of `-L' gebruiken om te schrijven
de uitvoer naar bestanden. Zie ook 'bugs en bekende problemen' in de handleidingpagina.

-f Spawn-processen op de achtergrond zonder de verbinding met tty te verbreken; Het is hetzelfde als '-F'
terwijl de stdout's van de voortgebrachte processen naar de terminal worden gestuurd. Ook de
ouderproces wacht tot zijn kinderen klaar zijn. Zie ook 'bugs en bekende problemen'
op de handleidingpagina.

-q Wees stil - sla uitvoer van spawn en login over; Bij het werken met de beveiligde shell, het
het is ook handig om `ssh' te gebruiken met de `-q' optie.

-Q Wees STIL - sla elke output over

-v Wees breedsprakig (standaard) - heft `-q' en `-Q' op

-l
Logopdrachtuitvoer naar bestand; De uitvoer van de voortgebrachte processen wordt toegevoegd aan het
bestand.

-L
Schrijf een apart logboek voor elke host waar geeft de basisnaam van het logboek aan
bestand. De volledige naam van een logbestand wordt gedefinieerd als " _ .log".

-j Neem het aangeroepen commando op in een journaalbestand met de naam '$HOME/.dish/journal';
Het houdt de geschiedenis bij van de uitgevoerde commando's en hun uitvoeringstijd. Een
unieke identifier is gekoppeld aan elke opdracht.

-J Noteer ook het aangeroepen commando en de voortgebrachte processen; Schrijf in de
journal-bestand de uitgevoerde opdracht, evenals de afzonderlijke processen die zijn voortgebracht en hun
tijdstip van uitvoering.

-o
Bestand met opdrachtregelopties doorgegeven aan het programma - standaard is
'$HOME/.schotel/opties'; De opties moeten gescheiden in het bestand worden geschreven - één per
lijn. Door middel van dit bestand kan men de standaard configuratie wijzigen: set up fork
modus standaard in te stellen, de standaardconnector te wijzigen, enzovoort. Bij het werken in
"kopieermodus", dwz door het programma aan te roepen als 'dicp', wordt '$HOME/.dish/options.dicp'
beschouwd als het standaard optiebestand.

-d activeer de diagnostische output van expect (kijk naar `man expect')

-D Debug-modus (dry-run); Druk omgevingsvariabelen, configuratiebestandsnamen en
commando's om uit te voeren en sluit vervolgens af. Deze optie moet als eerste in de opdracht worden gebruikt
lijn.

Voorbeelden


Houd er rekening mee dat de variabelen $host en $user worden geëvalueerd. Dus verandert $host
dynamisch zijn waarde tov de daadwerkelijke host-/accountnaam voordat een nieuw proces wordt voortgebracht. De
hetzelfde geldt voor $gebruiker.

a) Controleer de datum en uptime op hosts 192.168.0.1 en 192.168.0.2

gerecht -e 'datum \; uptime' [e-mail beveiligd] [e-mail beveiligd]

b) Distribueer '.profile' en '.bashrc' naar gastaccounts op 'host1' en 'host2'

schotel -E "scp $HOME/.profile $HOME/.bashrc guest@\$host:" host1 host2

or

dicp -e "$HOME/.profile $HOME/.bashrc guest@:" host1 host2

or

dicp -g "host1 host2" $HOME/.profile $HOME/.bashrc guest@:

or

dicp -g "guest@host1 guest@host2" $HOME/.profile $HOME/.bashrc :

c) Kopieer '.profile'-bestanden op afstand naar de lokale map op localhost

dicp -g "guest@host1 guest@host2 admin@host2" :.profile .profile.\$host

Hier zal de naam van het doelbestand (lokaal bestand) de externe accountnaam bevatten
zodat de lokale bestanden unieke namen hebben.

d) Gebruik `ssh' om in te loggen op 'host1' en kopieer van daaruit '.profile' naar 'host2'

Omdat de lijst met hosts niet leeg mag zijn, wordt een dummy-host gebruikt om de
proces. De `-t' optie is nodig om pseudo-tty toewijzing in `ssh' te forceren,
anders mislukt `ssh' met een fout bij het inloggen. Een tweede wachtwoord (a1-wachtwoord) is
vereist voor scp-authenticatie op 'host2':

schotel -a '' -E 'ssh -t gebruiker1@host1 scp .profile gebruiker2@host2:' dummy_host

Als het wachtwoord van 'gebruiker1' en 'gebruiker2' hetzelfde is, wordt u alleen gevraagd
eenmaal voor een inlogwachtwoord voor gebruiker1@host1 als u `-p1' gebruikt:

schotel -p1 -E 'ssh -t gebruiker1@host1 scp .profile gebruiker2@host2:' dummy_host

Of gelijkwaardig, en eenvoudiger:

schotel -p1 -t -e 'scp .profile gebruiker2@host2:' gebruiker1@host1

e) Vervang regels door `START_XNTPD=' door `START_XNTPD="yes"' in /etc/rc.config

Dit commando wordt uitgevoerd als rootgebruiker op elke host vermeld in 'Hosts.root':

schotel -u root -E 'ssh $user@$host "perl -pi -e
\"s/^START_XNTPD=.*\$/START_XNTPD=\\\"ja\\\"/g;\" /etc/rc.config"' -g Hosts.root

f) Bevries accounts van gebruikers op een beëindigingslijst

Door een script genaamd `FreezeUser.sh' te gebruiken, worden alle accounts van gebruikers gevonden op
'Terminate.User.lst' wordt vandaag om 24:00 uur op beide servergroepen bevroren
gedefinieerd in bestanden 'Hosts.1' en 'Hosts.2':

dish -E 'ssh root@$host "cat Terminate.User.lst | while read UN; do echo \"su -
admin -c \\\$HOME/bin/FreezeUser.sh \$UN\" | om 24:00; gedaan"' -g Hosts.1 -g
Gastheren.2

g) Print het externe configuratiebestand van een automounter uit

Log in als 'admin'-gebruiker op host 192.168.0.1, schakel over naar 'root' en cat het bestand
'/etc/auto.net' en print de datum uit. De optie `-a' zorgt ervoor dat het programma erom vraagt
u voor het root-wachtwoord op de externe host:

dish -u admin -a '' -E 'rsh -l $user $host su - root -c \"cat /etc/auto.net\;
datum\"' 192.168.0.1

h) Installeer een pakket op Debian GNU/Linux-hosts

Na het aankoppelen van een fileserver over samba, installeert u vanaf daar een debian dish-package op
alle actieve servers, maar sla hosts over bij onderhoud. Er zijn drie verschillende wachtwoorden
nodig voor authenticatie - een voor inloggen, de volgende voor su-root en de laatste voor
mounten van de fileserver:

schotel -a0 -a1 -a2 -g Debian.up -r Debian.maint -e 'su - -c \"mount -t smbfs
//FILESERVER/Pakketten.Dir /mnt/smb ; dpkg -i /mnt/smb/dish_1.19.1_all.deb\"'

i) Controleer op systeembelasting >2 met behulp van standaardconfiguratiebestanden 'hosts' en 'pass'

gerecht '(uptime |egrep \" (\[2-9\]|1\[0-9\])\\.\" && hostnaam) |plakken - -'

j) Vraag een MySQL-database op externe host 10.0.0.1

gerecht -pp -c 'mysql -p -u $user -h' -e 'gebruik mysql; tabellen tonen; beschrijf gebruiker;' -u
wortel 10.0.0.1

k) Verander het wachtwoord gelijktijdig op alle hosts/accounts

We gaan ervan uit dat de lijst met gebruikersaccounts is opgenomen in het bestand 'Accounts.lst',
terwijl een vermelding in de lijst de vorm "gebruiker@hostnaam" heeft. Na opdracht
uitvoering, wordt u eerst om het inlogwachtwoord (oud wachtwoord) gevraagd en vervolgens
voor het nieuwe wachtwoord dat uiteindelijk correct moet worden overgetypt:

dish -p '' -n '' -e passwd -g Rekeningen.lst

Of als alternatief alle hosts gelijktijdig en stil verwerken:

dish -pp -nn -f -Q -e passwd -g Rekeningen.lst

Als u het wachtwoord wilt wijzigen en `-nn' wilt gebruiken, dan is het a1-wachtwoord impliciet
gelijk aan het inlogwachtwoord (a0-wachtwoord).

l) Verander het wachtwoord van 'root' account (gebruik niet de `-a0' optie)

Als je het root-wachtwoord op 'remotehost' gaat veranderen, probeer dan:

schotel -nn -e passwd root@remotehost

Idem als voorheen, maar log in als gebruiker 'admin' (inlogwachtwoord), schakel dan over naar
'root' (a1-wachtwoord), en werk ten slotte het root-wachtwoord bij:

dish -a1 -nn -e 'su -c passwd' admin@remotehost

Wijzigen van het wachtwoord voor 'admin' op 'localhost', na inloggen als 'root' via
`telnet', wordt gedaan door:

schotel -nn -c telnet -u root -e 'passwd admin' localhost

Merk op dat voor het wijzigen van het wachtwoord, wanneer `-p ""' (of equivalent `-a0' of `-pp') niet
expliciet gebruikt, wordt ervan uitgegaan dat `passwd' niet om het oude wachtwoord zal vragen,
zoals in het geval van een wachtwoordwijziging door 'root'. Hetzelfde geldt ook als u kunt inloggen op een
account zonder een wachtwoord te typen, maar vervolgens vraagt ​​`passwd' u om het oude wachtwoord in te typen -
deze situatie doet zich voor wanneer men een ssh-sleutel gebruikt om in te loggen zonder
wachtwoord-authenticatie. Voor een dergelijk scenario is de juiste keuze van opties `-p0 -aa -nn'.

In het geval van goed voorbereide configuratiebestanden in '$HOME/.dish', kan men dish gebruiken als een
gedistribueerde shell voor een virtueel cluster van hosts, en voer het uit zonder iets op te geven
programmeerparameters, maar alleen het geven van een commando, zoals bijvoorbeeld `dish df -k /' of `dicp
.profiel :'.

Als allerlaatste opmerking moet men zich ervan bewust zijn dat in het geval van authenticatie met een wachtwoord,
Het geautomatiseerde inlogproces van dish is gebaseerd op de verwachting waarnaar de inlogprompt wordt gestuurd
de terminal zal de hoofdletterongevoelige regex-string `Password: *$' bevatten (maar zie ook
`-X'). Anders zal de authenticatieprocedure mislukken.

Gebruik schotel online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

  • 1
    Phaser
    Phaser
    Phaser is een snelle, gratis en leuke open
    source HTML5-gameframework dat biedt
    WebGL- en Canvas-weergave overdwars
    desktop- en mobiele webbrowsers. Spellen
    kan samen zijn...
    Phaser downloaden
  • 2
    VASSAL-motor
    VASSAL-motor
    VASSAL is een game-engine om te creëren
    elektronische versies van traditioneel bord
    en kaartspellen. Het biedt ondersteuning voor
    weergave en interactie van speelstukken,
    en...
    VASSAL-engine downloaden
  • 3
    OpenPDF - Vork van iText
    OpenPDF - Vork van iText
    OpenPDF is een Java-bibliotheek voor het maken van
    en het bewerken van PDF-bestanden met een LGPL en
    MPL open source-licentie. OpenPDF is de
    LGPL/MPL open source opvolger van iText,
    een...
    Download OpenPDF - Vork van iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Systeem voor geautomatiseerd
    Geowetenschappelijke analyses - is een geografische
    Informatie Systeem (GIS) software met
    enorme mogelijkheden voor geodata
    verwerking en analyse...
    SAGA GIS downloaden
  • 5
    Toolbox voor Java/JTOpen
    Toolbox voor Java/JTOpen
    De IBM Toolbox voor Java / JTOpen is een
    bibliotheek van Java-klassen die de
    client/server- en internetprogrammering
    modellen naar een systeem met OS/400,
    i5/OS, o...
    Toolbox voor Java/JTOpen downloaden
  • 6
    D3.js
    D3.js
    D3.js (of D3 voor gegevensgestuurde documenten)
    is een JavaScript-bibliotheek waarmee u
    om dynamische, interactieve gegevens te produceren
    visualisaties in webbrowsers. Met D3
    u...
    D3.js downloaden
  • Meer "

Linux-commando's

  • 1
    abidiff
    abidiff
    abidiff - vergelijk ABI's van ELF-bestanden
    abidiff vergelijkt de Application Binary
    Interfaces (ABI) van twee gedeelde bibliotheken
    in ELF-formaat. Het straalt een betekenis uit
    verslag...
    Voer abidiff uit
  • 2
    blijf
    blijf
    abidw - serialiseer de ABI van een ELF
    bestand abidw leest een gedeelde bibliotheek in ELF
    formaat en verzendt een XML-representatie
    van zijn ABI naar standaarduitvoer. De
    uitgestoten ...
    Voer abidw uit
  • 3
    copac2xml
    copac2xml
    bibutils - conversie van bibliografie
    nutsvoorzieningen ...
    Voer copac2xml uit
  • 4
    Copt
    Copt
    copt - kijkgaatje-optimizer SYSNOPIS:
    copt-bestand.. BESCHRIJVING: copt is een
    kijkgaatje-optimizer voor algemeen gebruik. Het
    leest code van zijn standaardinvoer en
    schrijft een...
    Kopt uitvoeren
  • 5
    collect_stx_titles
    collect_stx_titles
    collect_stx_titles - titel verzamelen
    verklaringen van Stx-documenten ...
    Voer collect_stx_titles uit
  • 6
    gatling-bank
    gatling-bank
    bank - http-benchmark ...
    Run gatling-bank
  • Meer "

Ad