Archiv der Kategorie: Linux

Alles rund um Linux und Opensource

Extending an LVM volume on TurnkeyLinux for VMware

Ich hatte das Problem bei meinem MineOS, über die Weboberfläche ließ sich nichts erweitern… Also hier die Lösung!

Logical Volume Management (AKA LVM) is a powerful, robust mechanism for managing storage space.

In TurnKey 11,  instead of installing the root filesystem directly to a fixed size partition, we setup LVM by default, and install the root filesystem to a Logical Volume, which may later be expanded, even across multiple physical devices.

Unfortunately, as with anything powerful, to get the most out of LVM you first have to negotiate a learning curve. From the feedback we’ve been getting it seems that confusion regarding LVM is  common with new users, so here’s a quick „crash course“…

How LVM works

In LVM, there are several layers, each builds on top of the other:

PV[s] (Physical Volumes) -> VG[s] (Volume Groups) -> LV[s] (Logical Volumes) -> Filesystems.

Logical Volumes are allocated/extended within the boundaries of their underlying storage pool which is called a Volume Group in LVM terminology.

For example, in TurnKey the filesystem is installed by default to the /dev/turnkey/root Logical Volume, which is allocated within the turnkey Volume Group:

--- Logical volume ---
  LV Name                /dev/turnkey/root
  VG Name                turnkey
  LV UUID                OzX3fe-aRQa-81XM-0vCV-8aJo-eUL4-6J90XJ
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                17.0 GiB
  Current LE             4502
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           251:0

Out of the box the turnkey Volume Group doesn’t have too much free space:

# vgdisplay
  --- Volume group ---
  VG Name               turnkey
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               18.14 GiB
  PE Size               4.00 MiB
  Total PE              4645
  Alloc PE / Size       4480 / 17.50 GiB
  Free  PE / Size       165 / 660.00 MiB
  VG UUID               IwaFL0-QCi8-iIUE-TWjQ-R906-PYpH-gMPaH9

We can only extend a Logical Volume within the free space of the underlyingVolume Group. How much free space we currently have within the Volume Group can be seen in this part of the output:

Free  PE / Size       165 / 660.00 MiB

In the above example we only have 660 MB to allocate to LVMs within theturnkey Volume Group. So if we want to extend the root LV we’ll have to first extend the VG backs it up.

Volume Groups group together Physical Volumes. That’s why they’re called Volume Groups. This command will show us which Physical Volumes have been registered into LVM, and to which volume groups they have been assigned:

# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               turnkey
  PV Size               18.15 GiB / not usable 4.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              4645
  Free PE               165
  Allocated PE          4480
  PV UUID               H1Prpv-0VXR-7moE-zsbt-eyVt-m0fQ-GkAT6w

In this example we only have one Physical Volume (the /dev/sda2 partition) in theturnkey Volume Group.

Extending a Logical Volume

Bottom line: if the underlying Volume Group doesn’t have enough free space, to extend the Logical Volume you’ll first have to extend the underlying Volume Groupby adding another Physical Volume to it.

In VMWare you could either create a new virtual hard disk device to add to the volume group, or extend an existing virtual hard disk device, create a new partition with cfdisk, and add the new partition to the Volume Group:

# example #1: you've added to VMWare a new virtual hard disk called /dev/sdb
pvcreate /dev/sdb
vgextend turnkey /dev/sdb

# example #2: you've expanded the existing sda hard disk
cfdisk /dev/sda  # creating /dev/sda3 (you may need to reboot before you can see this)
pvcreate /dev/sda3
vgextend turnkey /dev/sda3

After you’ve extended the Volume Group, you are free to extend the underlyingLogical Volume:

# lvextend -L+10G /dev/turnkey/root
Extending logical volume root to 27.0 GiB
Logical volume root successfully resized

Finally, you’ll have to resize the filesystem within /dev/turnkey/root so it can see that the underlying block device just got 10G bigger:

# resize2fs /dev/turnkey/root
resize2fs 1.41.11 (14-Mar-2010)
Filesystem at /dev/turnkey/root is mounted on /; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 2
Performing an on-line resize of /dev/turnkey/root to  7077888 (4k) blocks.
The filesystem on /dev/turnkey/root is now 7077888 blocks long.



