Archiv nach Schlagworten: Linux

Acer Aspire One D250 :: Wireless Treiber

Heute habe ich mein Netbook aus dem Jahr 2009 auf das aktuelle Lubuntu upgedatet. Nach der Installation ging allerdings mein WLAN nicht mehr.

Folgende Schritte haben es wieder zum Leben erweckt

1) zuerst muss ein Modul in die „Blacklist“, das geht folgendermaßen:

vim /etc/modprobe.d/blacklist.conf

dort dann folgende Zeile hinzufügen:

blacklist b43

2) folgenden Befehl ausführen

sudo apt-get install --reinstall bcmwl-kernel-source

danach den Rechner neu starten und WLAN sollte funktionieren

man kann das noch prüfen:

iwconfig

zudem sollte das Lämpchen für WLAN nach dem Neustart leuchten.

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

SVN :: TortoiseSVN over SSH, different port

Manch einer hat unter einer Domain mehrere PC’s hängen, die per SSH erreicht werden können – über verschiedene Ports nach außen.

Windows

Ist dies der Fall und SVN soll über SSH genutzt werden, dann sind folgende Konfigurationen vorzunehmen:

C:\Users\[YOUR_NAME]\AppData\Roaming\Subversion\config

editieren und dort nach „[tunnel]“ suchen. direkt darunter kommt jetzt die Anpassung des SSH Befehls:

ssh2345 = C:\\Program Files\\TortoiseSVN\\bin\\TortoisePlink.exe -P 2345

wobei „ssh2345“ frei wählbar ist.

In TortoiseSVN muss man jetzt für einen Checkout folgendes eingeben:

svn+ssh2345://NAME@DOMAIN/PATH_FROM_ROOT_DIRECTORY

als Beispiel:

svn+ssh2345://me@mydomain.com/var/repos/svn/testProject

Linux

Unter Linux geht es ähnlich. Dort gibt es im home – Verzeichnis ein Unterverzeichnis „.subversion“ in diesem Ornder gibt es eine „config“ Datei. Diese muss editiert werden, und auch hier nach „[tunnel]“ gesucht werden.
Hier muss jetzt unter dem „[tunnel]“ folgendes eingefügt werden:

ssh2345 = ssh -p 2345

ein Beispiel zum auschecken wäre dann:

svn co svn+ssh2345://me@mydomain.com/var/repos/svn/testProject
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

RaspberryPi :: Backup SD-Card / Restore SD-Card

Um ein Backup der SD-Karte zu erstellen, habe ich ein anderen Linux-PC verwendet und die Karte mittels Card-Reader angesteckt.

Dort wird sie automatisch gemountet was bedeutet, dass man per

df -h

den Device-Namen erfährt, bei mir sdc

daher kann ich jetzt ein Backup erstellen mittels

sudo dd if=/dev/sdc of=/home/linux/myImage.img bs=1M

man kann es auch gleich zippen:

sudo dd if=/dev/sdc of=~/myImage.img bs=1M  | gzip > ~/myImage.gz

zurückgeladen kann es wenn die Pfade getauscht werden:

gzip -dc ~/myImage.gz | sudo dd of=/dev/sdc bs=1M
VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

RaspberryPi :: Fileserver

Ich habe mir einen Raspberry Pi besorgt um diesen als Fileserver einzusetzten. Hierfür habe ich eine externe USB 2.0 HDD angeschlossen, auf der die Files abgelegt werden.

1) Raspberry Pi einrichten:

sudo raspi-config
sudo apt-get install samba samba-common samba-common-bin
sudo apt-get install vim
sudo apt-get install fuse ntfs-3g

2) neuen Benutzer anlegen:

sudo useradd -G users NAME

das Samba Passwort muss extra gesetzt werden:

smbpasswd - U NAME

3) Externe HDD einbinden

Da meine HDD mit NTFS formatiert ist musste ich noch folgendes Programm installieren:

sudo apt-get install cifs-utils

Jetzt ist es nötig ein Verzeichnis anzulegen, in welches die Festplatte eingebunden werden soll. Danach muss das Verzeichnis noch der Gruppe „users“ zugeordnet werden, damit diese Zugriff erhalten.

sudo mkdir /daten/server
sudo chgrp users -R /daten

danach die Festplatte in die „fstab“ Datei eintragen, damit sie automatisch gemountet wird

sudo vim /etc/fstab

ich habe folgendes eingetragen:

UUID=3C58E62B58E5E39C   /daten/server   ntfs    users,rw        0       0

die UUID kann so herausgefunden werden (gibt auch gleich Auskunft über das Device, bei mir „/dev/sda1“:

blkid

die Konfiguration kann getestet werden:

sudo mount -a

4) Samba Konfiguration anpassen:

sudo vim /etc/samba/smb.conf

dort dann nach „[printers]“ suchen, darüber für jede Freigabe folgendes einfügen:

