Archiv der Kategorie: Linux

Alles rund um die Pinguine – auf dem Desktop und dem Server

clamd

Ich muss mal wieder von Hand löschen, weil clamav über lange Dateinamen stolpert. Das nervt tierisch … vor allem weil es sich in diesem Fall a) um eine saubere Datei handelt …

WARNING: Ignoring deprecated option –no-archive
ERROR: Can’t move file /home/administrators/administrator/infected/TeamViewer_Setup_de.exe.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001.001

… und b) noch dazu kommt, dass dieser Dateiname IMHO von clamav beim Verschieben aus dem Home des Users selbst erzeugt wurde.

/dev/raw1394

Jaunty macht mich fast kirre: Während Hardy meine DV Camera ohne Probleme erkennt und ich mit Kino dann arbeiten kann, geschieht auf dem Laptop unter Jaunty … nichts, außer Fehlermeldungen, dass /dev/raw1394 entweder nicht vorhanden oder nicht mit den nötigen Rechten ausgestattet sei. Jetzt hab ich eine ganze Reihe von Tipps ergooglet und in der hier angegebenen Reihe dann auch umgesetzt. Ob auch einzelne davon ausreichend sind, möge jeder selbst herausfinden, denn welcher in Kombination mit welchem davon dann am Ende für meinen Laptop den Ausschlag gab, weiß ich auch nicht. Wer sich der Reihe nach durchtastet – immer wieder neu booten, sonst reicht es einmal am Ende.

Es funktionieren bei mir nun die folgenden Einstellungen und Anpassungen für die Arbeit mit Firewire Kameras und Kino unter Ubuntu Jaunty:

1. Anpassen von /etc/modules:

sudo vi /etc/modules

Hier müssen die folgenden Zeilen enthalten sein:

raw1394
dv1394
video1394

2. Anpassen der udev rules:

sudo vi /lib/udev/rules.d/50-udev-default.rules

Hier im Abschnitt zu firewire die folgenden Zeilen einfügen (sofern diese noch nicht vorhanden sind):

# Firewire
KERNEL==“dv1394[0-9]*“, NAME=“dv1394/%n“, GROUP=“video“
KERNEL==“video1394[0-9]*“, NAME=“video1394/%n“, GROUP=“video“
KERNEL==“raw1394″, GROUP=“disk“

Das Device raw1394 hab ich also der Gruppe disk zugeordnet und nicht, wie viele Tipps im Netz meinen, der Gruppe video. Eine neue Zeile beginnt übrigens immer mit KERNEL (egal wie das nun im Browser aussehen mag).

3. Anpassen der bootmisc.sh

sudo vi /etc/init.d/bootmisc.sh

Hier am Ende (nach dem \:) die folgenden Zeilen einfügen:

# Begin Edit
mknod /dev/raw1394 c 171 0
chown root:video /dev/raw1394
chmod 666 /dev/raw1394
#End Edit

: exit 0

Wie gesagt – alles nur geklaut und der Reihe nach dann zusammen gestückelt, sehr Ergebnisorientiert aber am Ende wirksam. Dass es sicherlich (bei systematischer Herangehensweise) intelligentere Eingriffe ins System gibt (bei den Tipps oben ist offensichtlich, dass die jeweiligen Gruppenzuordnungen nicht zueinander passen) ist mir auch klar. War mir heute egal. Ich will schneiden und nicht im System fummeln.

Meine Quellen:

http://www.kdenlive.org/forum/toubleshooting-firewire-capture-ubuntu-jaunty-904-how

http://ubuntuforums.org/showthread.php?t=2792

https://help.ubuntu.com/community/Firewire

Die hier wiedergegebene Anleitung funktionierte auf Dell Latitude D830 und Dell Vostro 1510.

vmmanager

Meine XP VM wächst mir langsam aus der Platte heraus. Also musste ich die Festplatte der virtuellen Maschine vergrößern, was nur mit VMWare Workstation selbst gelingt. Für alle anderen ist aber das GPL Tool vmmanager für Windows auch unter Wine geeignet.

Hinweis: Eine Vergrößerung der Windows Systempartition kann (!) gelingen, muss aber nicht. Voraussetzung scheint hier zu sein, dass die Datei pagefile.sys in C:\\ gelöscht wird. Manchmal klappt es dann aber auch nicht. In diesem Fall: Eine Möglichkeit sperrige Systemfestplatten doch noch zu vergrößern besteht darin, die virtuelle Festplatte der einen Windowsinstallation in einer zweiten einzubinden.

Als Vorarbeit (und Sicherung) auf jeden Fall die virtuelle Maschine kopieren – am besten aus VMWare selbst heraus. Dann darf auch was schief gehen. Auch darauf achten, dass keine Snapshots der VM existieren (was automatisch der Fall sein dürfte, wenn eine Kopie mit VMWare erstellt wurde), sonst klappt es mit der Größenanpassung ebenfalls nicht.