Hinterlasse einen Kommentar

Eingeordnet unter Linux, VMware

Lenovo Yoga 2 – WLAN Hardware ausgeschaltet


Having a Lenovo Yoga 2 13″ (non-pro) running Ubuntu 14.04.1, I couldn’t get Wireless LAN up and running, as the WLAN NIC appeared to be “hardware locked”. This is the summary of how I solved this issue. If you’re not interested in the gory details, you may jump right to bottom, where I offer a replacement module that fixes it. At least for me.

Environment details: Distribution kernel 3.13.0-32-generic on an Intel i5-4210U CPU @ 1.70GHz. The Wifi device is an Intel Dual Band Wireless-AC 7260 (8086:08b1) connected to the PCIe bus, taken care of by the iwlwifi driver.

The problem

Laptops have a mechanism for working in “flight mode” which means turning off any device that could emit RF power, so that the airplane can crash for whatever different reason. Apparently, some laptops have a physical on-off switch to request this, but on Lenovo Yoga 13, the arrangement is to press a button on the keyboard with an airplane drawn on it. The one shared with F7.

It seems to be, that on Lenovo Yoga 13, the ACPI interface, which is responsible for reporting the Wifi’s buttons state, always reports that it’s in flight mode. So Linux turns off Wifi, and on the desktop’s Gnome network applet it says “Wi-Fi is disabled by hardware switch”.

In the dmesg log one can tell the problem with a line like

iwlwifi 0000:01:00.0: RF_KILL bit toggled to disable radio.

which is issued by the interrupt request handler defined in drivers/net/wireless/iwlwifi/pcie/rx.c, which responds to an interrupt from the device that informs the host that the hardware RF kill bit is set. So the iwlwifi module is not to blame here — it just responds to a request from the ACPI subsystem.


The management of RF-related devices is handled by the rfkill subsystem. On my laptop, before solving the problem, a typical output went

$ rfkill list all
0: ideapad_wlan: Wireless LAN
        Soft blocked: yes
        Hard blocked: yes
1: ideapad_bluetooth: Bluetooth
        Soft blocked: no
        Hard blocked: yes
6: hci0: Bluetooth
        Soft blocked: no
        Hard blocked: no
7: phy1: Wireless LAN
        Soft blocked: yes
        Hard blocked: yes

So there are different entities that can be controlled with rfkill, enumerated and assigned soft and hard blocks. Each of these relate to a directory in /sys/class/rfkill/. For example, the last device, “phy7″ enumerated as 7 corresponds to /sys/class/rfkill/rfkill7, where the “hard” and “soft” pseudo-files signify the status with “0″ or “1″ values.

The soft block can be changed by “rfkill unblock 0″ or “rfkill unblock 7″, but this doesn’t really help with the hardware block. Both has to be “off” to use the device.

As can be seen easily from the rkfill list above, each of the physical devices are registered twice as rfkill devices: Once by their driver, and a second time by the ideapad_laptop driver. This will be used in the solution below.

The ideapad_laptop module

The ideapad-laptop module is responsible for talking with the ACPI layer on machines that match “VPC2004″ as a platform (as in /sys/devices/platform/VPC2004:00, or /sys/bus/acpi/devices/VPC2004:00, but doesn’t fit anything found in /sys/class/dmi/id/).

Blacklisting this module has been suggested for Yoga laptops all over the web. In particularthis post suggests to insmod the module once with a hack that forces the Wifi on, and then blacklist it.

But by blacklisting ideapad-laptop, the computer loses some precious functionality, including disabling Wifi and the touchpad by pressing a button. So this is not an appealing solution.

Ideapad’s two debugfs output files go:

# cat /sys/kernel/debug/ideapad/cfg
cfg: 0x017DE014

Capability: Bluetooth Wireless Camera
# cat /sys/kernel/debug/ideapad/status
Backlight max:	16
Backlight now:	9
BL power value:	On
Radio status:	Off(0)
Wifi status:	Off(0)
BT status:	On(1)
3G status:	Off(0)
Touchpad status:Off(0)
Camera status:	On(1)