[daten]
   comment = Daten
   browseable = yes
   path = /daten/server
   valid users = @users
   force group = users
   create mask = 664
   directory mask = 0775
   read only = no

danach Samba Service neustarten:

sudo service samba restart

5) Optional :: Debian – Package aus CVS Sourcen erzeugen

(Dieser Punkt kann überspruchen werden, also direkt weitermachen bei 6.)

Ist das alles geschaft hat man schon weitere Ansprüche an das System. Man verwendet ja nicht ohne Grund einen Raspberry Pi als Fileserver – man will Strom sparen. Das ist ja alles schön und gut, aber die externe 3.5″ HDD läuft einfach munter weiter, auch wenn kein User diese momentan verwendet. Abhilfe schaft hier das Programm „hd-idle“ welches zuerst kompiliert werden muss oder von hier (ganz unten) runterladen. Ich habe die bei mir auf dem Raspberry (Debian wheezy, Version 2013-02-09) kompilierte Datei angehängt.

Das Programm herunterladen mit einem CVS Client (der erste CVS Befehl muss einfach bei der Passwortabfrage mit ENTER bestätigt werden -> kein Passwort)

sudo apt-get install cvs
cvs -d:pserver:anonymous@hd-idle.cvs.sourceforge.net:/cvsroot/hd-idle login
cvs -z3 -d:pserver:anonymous@hd-idle.cvs.sourceforge.net:/cvsroot/hd-idle co -P hd-idle

um jetzt ein eigenes Debian Pakacke zu erzeugen benötigt man folgendes Programm

sudo apt-get install debhelper

danach das Paket erzeugen (zuerst in das neu angelegte Verzeichnis „hd-idle“ wechseln:

cd hd-idle
sudo dpkg-buildpackage -rfakeroot

Die fertig kompilierte Datei befindet sich ein Verzeichnis höher.

6) hd-idle installieren

Archiv des schon erzeugten Debian Packages: hd-idle_1.04.tar
falls Punkt 5) übersprungen wurde, dann einfach die verlinkte Datei auf den Raspi laden.
hd-idle installieren, anschließend den Service starten und den Autostart des Programms vorbereiten:

sudo dpkg -i hd-idle_*.deb
sudo service hd-idle start
sudo update-rc.d hd-idle defaults

getestet werden kann hd-idle folgendermaßen (Dieser Befehl setzt für die Festplatte „sda“ eine automatische Abschaltung nach 10s, mehrere Festplatten können mit einem weiteren „-a …“ hinten angefügt werden):

hd-idle -i 0 -a sda -i 10

Jetzt will man diese Prozedur natürlich nicht nach jedem reboot neu starten, daher automatisieren wir dies:
Also editieren wir die Konfigurationsdatei:

sudo vim /etc/default/hd-idle

und ändern ganz oben die Zeile in folgende:

START_HD_IDLE=true

und fügen ganz am Ende der Datei einen zu oben ähnlichen Befehl ein (auch hier ist die vom Mounten bekannte UUID notwendig, damit die Festplatte immer richtig angesprochen wird, auch wenn sich einmal der USB Port ändern sollte):

HD_IDLE_OPTS="-i 0 -a /dev/disk/by-uuid/3C58E62B58E5E39C -i 900"

7) Sicherheit erhöhen

Standardmäßig hat der Benutzer „pi“ das Passwort „raspberry“. Dieses muss geändert werden, zudem ist es nicht sinnvoll keine Passwortabfrage bei der Eingabe von „sudo“ zu bekommen.
Um dies zu ändern folgenden Befehl ausführen:

sudo visudo

hier habe ich folgende Zeilen geändert:

root    ALL=(ALL:ALL) ALL
lukas   ALL=(ALL:ALL) ALL
# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

und die wichtigste:

#pi ALL=(ALL) NOPASSWD: ALL

Anhang

hd-idle_1.04.tar

VN:F [1.9.22_1171]
Rating: 5.0/5 (3 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 2 votes)

Automatic execute on startup :: Debian Linux (Raspberry Pi)

I’ve got a Raspberry Pi with connected camera. When the Pi boots up there should be executed a script which starts the camera software.

You must create an new file in /etc/init.d/ and then add the following content:

# /etc/init.d/startcam

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    /home/pi/start.sh
    ;;
  stop)
    pkill webcam
    echo "stopped"
    ;;
  *)
    echo "Usage: /etc/init.d/startcam {start|stop}"
    exit 1
    ;;
esac

exit 0

then make the file executeable

sudo chmod +x /etc/init.d/startcam

to test your script, you must be shure that it isn’t active

ps -ef | grep webcam

then start the script using

sudo /etc/init.d/startcam start

or just reboot your computer and check once again if your script is active.

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +2 (from 2 votes)

Eclipse :: undefined reference to sqrt