Weiter sicherstellen, dass von .wine/drive_c im Homeverzeichnis ein Symlink auf das Verzeichnis der virtuellen Maschinen unter Linux existiert. Bei mir wäre dies demnach

/home/dirk/.wine/drive_c

Dann das Archiv von der angegebenen Adresse herunterladen und in .wine/drive_c/Programme entpacken. Das ergibt den Ordner

/home/dirk/.wine/drive_c/Programme/vmmanager-linux.1.03

Eine Konsole in diesem Ordner öffnen und dann mit

wine vmmanager.exe

den vmmanager starten.

vmmanager

Auf dem Reiter [Hard Disk] ein Häkchen bei [Unlock] setzen und dann die neue Größe eingeben. Die Anpassung ist in wenigen Sekunden über den Reiter [Finish] erledigt – allerdings weiß dann Windows noch nichts hiervon und muss erst lernen.

Hierzu mit Hilfe von Parted Magic die Partition händisch vergrößern. Das ISO von Parted Magic kann von der angegebenen Seite heruntergeladen werden und wird über den Hardware-Konfigurationsdialog der VM in VMWare als CD eingebunden.

cddvd

Auf der Beschreibungsseite der VM befindet sich hierzu ein Knopf [Edit virtual machine settings] – ein Doppelklick auf das CD/DVD Icon im Programmfenster von VMWare hilft aber auch. Meist steht hier „Auto detect“.

Dann die VM von der Parted-Magic CD booten. Evtl. muss hierzu das BIOS der VM erst entsprechend eingestellt werden. In diesem Fall muss man ziemlich schnell sein: Sobald die VM startet mit der Maus auf die VM klicken und dann [F2] drücken, damit das BIOS Setup betreten wird. Hier auf dem Reiter [Boot] das CD Laufwerk nach oben schieben. Einstellungen speichern und nochmal versuchen.

gparted1

In Parted Magic gparted starten und die Partition vergrößeren. Das geht hübsch mit der Maus.

gparted2

Nicht vergessen, dass gparted zur Umsetzung durch Klick auf [Apply] aufgefordert werden muss.

Nach der erfolgreichen Größenanpassung der Systempartition Parted Magic herunterfahren und die VM starten, nachdem das ISO wieder ausgeworfen und „Auto detect“ für das CD/DVD Laufwerk der VM wieder eingeschaltet wurde. Wurde an einer fremden Systempartition gearbeitet, diese wieder der eigentlichen VM zuordnen.

Weitere Hinweise: http://vsphere-land.com/tips-tricks/re-sizing-virtual-disks

gpick

gpick

gpick ist ein kleines, praktisches Tool, um z.B. aus Webseiten schnell Farben gezielt auszuwählen. Zwar kann der Gimp das auch – aber den zu starten dauert länger.

Die Bedienung ist einfach:

  1. In gpick ein Sechseck anklicken, das die Farbe aufnehmen soll (im Bild oben ist das links oben der Bereich „Swatch“).
  2. Mit der Maus über die Farbe fahren (im Bild oben ist die „Zoomed area“ auf der linken Seite unten zu sehen).
  3. Leertaste drücken – die Farbe wird ausgelesen.

Bei Hardy ist gpick nicht in den Quellen, sondern muss gesondert als DEB installiert werden. Evtl. schafft es die zugehörige Gruppe aber, gpick in Launchpad zu pflegen.

cpio

cpio ist ein nettes Hilfesmittelchen zum Ein- und Auspacken von Verzeichnisinhalten. Dummerweise ist die man page zuerst recht unverständlich, die Dokumentation im Netz jedoch sehr klar, wenn man von so wundersamen Formulierungen wie der Folgenden absieht:

In copy-out mode, cpio copies files into an archive.

Damit ist die Eselsbrücke schon abgebrochen. Warum nicht:

In copy-out mode, cpio copies files out of a directory and to an archive.

Die praktischen Schalterchen im Überblick:

ls | cpio -ov > directory.cpio

Einpacken eines Verzeichnisses ohne Unterverzeichnisse.

find . -print -depth | cpio -ov > dirtree.cpio

Einpacken eines Verzeichnisses mit Unterverzeichnissen.

cpio -iv < directory.cpio

Auspacken des Archivs in das aktuelle Verzeichnis.

cpio -idv < dirtree.cpio

Auspacken eines Verzeichnisbaumes in das aktuelle Verzeichnis.

Beide Schritte, ein- und auspacken, lassen sich auch mit dem Schalter -p (pass mode) kombinieren:

find . -depth -print0 | cpio –null -pvd anderesverz

Die Optionen an find helfen bei der Fehlervermeidung in Kombination mit dem –null bei cpio. anderesverz ist das Zielverzeichnis, in das der Inhalt des aktuellen Verzeichnisses kopiert wird.

find . -print -depth | cpio -ov -H tar  > dirtree.cpio.tar

Der Schalter -H erlaubt die Angabe von Archivformaten – im Beispiel oben wäre das dann tar. Da das aber viel länger ist als

tar cfz dirtree.tar.gz directoryname