So the Radio and Wifi statuses, which are read from the ACPI registers, are off. This makes the ideapad_laptop module conclude that everything should go off.

The solution

In essence, the solution for the problem is to take the ideapad_laptop’s hands off the Wifi hardware, except for turning the hardware block off when it’s loaded. It consists of making the following changes in drivers/platform/x86/ideapad-laptop.c:

  • First, remove the driver’s rfkill registration. Somewhere at the beginning of the file, change
    #define IDEAPAD_RFKILL_DEV_NUM	(3)


    #define IDEAPAD_RFKILL_DEV_NUM	(2)

    and in the definition of ideapad_rfk_data[], remove the line saying


    This prevents the driver from presenting an rfkill interface, so it keeps its hands off.

  • There is however a chance that the relevant bit in the ACPI layer already has the hardware block on. So let’s turn it off every time the driver loads. In ideapad_acpi_add(), after the call to ideapad_sync_rfk_state(), more or less, add the following two lines:
    pr_warn("Hack: Forcing WLAN hardware block off\n");
    write_ec_cmd(priv->adev->handle, VPCCMD_W_WIFI, 1);
  • And finally, solve a rather bizarre phenomenon, that when reading for the RF state with a VPCCMD_R_RF command, the Wifi interface is hardware blocked for some reason. Note that radio is always in off mode, so it’s a meaningless register on Yoga 2. This is handled in two places. First, empty ideapad_sync_rfk_state() completely, by turning it into
    static void ideapad_sync_rfk_state(struct ideapad_private *priv)

    This function reads VPCCMD_R_RF and calls rfkill_set_hw_state() accordingly, but on Yoga 2 it will always block everything, so what’s the point?
    Next, in debugfs_status_show() which prints out /sys/kernel/debug/ideapad/status, remove the following three lines:

    if (!read_ec_data(priv->adev->handle, VPCCMD_R_RF, &value))
      seq_printf(s, "Radio status:\t%s(%lu)\n",
        value ? "On" : "Off", value);

Having these changes made, the Wifi works properly, regardless of it was previously reported hardware blocked.

This can’t be submitted as a patch to the kernel, because presumably some laptops need the rfkill interface for Wifi through ideapad_laptop (or else, why was it put there in the first place?).

Also, maybe I should have done this for Bluetooth too? Don’t know. I don’t use Bluetooth right now, and the desktop applet seems to say all is fine with it anyhow.

Download the driver fix

For the lazy ones, I’ve prepared a little kit for compiling the relevant driver. I’ve taken the driver as it appears in kernel 3.16, more or less, and applied the changes above. And I then added a Makefile to make it compile easily. Since the kernel API changes rather rapidly, this will probably work well for kernels around 3.16 (that includes 3.13), and then you’ll have to apply the changes manually. If it isn’t fixed in the kernel itself by then.

Download it from here, untar it, change directory, and compile it with typing “make”. This works only if you have the kernel headers and gcc compiler installed, which is usually the case in recent distributions. So a session like this is expected:

$ make
make -C /lib/modules/3.13.0-32-generic/build SUBDIRS=/home/eli/yoga-wifi-fix modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.0-32-generic'
  CC [M]  /home/eli/yoga-wifi-fix/ideapad-laptop.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/eli/yoga-wifi-fix/ideapad-laptop.mod.o
  LD [M]  /home/eli/yoga-wifi-fix/ideapad-laptop.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-32-generic'

Then replace the fresh ideapad-laptop.ko with the one the kernel uses. First, let’s figure out where to. The modinfo command help here:

$ modinfo ideapad_laptop
filename:       /lib/modules/3.13.0-32-generic/kernel/drivers/platform/x86/ideapad-laptop.ko
license:        GPL
description:    IdeaPad ACPI Extras
author:         David Woodhouse <>
srcversion:     BA339D663FA3B10105A1DC0
alias:          acpi*:VPC2004:*
depends:        sparse-keymap
vermagic:       3.13.0-32-generic SMP mod_unload modversions
parm:           no_bt_rfkill:No rfkill for bluetooth. (bool)

So the directory is now known (marked in red). This leaves us with copying it into the right place:

$ sudo cp ideapad-laptop.ko /lib/modules/3.13.0-32-generic/kernel/drivers/platform/x86/

The new module is valid on the next reboot. Or the next insmod/modprobe, if you’re have the same allergy as myself regarding rebooting a Linux system.

Quelle: Eli Billauer

Hinterlasse einen Kommentar

Eingeordnet unter Linux

Software zur Netzwerkpflege / Netzwerküberwachung

Um ein Netzwerk (LAN) zu überwachen und pflegen benutze ich am liebsten die folgenden Tools. Es kommt dabei natürlich drauf an was genau man vorhat, denn einige der Programme sind sehr mächtig andere wiederum sind nur auf eine Bestimmte Aufgabe zugeschnitten und erledigen diese sehr gut. Es handelt sich hierbei ebenso um Windows, Linux und Mac Programme. Manche gibt es für jedes BS andere wiederum nur für eines der Drei. Ich schreibe das BS in Klammern.
Hier also die Liste mit meinen Favoriten (die mit X versehenden Programme sollten meiner Meinung nach bei keinem Admin fehlen):


LAN-Explorer: Ermittelt alle Rechner, Freigaben und Drucker in Microsoft-kompatiblen LANs und stellt sie übersichtlich dar.

Der LAN-Explorer findet in Windows-Netzwerken alle freigegebenen PCs, Drucker und Verzeichnisse. Die Übersicht speichert er mit Ping-Zeiten als LAN-Dokumentation. Im LAN-Explorer navigiert es sich komfortabler als mit dem Windows-Explorer und die integrierte Favoritenverwaltung beschleunigt den Zugriff.



(Windows, Linux, Mac) X

Filtert die Firewall, wie sie soll? Bietet der Server unnötige Dienste an? Welche Adresse hat der DHCP-Server dem neuen NAS-Gerät zugewiesen und welche Samba-Version läuft darauf? Fragen dieser Art stellt sich ein Admin täglich. Die Antwort liefert der Portscanner Nmap. Die grafische Oberfläche Zenmap hilft beim Zusammenbauen der nmap-Kommandozeile und zeigt die Ergebnisse etwas hübscher als die Konsole. Mit Hilfe der Scripting Engine kann man auf insgesamt 177 Scripts und 54 Libraries zurückgreifen. Dadurch kann man die Rechner während des Scans auf Sicherheitslücken, etwa in Form einer Stuxnet-Infektion, überprüfen. Auch für Brute-Force-Angriffe auf gängige Protokolle gibt es passende Skripte. Die Skripte kann man über den Profileditor der plattformübergreifenden Bedienoberfläche Zenmap komfortabel konfigurieren und in die Scans einbauen.

Nmap ist wohl der bekannteste Netzwerkscanner. Er spürt aktive Hosts im Netz auf und nutzt eine breite Palette an Tests vom normalen TCP/IP-Handshake bis zum verborgenen TCP-FIN-Scan. Aufgrund der Eigenheiten der TCP/IP-Stacks erkennt nmap das Betriebssystem. Die im Paket enthaltene grafische Oberfläche Zenmap hilft beim Zusammenstellen der Optionen des Kommandozeilenprogramms.



The Dude
(Windows) X

The Dude: Scannt alle in einem Netzwerk angeschlossenen Geräte und generiert aus den Informationen eine Übersichtskarte; überwacht Geräte und meldet auftretende Probleme; auch als Version 4.0beta3 erhältlich.

Der Netzwerkmonitor The Dude scannt ein Netzwerk automatisch und stellt alle Geräte als Symbole dar. Durch Verschieben der Elemente und Hinterlegen mit Plänen oder Karten entsteht eine grafische Dokumentation des Netzwerks. The Dude prüft laufend den Status der einmal gefundenen Server und blendet ihn ein. In der Betaversion wurde die Bedienung verbessert, sodass man Objekte in der Karte nicht mehr versehentlich verschieben oder löschen kann. Außerdem soll die Version 3 weniger Netzwerkverkehr erzeugen und für den Serverstatus mehr verschiedene Abfragen berücksichtigen. Weiterlesen…