Wenn man versucht unter Linux mit Eclipse ein Programm mit gcc zu kompilieren und während des Kompilierens folgender Fehler auftritt

undefined reference to sqrt

muss man hier folgende Einstellung vom Linker ändern:

Project -> Properties -> C/C++ Build -> Settings -> Tool Settings (Tab) ->
GCC C Linker

jetzt unter Command folgendes einfügen (nach gcc, Leerzeichen nicht vergessen)

-lm

danach sollte alles funktionieren

VN:F [1.9.22_1171]
Rating: 4.0/5 (4 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Shell Script Zähler in Datei

Ein einfaches Script um z.B. bei einem Backupscript alles 7 Tage einen bestimmten Befehl auszuführen.
einfach in eine Datei schreiben, und diese mit

chmod +x zaehler.sh
zaehler=0
while read line
do
        zaehler=$((line + 1))
        echo $zaehler
done < "zaehler.txt"

rm "zaehler.txt"

if [ $zaehler -gt 7 ]; then
        zaehler=0
fi

echo $zaehler >> "zaehler.txt"

ausfürhern mit

./zaehler.sh
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Webseite elegant herunterladen

Manchmal sind interessante Informationen verteilt über viele Dateien einer Webseite. Praktisch herunterladen kann man so etwas mit wget. Die Links werden dabei automatisch korrigiert und php-/asp-generierte Seiten können automatisch als html abgespeichert werden:

wget -r -k -E 5 http://webseite.som/pfad

-r steht für rekursives Laden begrenzt durch die 5 (Tiefe in die in die Subdirectories geschaut wird)
-k besorgt das automatische Konvertieren der Links
-E benent die php/asp-generierten Seiten in html um

wget kann noch vieles mehr, einfach danach suchen!

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

mehrere Domains mit XAMPP (Apache)

Jeder, der mehrere Internetprojekte hat muss ab und zu oder immer die Dateien auch offline bearbeiten und testen können. Hierzu verwende ich XAMPP, das sowohl für Linux als auch für Windows kostenlos erhältlich ist.
Oft laufen aber die Projekte erst dann richtig wenn die Server-Root an der richtigen Stelle ist. Es funktionieren also aufgrund der verschiedenen Pfadangaben nicht alle Internetpräsenzen offline, wenn sie einfach in einem Unterordner der Serverroot abgelegt sind.
Abhilfe schaffen hier VirtualHost’s.

Um einen Virtualhost anzulegen müssen zwei Dateien editiert werden.
zuerst legen wir einen neuen Virtualhost in der httpd.conf – Datei an. Zu finden ist sie bei Linux mit XAMPP unter /opt/lampp/etc/httpd.conf.
Diese Datei ist wie man auf den ersten Blick sieht recht voll von Kommentaren, durch diese nicht irritieren lassen! An geeigneter Stelle (eigentlich egal wo) dann folgendes einfügen:


NameVirtualHost IPADRESSE

#####################################################
#            V I R T U A L H O S T S
#####################################################

        ServerName www.domain.loc
        ServerAlias domain.loc
        DocumentRoot "/opt/lampp/htdocs/domain"



        ServerName www.domain2.loc
        ServerAlias domain2.loc
        DocumentRoot "/opt/lampp/htdocs/domain2"

#####################################################

jetzt noch die IPADRESSE an die, des Rechners, auf dem XAMPP (Apache) läuft, anpassen. Wenn die Virtualhost nur lokal gebraucht werden kann man auch die IP-Adresse vom localhost 127.0.0.1 eintragen.
Unter ServerName und ServerAlias können beliebige domains stehen, sie müssen nur identisch zu der unten beschriebenen hosts – Datei sein

Jetzt kommen wir zur zweiten Datei, die hosts – Datei
Sie muss auf jeden Rechner angepasst werden der auf den Virtualhost zugreifen können soll.
Bei Linux ist diese Datei unter /etc/hosts zu finden, bei Windows unter /Windows/System32/drivers/etc/hosts.

Es muss folgendes eingetragen werden:

IPADRESSE    domain.loc www.domain.loc
IPADRESSE    domain2.loc www.domain2.loc

jetzt muss nur noch Apache neu gestartet werden, unter Linux mit

cd /opt/lampp
./lampp restart

so und jetzt nur noch in den Browser gehen und testen. Viel Spaß damit 😉

VN:F [1.9.22_1171]
Rating: 3.0/5 (2 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

fertig geladene Youtube-Videos aus dem Cache sichern

wenn man die Videos von Youtube mit Firefox anschaut, kann man die geladenen Videos auf der Festplatte finden und zum Beispiel mit VLC anschauen.

wenn man

about:cache

in die Adresszeile eingibt, kann man eine Liste der Dateien mit ihren Orginalen Namen finden.

noch nicht fertig geladene Videos landen in:

/home//.mozilla/Cache/

alle fertig geladenen Videos sind hier zu finden:

/tmp
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)