Tips and Tricks: Difference between revisions

From Q
Jump to navigation Jump to search
Tgurr (talk | contribs)
No edit summary
Tgurr (talk | contribs)
No edit summary
Line 38: Line 38:


Anschließend kann man den Tomcat unter localhost:7777 erreichen.
Anschließend kann man den Tomcat unter localhost:7777 erreichen.
== Yakuake DCOP-Skripte ==
=== MultiSSH ===
Beschreibung:
Per SSH auf mehrere Hosts verbinden, dafür jeweils ein neues Yakuake Tab anlegen und entsprechend benennen.
<pre>
#!/bin/bash
[[ -n "$1" && -n "$2" ]] || {
    echo "Usage: ./multissh.sh \"user\" \"server1 server2\""
    echo " z.B.: ./multissh.sh \"root\" \"server1 server2\""; exit 0 ; }
lastid=`dcop yakuake DCOPInterface sessionIdList | awk -F, '{print $NF}'`
for i in $2;
do
        dcop yakuake DCOPInterface slotAddSession
        let "lastid += 1"
        dcop yakuake DCOPInterface slotRenameSession $lastid $i
        dcop yakuake DCOPInterface slotRunCommandInSession $lastid "ssh $1@$i"
done
exit 0
</pre>
=== MultiCommand ===
Beschreibung:
Ein Kommando in mehreren Yakuake Tabs ausführen.
<pre>
#!/bin/bash
[[ -n "$1" && -n "$2" ]] || {
    echo "Usage: ./multicommand.sh \"tabname1 tabname2\" \"kommando\""
    echo " z.B.: ./multicommand.sh \"server1 server2\" \"emerge --sync\""; exit 0 ; }
ids=`dcop yakuake DCOPInterface sessionIdList | sed 's/,/ /g'`
for i in $ids ; do
        sessionname=`dcop yakuake DCOPInterface slotSessionName $i`
        for x in $* ; do
                if [ "$sessionname" = "$x" ] ; then
                        dcop yakuake DCOPInterface slotRunCommandInSession $i "$2"
                fi
        done
done
exit 0
</pre>
[[Kategorie:Software]]
[[Kategorie:Software]]

Revision as of 16:44, 31 October 2007

Paketverwaltung

Zu welchem Paket gehört Datei X

# equery belongs -f <dateiname>

Welche Pakete haben USE-Flag X

# equery hasuse <useflag>

Backup von installiertem Paket anlegen

# quickpkg net-www/apache

Danach kann man das Paket auf einem anderen Rechner installieren oder schnell downgraden, wenn bei einem Update etwas schief gelaufen ist. Die Datei befindet sich dann in Template:Filename bzw. ein Symlink auf die Datei in Template:Filename. Zur Installation:

# emerge --usepkgonly "<net-www/apache-2.2.4"

Überflüssige Pakete erkennen und entfernen

# emerge depclean --pretend

Profil wechseln / auf neue Version updaten

# emerge eselect

# eselect profile list

# eselect profile set <nummer>

SCP Dateitransfer

Datenaustausch zwischen zwei Rechnern über Kommandozeile.

Datei hochladen:
# scp /root/htdocsbackup.tar.bz2 root@entfernter-server.de:/root/
Datei runterladen:
# scp root@entfernter-server.de:/root/htdocsbackup.tar.bz2 /root/htdocsbackup.tar.bz2

SSH Tunnel

Ist auf dem Server nur der SSH Port offen aber man möchte sich z.B. auf den auf Port 8080 laufenden Tomcat Webserver verbinden so kann man das über einen SSH Tunnel machen.

# ssh -N -i /home/benutzer/.ssh/id_dsa -L 7777:webserver:8080 root@webserver

Anschließend kann man den Tomcat unter localhost:7777 erreichen.

Yakuake DCOP-Skripte

MultiSSH

Beschreibung:

Per SSH auf mehrere Hosts verbinden, dafür jeweils ein neues Yakuake Tab anlegen und entsprechend benennen.

#!/bin/bash

[[ -n "$1" && -n "$2" ]] || {
    echo "Usage: ./multissh.sh \"user\" \"server1 server2\""
    echo " z.B.: ./multissh.sh \"root\" \"server1 server2\""; exit 0 ; }

lastid=`dcop yakuake DCOPInterface sessionIdList | awk -F, '{print $NF}'`

for i in $2;
do
        dcop yakuake DCOPInterface slotAddSession
        let "lastid += 1"
        dcop yakuake DCOPInterface slotRenameSession $lastid $i
        dcop yakuake DCOPInterface slotRunCommandInSession $lastid "ssh $1@$i"
done

exit 0


MultiCommand

Beschreibung:

Ein Kommando in mehreren Yakuake Tabs ausführen.

#!/bin/bash

[[ -n "$1" && -n "$2" ]] || {
    echo "Usage: ./multicommand.sh \"tabname1 tabname2\" \"kommando\""
    echo " z.B.: ./multicommand.sh \"server1 server2\" \"emerge --sync\""; exit 0 ; }

ids=`dcop yakuake DCOPInterface sessionIdList | sed 's/,/ /g'`

for i in $ids ; do
        sessionname=`dcop yakuake DCOPInterface slotSessionName $i`

        for x in $* ; do
                if [ "$sessionname" = "$x" ] ; then
                        dcop yakuake DCOPInterface slotRunCommandInSession $i "$2"
                fi
        done
done

exit 0


Kategorie:Software