(Windows, Linux, Mac) X

Bei Verdacht auf eine Infektion mit einem Bot kann man den Rechner statt mit Rootkit-Detektoren und Virenscannern auch mit einem Netzwerkanalysator wie Wireshark untersuchen. Dazu beobachtet man mit einer lokalen Installation des Tools den Datenverkehr der Ethernetschnittstelle. Viele Bots versenden größere Mengen von UDP-Paketen an ihren Kontrollserver, was sich in zahlreichen mitgeschnittenen Paketen in Wireshark äußert. Oft verraten sich Bots durch den Verbindungsaufbau zu einem Channel auf einem IRC-Server. Praktischerweise zeigt Wireshark bei den mitgelesenen Paketen gleich an, um welche Art es sich handelt, sodass man IRC-Verkehr sehr schnell erkennt. Zwar verschlüsseln einige Bots ihre IRC-Kommunikation, aber allein der Kontakt zu solch einem Server sollte bereits Hinweis genug sein – sofern man einen selbst installierten IRC-Client als Ursache ausschließen kann. Um die beim Sniffen aufkommende Datenmenge zu reduzieren, sollte man vor dem Start von Wireshark alle Online-Anwendungen und Update-Dienste beenden. Wireshark benötigt WinPCap, das bereits in der Installationsdatei enthalten ist und mitinstalliert wird. Das Programm ist auch als portable Version erhältlich.

Ein Paketsniffer ist gleichzeitig bester Freund und letzte Rettung des Netzwerk-Admins. Durch Beobachtung des Datenverkehrs kann er Fehler finden, den Ablauf von Protokollen verstehen oder einfach den Usern auf die Finger sehen. Das Standardwerkzeug für alle Betriebssysteme ist Wireshark , das viele Analyse- und Statistik-Funktionen mitbringt. Die portable Windows-Version läuft auch ohne Installation auf dem PC von einem USB-Stick.




SmartSniff: Analysiert und überwacht die auf dem PC übertragenden TCP/IP-Pakete und schneidet den Datenverkehr mit; Protokoll kann im ASCII-Modus oder Hex-Format ausgegeben werden; bei Windows 98/NT/ME ist die Installation des WinPcap-Capture-Treibers erforderlich.




PortScan: Einfacher Portscanner zum Identifizieren aller aktiven Geräte im Netzwerk; zeigt alle offenen Ports und zusätzliche Informationen zu HTTP, FTP, SMTP, SNMP oder SMB an.




NetStumbler ist der Klassiker unter den Windows-Tools zum Aufspüren von Funknetzen der Standards 802.11b, 802.11a und 802.11g. Das Tool sendet Probe-Requests und wertet die Antworten der Access Points aus. Neben dem Namen des Netzwerks, dem Kanal und der Signalstärke zeigt es auch farblich an, ob das Funknetz durch WEP-Verschlüsselung geschützt ist. Sogar den Hersteller des registrierten Gerätes erkennt NetStumbler anhand der MAC-Adresse. Zusätzlich ist das Aufzeichnen der GPS-Koordinaten möglich, sofern am Laptop eine GPS-Maus angeschlossen ist.



(Windows, Linux, Mac)

Ettercap: Greift Verbindungen in geswitchten Netzen mittels Man-in-the-Middle an; SSH- und HTTPS-Verbindungen können ebenso umgeleitet werden.



Quelle: Heise Online

Hinterlasse einen Kommentar

Eingeordnet unter Apple, Linux, Microsoft

Internes Wiki (MindTouch/Turnkey)

Das perfekte und anpassungsfähigste Wiki für den internen Gebrauch ist wohl das „MindTouch“ wiki.
Es gibt ein fertiges VMware Image das sowohl mit dem Player, der Workstation und unter vSphere läuft. Ein Traum und noch dazu kostenlos.

Super Stück software und für die Lokale Benutzung bzw. in einem LAN wirklich das beste was es im moment gibt ohne sich selber die Mühe einer Programmierung zu machen.

Hier der Link:
(inkl. Anleitung)

Oder aber für weitere Infos und Downloads:

Hinterlasse einen Kommentar

Eingeordnet unter Linux, VMware