deb Pakete auflisten

Immer wieder bin ich auf der suche nach Paketen:

dpkg --get-selections | less
Er liefert mir alle Pakete die per apt installiert sind und listet sie in der less auf.

Oder wenn man bestimmte Pakete sucht:
dpkg -l "linux-image*"| grep ^ii

Und wenn man wissen will was sich in dem Pakte befindet:
dpkg -L less

Rsync vom Server zum BackupServer

Zunächst muss ein Schlüsselpaar erstellt werden. Das machen wir mit ssh-keygen

ssh-keygen -b 4096 -t rsa -f rsync

Kein Passfrase eingeben sonst kann man das nicht automatisieren. Abschließend wurden die folgenden Dateien in ~/.ssh/ erstellt.

rsync (ist der private key)
rsync.pub (ist der public key)

Den Public Key auf BackupServer kopieren, damit der lokale Server autorisiert werden kann.

backup@BackupServer:~$ cd /home/backup/.ssh
backup@BackupServer:~/.ssh$ cat rsync.pub >> authorized_keys
backup@BackupServer:~/.ssh$ chmod 0600 authorized_keys

Achtung! Falls schon eine "authorized_keys" Datei existiert nicht überschreiben, sondern anhängen.
Zum Testen und um Akzeptieren des Zertifikates könnt ihr euch per SSH verbinden.

root@server:~$ ssh -i /root/.ssh/rsync backup@BackupServer

Wenn nun die Verbindung direkt aufgebaut wird, ohne die Abfrage eines Passworts, habt ihr alles richtig gemacht.

root@server:~$ rsync -e "ssh -i /root/.ssh/rsync" -avcuz /home/Tux/ ZielServer:/home/Tux/Tuxbackup/

Hier noch eine Übersicht welche Befehle es gibt:

-a Archiv: rekursiv, mit Links und allen Rechten (als das gleich wie: -rlptgoD)
-v Fortschrittsanzeige
-c Checksummen von Dateien vergleichen
-C Unwichtige Dateien ignorieren
-u Update: neue Dateien nicht überschreiben
-H Hardlinks auf dem Ziel synchronisieren
-n Nichts tun, nur zeigen, was getan würde
-e ssh SSH für die Verbindung nutzen
–delete Lokal gelöschte Dateien auch auf dem Ziel entfernen
–modify-window=N Toleranz für Zeitstempel, die Rsync noch als gleich auffasst
-z Zip: Dateien vor dem Übertragen komprimieren (spart Bandbreite, kostet Rechenzeit)

GIP 5

#include 

using namespace std;

void hw(void)
{
	cout << "Hello wordl!" << endl;
}

void cbv1(double d)
{
	cout << d << endl;	
}

char cbv2 (double d)
{
	if(d >= 0)
	{
		return 'p';
	}
	return 'n';
}
void cbr1(float &f)
{
	f = 12.345;
}

int cube(int l, int b, int h=1)
{
	return l * b * h;
}

int main (void)
{
	/* Aufgabe a) */
	hw();

	/* Aufgabe b) */
	cout << "Wert von a in cbv1 = ";
	cbv1(12.6);

	/* Aufgabe c) */
	double d = 7.1234;
	cout << "Wert von a in cbv1 = ";
	cbv1( d );

	/* Aufgabe d) */
	cout << "Ergebnis von cbv2 mit Parameter -23: " << cbv2 (-23) << endl;;
	cout << "Ergebnis von cbv2 mit Parameter +10: " << cbv2 (10) << endl;;

	/* Aufgabe e) */
	float f=0;
	cout << "Vor dem Aufruf von cbr1: f = " << f << endl;
	cbr1(f);
	cout << "Vor dem Aufruf von cbr1: f = " << f << endl;
	
	/* Aufgabe f) */
	cout << "Daten (L: 10 B: 11 H: 12)" << endl << "Rauminhalt: " << cube( 10, 11, 12 ) << endl;

	cout << "Daten (L: 10 B: 11 H: 1)" << endl << "Flaeche: " << cube( 10, 11 )  << endl;

	return 0;	
}

GIP 4

#include 
#include 

using namespace std;

int game(int max);

int main (void)
{
	int level=0;

	while(true)
	{
		cout << "Welchen Level moechten Sie spielen? (1, 2 oder 3) ";
		cin >> level;

		switch(level)
		{
			case 1:
				return game(10);			
				break;
			case 2:
				return game(100);
				break;
			case 3:
				return game(1000);
				break;
			default:
				break;
		}
	}
	return 0;
}

int game(int max)
{
	int ip=0, zahl=0;

	srand ( time(NULL) );
	zahl = rand()%max + 1;

	for(int i=1; ip != zahl; i++ )
	{
		cout << "Zahl = ? (1 bis " << max << ") ";
		cin >> ip;
		
		if(ip < zahl)
		{
			cout << "Die eingegebene Zahl ist zu klein!" << endl << endl;
		}
		else if (ip > zahl)
		{
			cout << "Die eingegebene Zahl ist zu gross!" << endl << endl;
		}
		else if(ip == zahl)
		{
			cout << "Richtig! Die Zahl lautet " << zahl << endl <<"Sie haben " << i << " Versuche gebraucht." << endl << endl;
			return i;
		} 
		else 
			--i;
	}
	return 0;
}

Partiton Kopiren

Da meine Notebook HD seit längeren immer mal wieder ein helles "Fipsn" von sich gegeben hat, habe ich mir mal eine neue WD gegönnt. Und da ich keine Lust hatte alles neu zu installieren habe ich die Folgenden Befehle zum Kopieren der Partition auf meinen Renchener und dann auf die neue HD gefunden.

1. Image erstellen:
dd if=/dev/hda of=/mnt/hdb1/myimage.img

2. Image zurückschreiben:
dd if=/mnt/hdb1/myimage.img of=/dev/hda

Quelle: unixboard.de