Tips and Tricks: Difference between revisions
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
== | == Package management == | ||
=== To which package belongs file X === | === To which package belongs file X === | ||
| Line 38: | Line 38: | ||
== SSH tunnel == | == SSH tunnel == | ||
Very useful if the server you want to connect to has only the SSH port open and/or a firewall infront and you want to access for example a tomcat server running on port 8080. | |||
{{Codeline|# ssh -N -i /home/ | {{Codeline|# ssh -N -i /home/<user>/.ssh/id_dsa -L 7777:remote-host.de:8080 root@remote-host.de}} | ||
After establishing the tunnel you can access the tomcat server of the remote machine port 8080 at your localhost port 7777. | |||
== Yakuake DCOP | == Yakuake DCOP scripts == | ||
=== MultiSSH === | === MultiSSH === | ||
Connect to multiple hosts via SSH and open/name a new Yakuake tab for each | |||
multissh.sh | multissh.sh | ||
<source lang="bash"> | <source lang="bash"> | ||
| Line 68: | Line 68: | ||
=== MultiCommand === | === MultiCommand === | ||
Run a command in multiple open Yakuake tabs | |||
multicommand.sh | multicommand.sh | ||
<source lang="bash"> | <source lang="bash"> | ||
| Line 74: | Line 74: | ||
[[ -n "$1" && -n "$2" ]] || { | [[ -n "$1" && -n "$2" ]] || { | ||
echo "Usage: ./multicommand.sh \"tabname1 tabname2\" \" | echo "Usage: ./multicommand.sh \"tabname1 tabname2\" \"command\"" | ||
echo " z.B.: ./multicommand.sh \"server1 server2\" \"emerge --sync\""; exit 0 ; } | echo " z.B.: ./multicommand.sh \"server1 server2\" \"emerge --sync\""; exit 0 ; } | ||
| Line 111: | Line 111: | ||
[[ | [[Category:Software]] | ||
Revision as of 23:16, 26 April 2008
Package management
To which package belongs file X
# equery belongs -f <dateiname>
Which packages has USE-Flag X
# equery hasuse <useflag>
Backup an installed package
# quickpkg net-www/apache
After this you can install the package on another machine or do a fast downgrade if something went bad after an update. You can find the file under Template:Filename and in this example a symlink to the apache file in Template:Filename. To install the now precompiled binary use:
# emerge --usepkgonly "<net-www/apache-2.2.4"
Detect and get rid of leftover packages
# emerge depclean --pretend
Change your current profile
# emerge eselect
# eselect profile list
# eselect profile set <nummer>
SCP file transfer
File transfer via commandline.
Upload file:
# scp /root/htdocsbackup.tar.bz2 root@remote-host.de:/root/
Download file:
# scp root@remote-host.de:/root/htdocsbackup.tar.bz2 /root/htdocsbackup.tar.bz2
Upload directory:
# scp -r /root/directory root@remote-host.de:/root
Download directory:
# scp -r root@remote-host.de:/root/directory /root
SSH tunnel
Very useful if the server you want to connect to has only the SSH port open and/or a firewall infront and you want to access for example a tomcat server running on port 8080.
# ssh -N -i /home/<user>/.ssh/id_dsa -L 7777:remote-host.de:8080 root@remote-host.de
After establishing the tunnel you can access the tomcat server of the remote machine port 8080 at your localhost port 7777.
Yakuake DCOP scripts
MultiSSH
Connect to multiple hosts via SSH and open/name a new Yakuake tab for each multissh.sh
#!/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
Run a command in multiple open Yakuake tabs multicommand.sh
#!/bin/bash
[[ -n "$1" && -n "$2" ]] || {
echo "Usage: ./multicommand.sh \"tabname1 tabname2\" \"command\""
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
KDE4 Fixes
.gtkrc isn't honoured by GTK Applications anymore
KDE overrides the GTK colours with global ones, if you want that. If not (since it also overrides the GTK theme with the ugly default one) you can disable that behaviour under System Settings -> Appearance -> Colors at the bottom. This does not always work, so copy over your .gtkrc-2.0 from your homedir or one of the themes that come with the theme pack.
# cp ~/.gtkrc-2.0 ~/.kde/share/config/gtkrc-2.0
# cp /usr/share/themes/Clearlooks/gtk-2.0/gtkrc ~/.gtkrc-2.0
For more information have a look at GTK Applications under KDE.
Reset to the default Plasma layout
Log out and deleting from tty:
# rm ~/.kde/share/config/plasma*
Change the Dolphin standard view to detailed view for ALL folders
Open Dolphin -> Settings > Configure Dolphin -> Views -> Common Tab -> and mark -> Use the same view for all folders