das darüber hinaus noch stärker komprimierte Archive erzeugt, ist die Option wohl für die Katz. Die oben angegebene Seite listet allerdings Archivformate, die Historiker durchaus interessieren könnten. Mit cpio bekommt man die dann in den Griff.

Portable Apps unter Wine

… laufen ohne Probleme. Hätte ich nicht gedacht.

ff35_portable

Eine sehr wenig elegante Art, FF3.5 unter Ubuntu Hardy 64 Bit zum Laufen zu überreden – aber immerhin möglich 🙂 Wie es richtig geht, steht z.B. hier (und im Auge zu behalten ist vor allem die Entwicklung hier im PPA).

winscp_portable

Auch WinSCP läuft und Notepad ++ und FileZilla und und und …

portable_ooo31

… OpenOffice 3.1 ebenfalls.

Ubuntu Gutsy

… auch 7.10 genannt. Nicht gerade die neueste Variante, aber für meinen apt-cache in der Schule reicht das, weil der Rechner von Außen nicht zu erreichen ist. Erst in den Sommerferien kommt da ein neuer Rechner hin, vorher find ich nicht die Zeit. Bis dahin wollte ich die alte Kiste noch mit Updates versorgt wissen, die ich über lange Zeit schlicht verschlafen hatte. Die letzten Aktualisierungen lassen sich noch von old-releases einspielen:

sudo su –
cd /etc/apt
mv sources.list sources.list.old
cat sources.list.old | sed ’s/de.archive/old-releases/‘ > sources.list
apt-get update
apt-get upgrade

Bei Fehlermeldungen die sources.list mal auf Zeilen durchsehen, die nicht auf den Suchen und Ersetzen Befehl mit sed passen und im Notfall löschen. Der Server mit den alten Releases ist schnarchelangsam – also ein wenig Geduld mitbringen. Dafür kann man sich dort aber noch ein 4.10er Ubuntu herunterladen 😉

Bildschrumpfede

Hier hab ich ein Skript für imagemagick gefunden, das ein Bild so lange in den Abmessungen schrumpft, bis es eine bestimmte Größe in KB hat. Ich brauch aber meistens keine Größenanpassungen, sondern lediglich eine „Gewichtsreduktion“ schon in den Abmessungen angepasster Bilder.

Ein Script für die Anpassung der Größe einer einzelnen Datei, ohne die Abmessungen anzufassen, könnte so aussehen:

#!/bin/bash
if [ $# -ne 2 ]
then
echo -e „\nusage:  $0 <file size limit> <image>\n“
exit
fi
IMAGE_FORMAT=jpg
FILE_SIZE_LIMIT=$1
IMAGE_IN=$2
BASENAME=`echo ${IMAGE_IN} | cut -d‘.‘ -f-1 `
IMAGE_OUT=${BASENAME}.smaller.jpg
FILE_SIZE=`ls -sk $IMAGE_IN | cut -d‘ ‚ -f1`
if [ $FILE_SIZE -ge $FILE_SIZE_LIMIT ]
then
echo „reducing $IMAGE_IN from: $FILE_SIZE KB to $1 KB“
SIZE=`identify $IMAGE_IN | cut -d‘ ‚ -f7`
S=`echo $SIZE`
echo „SIZE: ${S}“
QUAL=100
while [ $FILE_SIZE -ge $FILE_SIZE_LIMIT ]
do
let QUAL=QUAL-1
echo „Current quality: ${QUAL}“
convert $IMAGE_IN -quality ${QUAL} $IMAGE_OUT
FILE_SIZE=`ls -sk $IMAGE_OUT | cut -d‘ ‚ -f1`
echo „Current filesize: $FILE_SIZE KB“
done
mv $IMAGE_OUT ${BASENAME}.${QUAL}.${IMAGE_FORMAT}
fi

Den obigen Codeschnipsel für eigene Versuche und Anpassungen in eine Textdatei einfügen (nennen wir sie filesize.sh) und diese ausführbar machen.

./filesize.sh 100 bild.jpg

macht dann bild.jpg 100kb groß und speichert das Ergebnis in der Datei

bild.qualitätsstufenangabe.jpg

Oft muss man aber gleich ganze Ordner bearbeiten – was mit dem Script oben auch ginge:

find /pfad/zum/ordner -iname „*.jpg“ -exec filesize.sh 100 {} \;

Meist ist das aber doch viel zu dick aufgetragen, denn ohne Script geht das schnell mal so:

for i in `ls *.jpg`; do convert -quality 80 $i conv_$i; done

Dann schau man sich das Ergebnis an

ls -l conv*.jpg

und schreibt, sollte es nicht passen, halt eine niedrigere Zahl hinter -quality, nachdem man den ersten Durchgang mit

rm conv*.jpg

gelöscht hat. So lange bis es passt. Schnell und dreckig.

Nachdem die Zeilen einmal eingegeben sind, stecken die in der History der Bash und können mit den Cursortasten nach Oben zügig aufgerufen oder noch Tage später mit [Strg] [R] gesucht und gefunden werden.