https://www.thinkwiki.org/w/api.php?action=feedcontributions&user=Dmitri&feedformat=atomThinkWiki - User contributions [en]2024-03-28T22:12:06ZUser contributionsMediaWiki 1.31.12https://www.thinkwiki.org/w/index.php?title=Thinkpad-acpi&diff=55724Thinkpad-acpi2014-07-05T09:49:46Z<p>Dmitri: /* External links related to thinkpad-acpi */ +URL to wiki.gentoo.org</p>
<hr />
<div>{| width="100%"<br />
|style="vertical-align:top;padding-right:20px;width:10px;white-space:nowrap;" | __TOC__<br />
|style="vertical-align:top" |<br />
== thinkpad-acpi - ThinkPad ACPI Extras Driver ==<br />
This is a Linux ACPI driver for the ThinkPad laptops written by Borislav Deianov, and currently maintained by [[User:hmh|Henrique de Moraes Holschuh]] and is included with the Linux kernel. It aims to support various features of these laptops which are accessible through the ACPI framework but not otherwise supported by the generic Linux ACPI drivers. As a kernel module, thinkpad-acpi works as a bridge to deliver information about certain hardware events like key presses or control the state of certain hardware features by software.<br />
<br />
{{WARN|As of kernel 2.6.27 the thinkpad-acpi bay and dock drivers should no longer be used. Instead use the standard ACPI bay and dock drivers. As of kernel 2.6.31 the thinkpad-acpi bay and dock drivers have been removed completely.}}<br />
<br />
{{NOTE|As of kernel 2.6.33 the thinkpad_acpi driver now has a ALSA sub-driver which creates an additional ALSA volume control which represents the volume and mute buttons on the ThinkPad keyboard. Unfortunately no further integration exists at this point with userspace, such as PulseAudio and as such there is no effective change for the end-user}}<br />
|}<br />
<br />
==Thinkpad-specific ACPI driver==<br />
This is a Linux ACPI driver for the ThinkPad laptops written by Borislav Deianov and Henrique de Moraes Holschuh. The driver replaces ibm-acpi in Linux mainline as of 2.6.22 (March 2007). To confuse matters further, it appears that there was also an older (now abandoned) driver of the same name written by Erik Rigtorp which never made it into the mainline kernel. The current thinkpad-acpi contains essentially the same functionality as ibm-acpi with some added features. Among which are registering of acpi events to the "thinkvantage" and volume/mute buttons which could previously only be accessed through the use of the [[tpb]] utility.<br />
<br />
In Linux Kernel v2.6.31 "make menuconfig" the driver can be enabled in:<br />
<pre><br />
Device Drivers ---> <br />
[*] X86 Platform Specific Device Drivers ---> <br />
<M> ThinkPad ACPI Laptop Extras <br />
[ ] Maintainer debug facilities <br />
[ ] Verbose debug mode <br />
[ ] Allow control of important LEDs (unsafe)<br />
[ ] Video output control support <br />
[ ] Support NVRAM polling for hot keys <br />
</pre><br />
<br />
==Hibernate==<br />
<br />
When hibernating, thinkpad_acpi should be added to the modules which are unloaded before and reloaded after hibernation. Otherwise, thinkpad_acpi may not be loadable after hibernate again.<br />
<br />
For pm-utils, just create the following file:<br />
<br />
{{path|/etc/pm/config.d/thinkpad_acpi}}<br />
<br />
SUSPEND_MODULES="thinkpad_acpi"<br />
<br />
==Hotkeys==<br />
To view which hotkeys are active you can use "acpi_listen", but that is deprecated. A better way is to use "lsinput" and "input-events" commands to look at the output of the thinkpad-acpi input device(s).<br />
<br />
One important difference from ibm-acpi for those who wish to enable all possible hot keys, is that thinkpad-acpi automatically enables them. One should not need to do anything to get the best possible thinkpad-acpi configuration for his ThinkPad (as long as he is using the latest thinkpad-acpi).<br />
<br />
In particular, old documentation that tells you to "echo enable,0xffffffff >/proc/acpi/ibm/hotkey", or to give thinkpad-acpi any hotkey= module parameters to enable hot keys by default, is likely incorrect.<br />
<br />
The thinkpad-acpi driver has detailed documentation, which is shipped inside the Linux kernel sources, as "Documentation/thinkpad-acpi.txt" or as "Documentation/laptops/thinkpad-acpi.txt". If you feel a need to change the hot key mask manually, it is probably best to look at that documentation first to understand the full side effects of any changes.<br />
<br />
==sysfs interface==<br />
some of the ThinkPad specific settings can be viewed or altered in sysfs under {{path|/sys/devices/platform/thinkpad_acpi}} and {{path|/sys/devices/platform/thinkpad_hwmon}}<br />
<br />
====thinkpad_acpi====<br />
{{path|/sys/devices/platform/thinkpad_acpi}} directory structure is as follows on a T60 with kernel 2.6.31<br />
<pre><br />
|-- bluetooth_enable<br />
|-- cmos_command<br />
|-- driver -> ../../../bus/platform/drivers/thinkpad_acpi<br />
|-- hotkey_all_mask<br />
|-- hotkey_bios_enabled<br />
|-- hotkey_bios_mask<br />
|-- hotkey_enable<br />
|-- hotkey_mask<br />
|-- hotkey_poll_freq<br />
|-- hotkey_radio_sw<br />
|-- hotkey_recommended_mask<br />
|-- hotkey_report_mode<br />
|-- hotkey_source_mask<br />
|-- leds<br />
| |-- tpacpi::power<br />
| | |-- brightness<br />
| | |-- device -> ../../../thinkpad_acpi<br />
| | |-- max_brightness<br />
| | |-- power<br />
| | | `-- wakeup<br />
| | |-- subsystem -> ../../../../../class/leds<br />
| | |-- trigger<br />
| | `-- uevent<br />
| |-- tpacpi::standby<br />
| | |-- brightness<br />
| | |-- device -> ../../../thinkpad_acpi<br />
| | |-- max_brightness<br />
| | |-- power<br />
| | | `-- wakeup<br />
| | |-- subsystem -> ../../../../../class/leds<br />
| | |-- trigger<br />
| | `-- uevent<br />
| |-- tpacpi::thinklight<br />
| | |-- brightness<br />
| | |-- device -> ../../../thinkpad_acpi<br />
| | |-- max_brightness<br />
| | |-- power<br />
| | | `-- wakeup<br />
| | |-- subsystem -> ../../../../../class/leds<br />
| | |-- trigger<br />
| | `-- uevent<br />
| `-- tpacpi::thinkvantage<br />
| |-- brightness<br />
| |-- device -> ../../../thinkpad_acpi<br />
| |-- max_brightness<br />
| |-- power<br />
| | `-- wakeup<br />
| |-- subsystem -> ../../../../../class/leds<br />
| |-- trigger<br />
| `-- uevent<br />
|-- modalias<br />
|-- power<br />
| `-- wakeup<br />
|-- rfkill<br />
| `-- rfkill0<br />
| |-- claim<br />
| |-- device -> ../../../thinkpad_acpi<br />
| |-- index<br />
| |-- name<br />
| |-- persistent<br />
| |-- power<br />
| | `-- wakeup<br />
| |-- state<br />
| |-- subsystem -> ../../../../../class/rfkill<br />
| |-- type<br />
| `-- uevent<br />
|-- subsystem -> ../../../bus/platform<br />
|-- uevent<br />
|-- wakeup_hotunplug_complete<br />
`-- wakeup_reason<br />
</pre><br />
<br />
====thinkpad_hwmon====<br />
{{path|/sys/devices/platform/thinkpad_hwmon}} directory structure is as follows on a T60 with kernel 2.6.31<br />
<pre><br />
|-- driver -> ../../../bus/platform/drivers/thinkpad_hwmon<br />
|-- fan1_input<br />
|-- hwmon<br />
| `-- hwmon0<br />
| |-- device -> ../../../thinkpad_hwmon<br />
| |-- power<br />
| | `-- wakeup<br />
| |-- subsystem -> ../../../../../class/hwmon<br />
| `-- uevent<br />
|-- modalias<br />
|-- name<br />
|-- power<br />
| `-- wakeup<br />
|-- pwm1<br />
|-- pwm1_enable<br />
|-- subsystem -> ../../../bus/platform<br />
|-- temp10_input<br />
|-- temp11_input<br />
|-- temp12_input<br />
|-- temp13_input<br />
|-- temp14_input<br />
|-- temp15_input<br />
|-- temp16_input<br />
|-- temp1_input<br />
|-- temp2_input<br />
|-- temp3_input<br />
|-- temp4_input<br />
|-- temp5_input<br />
|-- temp6_input<br />
|-- temp7_input<br />
|-- temp8_input<br />
|-- temp9_input<br />
`-- uevent<br />
</pre><br />
<br />
==proc interface==<br />
some legacy interfaces can also be found under {{path|/proc/acpi/ibm}} these interfaces should be considered deprecated. Please use sysfs instead.<br />
<br />
<pre><br />
|-- beep<br />
|-- bluetooth<br />
|-- cmos<br />
|-- driver<br />
|-- fan<br />
|-- hotkey<br />
|-- led<br />
|-- light<br />
|-- thermal<br />
|-- video<br />
`-- volume<br />
</pre><br />
<br />
==Development==<br />
To help with development and maintenance of the thinkpad-acpi driver, please add your model to the [[List of DMI IDs]].<br />
<br />
==Further documentation==<br />
More comprehensive documentation can be found in the kernel source tree under <tt>Documentation/thinkpad-acpi.txt</tt> or <tt>Documentation/laptops/thinkpad-acpi.txt</tt>.<br />
<br />
=== External links related to thinkpad-acpi ===<br />
* [http://ibm-acpi.sf.net ibm-acpi/thinkpad-acpi main page in Sourceforge]<br />
* [http://acpi.sourceforge.net Linux ACPI main page in Sourceforge], includes DSDT repository<br />
* [http://www.kernel.org kernel.org main archives]<br />
* [http://repo.or.cz/w/linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git thinkpad-acpi development git tree]<br />
* [https://wiki.gentoo.org/wiki/ACPI/ThinkPad-special-buttons ACPI/ThinkPad-special-buttons on wiki.gentoo.org for T410]<br />
<br />
[[Category:Drivers]]<br />
<br />
=== Supported ThinkPads ===<br />
* {{770X}} , {{770Z}}<br />
* {{A Series}}<br />
* {{G Series}}<br />
* {{R Series}}<br />
* {{T Series}}<br />
* {{W Series}}<br />
* {{X Series}}<br />
* {{Z Series}}<br />
* {{TransNote}}</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Installing_Gentoo_on_a_ThinkPad_T410&diff=54497Installing Gentoo on a ThinkPad T4102013-03-29T16:38:38Z<p>Dmitri: /* Network: Intel E1000 NIC, WiFi Link 6000 Series WNIC, Bluetooth */ wikification</p>
<hr />
<div>== Model ==<br />
Lenovo Thinkpad {{T410}}<br />
<br />
== General ==<br />
This installation instruction describes the steps after a Gentoo base installation. <br />
Please read the gentoo handbook for installation instructions<br />
<br />
====Working:====<br />
<br />
* Keyboard, UltraNav input (Touchpad and NavPoint) <br />
* Drives<br />
* X11 with nVidia including acceleration<br />
* Network, wireless network and bluetooth <br />
* Sound<br />
* Suspend to RAM <br />
* Suspend to Disk (Hibernate)<br />
* ThinkLight<br />
* ACPI (Battery, CPU Frequency, Fan, Temperature, ...) <br />
* Webcam<br />
* Fn Key combinations<br />
* Hot swapping of optical drive (UltraBay) <br />
* HDD Acceleration Meter (can be used as an input device) <br />
* Harddisk protection <br />
* Card reader: SD Card<br />
<br />
====Not tested:====<br />
<br />
* Firewire (should work as it is recognized, no devices for testing)<br />
* E-Sata (should work, no devices for testing) <br />
* Express Card Slot (should work, no devices for testing) <br />
* Docking Station (should work according to several sources, no devices for testing)<br />
* Card Reader: Memory Stick<br />
<br />
== Graphics: NVIDIA Quadro NVS 3100M (GT218) ==<br />
<br />
To install and configure the nVidia driver, just emerge nvidia-drivers. You might be interested in the ~arch masked drivers. <br />
<br />
Framebuffer works fine with vga=0x361. hwinfo --framebuffer displays all supported resolutions. <br />
<br />
The brightness control needs a workaround. Add <br />
<br />
Option "RegistryDwords" "EnableBrightnessControl=1"<br />
<br />
to your xorg.conf<br />
<br />
Performance of the card depends heavy on powermizer <br />
and some nvidia settings. <br />
<br />
In recent nvidia drivers, powermizer can be configured via `nvidia-settings`<br />
<br />
<bash><br />
#!/bin/sh<br />
if [ -z "$1" ]<br />
then<br />
echo "Powermizer control script."<br />
echo "2010 by Christian \"Fuchs\" Loosli."<br />
echo ""<br />
echo "usage: powermizer on | off"<br />
<br />
else<br />
if [ $1 = "on" ]<br />
then<br />
nvidia-settings -a [gpu:0]/GPUPowerMizerMode=0<br />
fi<br />
if [ $1 = "off" ]<br />
then<br />
nvidia-settings -a [gpu:0]/GPUPowerMizerMode=1<br />
fi<br />
fi<br />
exit 0<br />
</bash><br />
<br />
This script turns powermizer on or off. You can use it together with acpi events or your power management to turn powermizer off as soon as your notebook is powered via AC.<br />
<br />
== Sound: AD1984 ==<br />
Works out of the box. The microphone might has to be unmuted via alsamixer. If you are using pulse audio, check pavucontrol as well. <br />
<br />
The mute button and the volume up and volume down buttons work as well but you need to configure them first. You can use xmodmap to bind a key to them and then either bind a amixer command to them, or set them as hotkeys in your mixer application (kmix, gnome-mixer, ...) <br />
Please note that some mixer applications take the wrong mixer (the hdmi output) as the default, so you have to change the default / primary mixer. <br />
<br />
<br />
== Network: Intel E1000 NIC, WiFi Link 6000 Series WNIC, Bluetooth== <br />
<br />
The integrated e1000 LAN NIC works out of the box. <br />
<br />
For wireless you have to emerge the net-wireless/iwl6000-ucode package. <br />
You have to enable iwlwifi / iwlagn in your kernel configuration. <br />
<br />
Don't forget that the interface (wlan0) has to be set as up<br />
(ifconfig wlan0 up) before scanning and associating works.<br />
<br />
Bluetooth works out of the box with blueZ.<br />
You can disable / enable bluetooth via proc, <br />
with a script similar to this one: <br />
<pre><br />
<bash><br />
#!/bin/sh<br />
bluetooth=`head -n 1 /proc/acpi/ibm/bluetooth | awk '{print $2}'`<br />
case "$bluetooth" in<br />
disabled)<br />
echo "enable" > /proc/acpi/ibm/bluetooth<br />
;;<br />
enabled)<br />
echo "disable" > /proc/acpi/ibm/bluetooth<br />
;;<br />
esac<br />
exit 0<br />
</bash><br />
</pre><br />
or directly with the proc interface. This script helps you<br />
to bind it to a key combination. <br />
<br />
Note that the hardware killswitch on the front works as well, <br />
but disables both bluetooth and WLAN<br />
<br />
<br />
In recent versions of the driver, several 5 GHz networks create a lot of disconnects. You can try to set <br />
<pre><br />
options iwlagn 11n_disable=1<br />
</pre><br />
in /etc/modprobe.d/iwlagn.conf as a temporary solution while Intel is working on a fix.<br />
<br />
== Ports: USB, HDMI, IEEE 1394 Firewire == <br />
<br />
USB works out of the box. <br />
<br />
Firewire is untested but should work, as the port is <br />
recognized and the module loaded.<br />
<br />
HDMI is untested, but as it is recognized (including the alsa audio device) it should work. <br />
<br />
== Drives ==<br />
<br />
The optical drive and hard drive work out of the box, <br />
with AHCI disabled or enabled in the BIOS. <br />
<br />
If you run a dualboot system with windows <= 5.1 (XP) you might want to disable AHCI anyway, <br />
at least until you have installed the ahci driver for Windows.<br />
<br />
=== Hard Drive Active Protection ===<br />
<br />
The integrated harddrive active protection<br />
acceleration meter can be used as a joystick or <br />
to get information about movements of your thinkpad. <br />
<br />
Emerge the hdapsd and app-laptop/tp_smapi with the hdaps USE-Flag enabled, which will generate a joystick<br />
and an event device.<br />
<br />
It can be used for protecting your harddisk as well. Make sure to diable the kernel internal hdaps module, emerge hdapsd and tp_smapi with the hdaps flag enabled, rc-update add hdapsd boot and then reboot. <br />
<br />
Heads will only be parked with this method. However, in some situations and with some disk there will be a full spindown, which should be avoided as this might damage your harddisk when used too much. <br />
<br />
On newer versions of xorg it might be possible that the accelerometer is seen as a mouse, which makes your pointer hop to the middle of the screen all the time. In order to solve this, you can create a udev rule: <br />
<br />
/etc/udev/rules.d/99-hdaps.rules<br />
<pre><br />
SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="ThinkPad HDAPS accelerometer data", ENV{x11_driver}=""<br />
SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="ThinkPad HDAPS joystick emulation", ENV{x11_driver}=""<br />
</pre><br />
<br />
which solves this problem. <br />
<br />
== Input ==<br />
<br />
=== TouchPad ===<br />
Works out of the box here, with scrolling. <br />
<br />
TouchPads are, as all the other input devices, not configured via xorg.conf anymore in xorg >= 1.6. <br />
You can either use the xorg.conf.d directory, udev rules or synclient on a per user base. <br />
<br />
I use <br />
<br />
<pre><br />
synclient HorizEdgeScroll=1 VertEdgeScroll=1 MinSpeed=0.25 MaxSpeed=0.42 AccelFactor=0.0010 VertTwoFingerScroll=1 HorizTwoFingerScroll=1 TapButton2=2 TapButton3=3 PalmDetect=1 PalmMinWidth=5 RTCornerButton=2 RBCornerButton=3<br />
</pre> <br />
<br />
in my autostart, which activates two finger scrolling, multifinger tab and edge buttons. <br />
<br />
The touchpad can be disabled via synclient when using the synaptics driver, <br />
a possible solution is this script: <br />
<br />
<bash><br />
#!/bin/sh<br />
touchpad=`synclient -l | grep TouchpadOff | awk '{print $3}'`<br />
case "$touchpad" in<br />
1)<br />
synclient TouchpadOff=0;<br />
echo "Touchpad Enabled" | osd_cat -d 1 -c cyan --font="-*-times-bold-r-*--34-240-*-*-p-*-*-*" -A center -p bottom<br />
;;<br />
0)<br />
synclient TouchpadOff=1;<br />
echo "Touchpad Disabled" | osd_cat -d 1 -c cyan --font="-*-times-bold-r-*--34-240-*-*-p-*-*-*" -A center -p bottom<br />
;;<br />
esac<br />
exit 0<br />
</bash><br />
<br />
which needs xosd to display the current state. You can remove the "echo" line if you don't want the status being displayed or if you don't have xosd. <br />
You can make the script executable and map it to the fn+f8 button.<br />
<br />
<br />
=== Trackpoint ===<br />
Works out of the box as well, with no scrolling however. <br />
Can be configured via xorg.conf, I prefer using the middle button as mouse3. <br />
<br />
=== Keyboard ===<br />
Works out of the box, most of the Fn Keys work. <br />
<br />
Hardwired: Thinklight, Brightness <br />
<br />
Generates a keycode and can be configured: Volume Down, Volume Up, Fn+F2, Fn+F3, Fn+F4, Fn+F5, Fn+F7, Fn+F8, Fn+Arrows<br />
<br />
Does not generate a key event: Fn+Space<br />
Those keys do produce an acpi event, so you can modifiy your<br />
acpi configuration to bind them to commands.<br />
<br />
It is also possible to translate the acpi events to keyevents, have a look at the following configuration file: <br />
<br />
[[Installing_Gentoo_2007.0_on_a_ThinkPad_R61#default.sh_.28acpid.29|My example default.sh file for the missing keys is here]]<br />
and there is a good, more complete howto<br />
here: [http://gentoo-wiki.com/HARDWARE_Lenovo_Thinkpad_T61#Usage_of_acpid Gentoo Wiki]<br />
<br />
== Suspend ==<br />
Suspend to RAM worked out of the box here, echo 3 > /proc/acpi/sleep <br />
puts the machine in suspend mode, opening it or pressing the power button wakes it up. <br />
Worked with nvidia driver and in X11. All devices came back without problems, <br />
wlan might have disconnected, but by using networkmanager, wicd or a good configuration<br />
it should reconnect after waking up. Works here with wicd. <br />
<br />
Suspend to Disk works out of the box as well. <br />
<br />
<br />
== Integrated Fingerprint Reader ==<br />
<br />
Not tested yet<br />
<br />
== Integrated Webcam == <br />
<br />
The Camera seems to be a Chicony Electronics Co., Ltd. device, with <br />
<br />
Vendor ID: 0x17ef<br />
Product ID: 0x480f<br />
<br />
You have to enable: Video capture adapters ---> V4L USB devices ---> USB Video Class (UVC) in the kernel, then the camera will work out of the box (tested with Kopete) <br />
<br />
<br />
== Integrated Card reader == <br />
<br />
The card reader is a<br />
<br />
SD Host controller: Ricoh Co Ltd Device e822 (rev 01)<br />
<br />
You can enable the sd/sdhci drivers in the Kernel in order to get it to work.<br />
<br />
== Thinklight ==<br />
<br />
The thinklight works out of the box with the<br />
Fn+PgUp key, but it can be controlled as well via the proc interface. <br />
<br />
So you can write a nice script, which you can bind to events, <br />
such as incoming emails, to let the light flash. <br />
<br />
A possible solution is this small script: <br />
<br />
<bash><br />
#!/bin/sh<br />
<br />
if [ -z "$1" ]<br />
then<br />
echo "IBM ThinkLight Control script." <br />
echo "2007 by Christian \"Fuchs\" Loosli."<br />
echo ""<br />
echo "usage: lightctl on | off | toggle | blink"<br />
echo "blink takes two arguments: times and time"<br />
echo "defaults (5 times, 0.5 seconds) are used if not specified"<br />
<br />
else <br />
if [ $1 = "on" ]<br />
then<br />
echo on > /proc/acpi/ibm/light<br />
fi<br />
if [ $1 = "off" ]<br />
then<br />
echo off > /proc/acpi/ibm/light<br />
fi<br />
<br />
if [ $1 = "toggle" ]<br />
then<br />
status=`cat /proc/acpi/ibm/light | grep status | awk '{print $2}'`<br />
<br />
if [ $status = "on" ]<br />
then<br />
echo off > /proc/acpi/ibm/light<br />
else<br />
echo on > /proc/acpi/ibm/light<br />
fi<br />
fi<br />
<br />
if [ $1 = "blink" ]<br />
then<br />
<br />
times=$2<br />
time=$3<br />
<br />
if [ -z "$2" ]<br />
then<br />
times=4 <br />
fi<br />
<br />
if [ -z "$3" ]<br />
then<br />
time=0.5 <br />
fi<br />
<br />
for i in `seq 1 $times`;<br />
do<br />
$0 toggle;<br />
sleep $time;<br />
$0 toggle;<br />
sleep $time<br />
done <br />
fi<br />
fi<br />
exit 0<br />
<br />
</bash><br />
which can be called to let the light blink or switch it off or on. <br />
The blink part is nice for setting to events such as incoming<br />
messages or emails. <br />
<br />
(note: the thinklight is a LED, so it should not care on <br />
how fast and often you let it blink. But I am not responsible<br />
if this script damages your thinklight. Use at own risk.<br />
<br />
== Power saving == <br />
<br />
First of all, turn off all things you are not using, <br />
most of all bluetooth and W-LAN. <br />
You can use the killswitch on the front, it works out of the box. <br />
<br />
You can use the application [http://www.lesswatts.org/projects/powertop/ powertop]<br />
by Intel to look for processes which prevent the CPU from longer sleep states. <br />
<br />
It also gives you some recommendations on services to turn off. Do _not_ turn off the optical drive polling by HAL. <br />
<br />
Dimming the display also saves lots of power. <br />
<br />
You can achieve about 4 - 6 hours of working time<br />
(no compiling or other heavy CPU / GPU usage applications) <br />
with the standard battery like this.<br />
<br />
== ibm-acpi == <br />
<br />
I have ibm-acpi configured as a module in my kernel, as I load it with<br />
<br />
options thinkpad_acpi brightness_enable=1 fan_control=1<br />
<br />
to enable brightness controll via /proc/acpi/ibm on newer kernels and fan control. <br />
The hotkey=enable,<mask> option is used instead of writing to /proc/acpi/ibm/hotkey. <br />
<br />
The default file permissions in /proc/acpi/ibm/* do not grant write access for users. I created the group "ibm", added my users to it and now I chown root:ibm and chmod 0774 the files in /proc/acpi/ibm/ on startup. If you don't want to do this you might use sudo sh -c "echo "foo" > /proc/acpi/ibm/whatever", but you need to install sudo and modify your sudoers file.<br />
<br />
== Configuration Files ==<br />
<br />
=== xorg.conf ===<br />
<br />
<br />
<pre><br />
<br />
##<br />
## Server layout for the built in monitor, an external mouse and the touchpad<br />
##<br />
Section "ServerLayout"<br />
Identifier "single head configuration"<br />
Screen 0 "Screen0" 0 0<br />
EndSection<br />
<br />
##<br />
## Server Flags<br />
##<br />
Section "ServerFlags"<br />
EndSection<br />
<br />
<br />
<br />
##<br />
## FontPath for the x font server xfs<br />
##<br />
Section "Files"<br />
FontPath "/usr/share/fonts/local"<br />
FontPath "/usr/share/fonts/misc"<br />
FontPath "/usr/share/fonts/Type1"<br />
FontPath "/usr/share/fonts/TTF"<br />
FontPath "/usr/share/fonts/75dpi"<br />
FontPath "/usr/share/fonts/100dpi"<br />
EndSection<br />
<br />
##<br />
## Module Section, load default modues<br />
##<br />
Section "Module"<br />
Load "dbe"<br />
Load "extmod"<br />
Load "glx"<br />
Load "freetype"<br />
Load "type1"<br />
EndSection<br />
<br />
##<br />
## Built in Monitor <br />
##<br />
Section "Monitor"<br />
Identifier "Monitor0"<br />
VendorName "Lenovo"<br />
ModelName "LEN"<br />
EndSection<br />
<br />
##<br />
## Videocard section. Some of the following options are now default<br />
## and only kept for compatibility reasons with older drivers<br />
## Read the Appendix B of the nvidia README for explanations <br />
##<br />
Section "Device"<br />
Identifier "Videocard0"<br />
Driver "nvidia"<br />
VendorName "NVIDIA Corporation"<br />
BoardName "Quadro NVS 3100M"<br />
<br />
# power savings<br />
Option "OnDemandVBlankInterrupts" "true"<br />
<br />
# allow underclocking<br />
Option "Coolbits" "1"<br />
<br />
# enable the X Resize and Rotation extension<br />
Option "RandRRotation" "true"<br />
<br />
# backlight fix<br />
Option "RegistryDwords" "EnableBrightnessControl=1"<br />
<br />
EndSection<br />
<br />
<br />
##<br />
## Screen Section<br />
##<br />
Section "Screen"<br />
Identifier "Screen0"<br />
Device "Videocard0"<br />
Monitor "Monitor0"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Viewport 0 0<br />
Depth 24<br />
Modes "1440x900" "1024x768" "800x600" <br />
EndSubSection<br />
SubSection "Display"<br />
Viewport 0 0<br />
Depth 16<br />
Modes "1440x900" "1024x768" "800x600" <br />
EndSubSection<br />
SubSection "Display"<br />
Viewport 0 0<br />
Depth 8<br />
Modes "1440x900" "1024x768" "800x600" <br />
EndSubSection<br />
EndSection<br />
<br />
##<br />
## Extensions, load compisite for compiz<br />
##<br />
Section "Extensions"<br />
Option "Composite" "Enable"<br />
EndSection<br />
<br />
</pre><br />
<br />
=== xmodmap ===<br />
<br />
Note: you have to xmodmap /path/to/file <br />
this file in your autostart. You might have different keycodes, use the application xev to display them. <br />
It is highly recommended to use the XF86foobar buttons, as some applications will be preconfigured to them. <br />
If you want to map them by yourself use Fxx, while xx > 12. <br />
<br />
<pre><br />
<br />
!arrow keys<br />
keycode 167 = XF86Forward<br />
keycode 166 = XF86Back<br />
<br />
!Fn+Fx<br />
keycode 160 = F22<br />
keycode 244 = F23<br />
keycode 150 = F24<br />
keycode 235 = F27<br />
keycode 200 = F28<br />
keycode 213 = F29<br />
<br />
!Brightnes<br />
keycode 101 = SunVideoRaiseBrightness<br />
keycode 212 = SunVideoLowerBrightness<br />
<br />
!Media<br />
keycode 173 = XF86AudioPrev<br />
keycode 172 = XF86AudioPlay<br />
keycode 171 = XF86AudioNext<br />
keycode 174 = XF86AudioStop<br />
<br />
!Volume<br />
keycode 121 = XF86AudioMute<br />
keycode 122 = XF86AudioLowerVolume<br />
keycode 123 = XF86AudioRaiseVolume<br />
<br />
</pre><br />
<br />
=== Kernel configuration ===<br />
<br />
== Kernel 2.6.36 ==<br />
<br />
[http://www.fuchsnet.ch/files/tp/config-2.6.36]<br />
<br />
<br />
<br />
== Links ==<br />
* [http://www.neoberserker.de/phpBB3/viewtopic.php?f=13&t=2132 HowTo -- Install Gentoo on Thinkpad T410 using Intel GMA HD and NVIDIA NVS 3100M (german)]</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Serial_Ultrabay_Slim_HDD_Adapter_II&diff=54421Serial Ultrabay Slim HDD Adapter II2013-03-03T17:49:49Z<p>Dmitri: caddy with plastic surrounding the socket not going to work for you</p>
<hr />
<div>__NOTOC__<br />
{| width="100%"<br />
|style="vertical-align:top" |<br />
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;"><br />
This adapter allows an extra hard drive to be inserted into the Serial Ultrabay Slim.<br />
<br />
=== Features ===<br />
* Takes any SATA 9.5mm thick, 2.5" HDD/SSD.<br />
* If used in a Serial Ultrabay Enhanced, it will also accept 12.7mm high drives.<br />
</div><br />
|style="vertical-align:top" |<br />
[[image:UltraBay Slim SATA HDD Adapter.gif|Ultrabay Slim ThinkPad Serial Hard Drive Bay Adapter III]]<br />
|}<br />
{{NOTE|This SATA HDD adapter only works with select ThinkPads as listed below. For other machines with UltraBay Slim, use the PATA base [[UltraBay Slim HDD Adapter]] or the previous [[Ultrabay Slim SATA HDD Adapter]] or [[Ultrabay Slim SATA HDD Adapter II]] instead.}}<br />
<br />
=== Part numbers ===<br />
*Marketing P/N: 43N3412<br />
*ASM P/N: 43N3414<br />
*FRU P/N: 43N3415<br />
<br />
=== Linux support ===<br />
If connected at boot time then the drive is normally {{path|/dev/sdb}}<br />
<br />
=== Supported with ===<br />
*ThinkPad {{R400}}, {{R500}}<br />
*ThinkPad {{T400}}, {{T400s}}, {{T410}}, {{T410s}}, {{T500}}, {{T510}}, {{T520}}<br />
*ThinkPad {{W500}}, {{W510}}, {{W520}}, {{W530}}, {{W700}}, {{W700ds}}, {{W701}}, {{W701ds}}<br />
*[[X200 UltraBase]]<br />
*[[ThinkPad UltraBase Series 3]]<br />
<br />
===Finding correct adapter===<br />
please pay attention to the plastic border if you are buying from third parties.<br />
<gallery widths=200px><br />
image:T410-hdd-caddy-good.jpg|appropriate socket surrounding<br />
image:t410-hdd-caddy-loosing-connection.jpg|that caddy would not be able to provide good connection due to plastic surrounding of the sata socket<br />
</gallery><br />
<br />
=== Installation ===<br />
<br />
Screw 4 screws in the mounting holes of the hard disk / solid state drive. <br />
<br />
[[image:Hdd-screws.jpg]]<br />
<br />
Slide the screw heads under the plastic notches while plugging in the drive in the Ultrabay adapter. <br />
<br />
[[image:Ultrabay-plastic-notches.jpg]]<br />
<br />
Finally, close the black plastic lever to prevent the drive from sliding backwards.<br />
<br />
=== Vendor documentation ===<br />
* [http://shop.lenovo.com/SEUILibrary/controller/e/web/LenovoPortal/en_US/catalog.workflow:item.detail?GroupID=38&Code=43N3412&current-category-id=6D8E5191FB0B45CBB39F45EB5B2B986E Lenovo product page] <br />
<br />
=== Other documentation ===<br />
* [http://www.thinkpads.com/2009/06/25/about-the-thinkpad-t400s-ultrabay-devices/ Thinkpada.com entry on the T400s' ultrabay]<br />
<br />
[[Category:Components]]</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:T410-hdd-caddy-good.jpg&diff=54420File:T410-hdd-caddy-good.jpg2013-03-03T17:35:45Z<p>Dmitri: uploaded a new version of &quot;File:T410-hdd-caddy-good.jpg&quot;</p>
<hr />
<div></div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:T410-hdd-caddy-good.jpg&diff=54419File:T410-hdd-caddy-good.jpg2013-03-03T17:29:45Z<p>Dmitri: </p>
<hr />
<div></div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:T410-hdd-caddy-loosing-connection.jpg&diff=54418File:T410-hdd-caddy-loosing-connection.jpg2013-03-03T17:25:36Z<p>Dmitri: </p>
<hr />
<div></div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=User:Dmitri&diff=54417User:Dmitri2013-03-03T17:22:44Z<p>Dmitri: jabber updated</p>
<hr />
<div>[[Special:Emailuser/Dmitri|Send me a message]]<br><br />
'''Jabber''': dmitri@gentoo.ru</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Buyers_Guide&diff=30368Buyers Guide2007-06-09T06:53:55Z<p>Dmitri: /* Official list of linux certified computers */ typo</p>
<hr />
<div>{| width="100%"<br />
|style="vertical-align:top;padding-right:20px;width:10px;white-space:nowrap;" | __TOC__<br />
|style="vertical-align:top" |<br />
This page is dedicated to hints about buying used or new ThinkPad models. You can find notes about typical weaknesses of used ThinkPads here and other things you should care about when choosing a ThinkPad and where to buy it.<br />
|}<br />
==Build it yourself and save money==<br />
Lenovo offers more flexibility than any other major manufacturer of laptop computers, at least that I know of. Their "configure-to-order" (CTO) offerings let you build the computer you want, without paying for anything you don't want. The basic CTO includes the mainboard and CPU, but no RAM, disk, mini-PCI cards, software, or other add-ons. You can even get a laptop in a CTO configuration.<br />
<br />
I built my {{X32}} notebook with 1GB RAM, 60GB 5400RPM hard drive, USB DVD-ROM CD-RW drive, and 802.11a/b/g mini-PCI for a grand total of US$1,206, including tax and shipping.<br />
<br />
Start with the complete list of [https://www-03.ibm.com/lenovo/shop/personalpages/public/public/products/dsp_product_list.cfm products]. Look for items that end with "CTO" or "Custom." Choose the chassis you want. Then add whatever [http://www-132.ibm.com/content/home/store_IBMPublicUSA/en_US/Upgrades.html upgrades] you need that only Lenovo offers (such as WiFi). Fill in the rest of the components from other, less expensive vendors.<br />
<br />
Update: you cant do this nowadays. They will not sell you a CTO barebone. At least you cant do it online. You might have to 'con' a sales agent.<br />
<br />
Response to update: I did not need to con anyone. I just ordered the CTO chassis and the parts I needed from their website. I placed the order on August 18, 2005 and received all the shipments by August 26, 2005.<br />
<br />
Comment from visitor: [https://www-03.ibm.com/lenovo/shop/personalpages/public/public/products/dsp_feature_product.cfm?display=main&cat_id=24 Try this page]. You can at least get a Z60 with the titanium cover in a more stripped down model than is otherwise available.<br />
<br />
Special prices: You can get a laptop from Lenovo for special price if you are a student, alumni, researcher <br />
or something like that. You need to go to education -> computers for home -> students (or such), and <br />
now click on "My Account" to create a new account. Perhaps there is another way, but you must end up with a student<br />
account. Then you get around 5% off the web price.<br />
<br />
You can also buy a Lenovo thinkpad pre-configured with Linux from [http://www.linuxcertified.com/linux-laptop-lctp60.html here]<br />
<br />
== Special deals for certain customer groups ==<br />
IBM makes huge discounts to students and teachers:<br />
{| border="1" cellspacing="0" cellpadding="2" style="text-align:left;"<br />
! country !! shops & target groups<br />
|-<br />
| Austria ||<br />
* [http://www.studentline.at/ Studentline.at] (students, university staff, pupils and teachers)<br />
* [http://www.notebook4u.at/ notebook4u.at] (students, university staff, pupils and teachers)<br />
* [http://www.abax.at/academic/ ABAX] (students, university staff, pupils and teachers)<br />
* [http://www.bostelmann.com/ Computer Bostelmann] (students, university staff, pupils and teachers)<br />
|- style="vertical-align:top;"<br />
| France ||<br />
*[http://www.ibm.com/easyaccess/education IBM education homepage]<br />
|- style="vertical-align:top;"<br />
| Germany ||<br />
*[http://www.notebooksbilliger.de notebooksbilliger.de] (pupils, students)<br />
*[http://www.lapstars.de lapstars.de] (students, university staff, pupils and teachers)<br />
*[http://www.ok1.de ok1] (students, university staff, pupils and teachers)<br />
*[http://www.campusrabatt.de/index.php ADD Datensysteme: CampusRabatt] (students, university staff, pupils and teachers)<br />
*[http://www.pro-com.org pro-com Datensysteme]:<br />
**[http://www.pro-com.org/b2b pro-com b2b] (businesses)<br />
**[http://www.nofost.de/ NOFOST] (students & university staff)<br />
**[http://www.no4ed.de/ NOFOED] (pupils & teachers)<br />
**[http://www.nofoch.de/ NOFOCH] (clinics and medical institutions and their staff)<br />
**[http://www.pro-com.org/lf pro-com luf] (universities, schools & other educational and research institutes)<br />
|- style="vertical-align:top;"<br />
| Switzerland ||<br />
*[http://www.rabais-etudiant.ch/ Rabais-Etudiant] (students, teachers, schools)<br />
*[http://www.studentenrabatt.ch/ Studentenrabatt] (students, teachers, schools)<br />
|- style="vertical-align:top;"<br />
| United States ||<br />
* [http://www.pc.ibm.com/us/education/ Education] (K-12 and Higher Education)<br />
* [http://www.dealmine.com/search_by_product.php?s=thinkpad Comparison shop] at DealMine.com to find Thinkpad and membership discounts [http://www.dealmine.com/deals_from/Union_Plus/23 AFL-CIO/AFT] matched up at various stores<br />
<br />
|}<br />
<br />
== Buying FRUs ==<br />
<br />
You can buy single components, called, FRU (Field Replacement Unit), directly from Lenovo.<br />
<br />
* US orders: https://www-132.ibm.com/content/home/store_IBMPublicUSA/en_US/parts/parts_r.html<br />
* Other countries: http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-50278&sitestyle=lenovo<br />
<br />
To find the right FRU, you can look up your model's part lists here:<br />
* [http://www-307.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&lndocid=TPAD-FRU Service parts list index - ThinkPad General]<br />
<br />
== Official list of linux certified computers ==<br />
<br />
* A [http://www.lenovo.com/pc/support/site.wss/MIGR-48NT8D.html list] of completed Linux certifications on [http://www.lenovo.com lenovo web site]<br />
<br />
==Where to by Linux preinstalled thinkpad==<br />
* [http://laclinux.com/en/Laptop Los Alamos Computers] Custom Linux Thinkpads - T Series, Z Series, X Series 23 Apr 2007<br />
<br />
== Buying on eBay ==<br />
* Many sellers do not know exactly what they have. Get the full 7-digit machine type if at all possible. Compare it to the specifications in the *book.pdf series: twbook.pdf, tabook.pdf, tawbook.pdf, etc, to determine actual screen size, original CPU speed, original hard disk, etc.<br />
* You can try getting the serial number as well to check the warranty status at IBMs support pages.<br />
* Check completed auctions carefully to determine going prices for comparable machines.<br />
* Be aware if any port covers are missing. If they are, see if any current auctions are running to check availability.<br />
* If the unit doesn't come with a hard drive, know whether it has the caddy and cover. Make sure that the three passwords are NOT set or that you know the right passwords before you install your hard drive! If you don't: A password can be set into your hard disk automatically, making it a brick - useful for door stopping only!<br />
* Anything with a PIII or later most likely came with a Windows Certificate of Authenticity. Find out whether the listed machine does. Even if you don't want it, it may help resale value when you '''sell''' the machine.<br />
* Read the feedback of the seller on items he has sold, especially electronics, computers and laptops. If meangranny is suddenly selling T43's after three years of lace, stay away.<br />
* If it seems too good to be true, it probably is. There's a reason no one else is bidding on it.<br />
<br />
==Long-time Weaknesses of certain models==<br />
{| border="1" cellspacing="0" cellpadding="2"<br />
! Model !! Issues<br />
|-<br />
| {{390X}} || *models with 15" display are said to have weak display cables that tend to break.<br />
|-<br />
| {{600X}} || Battery problems.<br />
|-<br />
||{{A20p}} || *Base cover corner are prone to crack, root cause stiff display hinges<br />
|-<br />
||{{A31}} || Several reports of [[Problem with garbled screen]] independent on Operating System<br />
|-<br />
| {{A30}}, {{A30p}}, {{A31}}, {{A31p}} || *seem to have a mechanical design that can cause the motherboard to break. At least there are a significant number of reports of broken motherboards on these models.<br />
|-<br />
| {{T30}} || *had a problem with memory sockets detaching from the system board. IBM replaced these free of charge even after warranties expired.<br />
|-<br />
| {{T20}} || Many models have a problem of gradually dying. Attempting to turn on will only cause a blinking light, and many attempts must be made in order to start the machine. Eventually, the machine is no longer bootable. Cause by faulty onboard transistors building up energy.<br />
|}</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Buyers_Guide&diff=30367Buyers Guide2007-06-09T06:50:32Z<p>Dmitri: /* Where to by Linux Linux preinstalled thinkpads */</p>
<hr />
<div>{| width="100%"<br />
|style="vertical-align:top;padding-right:20px;width:10px;white-space:nowrap;" | __TOC__<br />
|style="vertical-align:top" |<br />
This page is dedicated to hints about buying used or new ThinkPad models. You can find notes about typical weaknesses of used ThinkPads here and other things you should care about when choosing a ThinkPad and where to buy it.<br />
|}<br />
==Build it yourself and save money==<br />
Lenovo offers more flexibility than any other major manufacturer of laptop computers, at least that I know of. Their "configure-to-order" (CTO) offerings let you build the computer you want, without paying for anything you don't want. The basic CTO includes the mainboard and CPU, but no RAM, disk, mini-PCI cards, software, or other add-ons. You can even get a laptop in a CTO configuration.<br />
<br />
I built my {{X32}} notebook with 1GB RAM, 60GB 5400RPM hard drive, USB DVD-ROM CD-RW drive, and 802.11a/b/g mini-PCI for a grand total of US$1,206, including tax and shipping.<br />
<br />
Start with the complete list of [https://www-03.ibm.com/lenovo/shop/personalpages/public/public/products/dsp_product_list.cfm products]. Look for items that end with "CTO" or "Custom." Choose the chassis you want. Then add whatever [http://www-132.ibm.com/content/home/store_IBMPublicUSA/en_US/Upgrades.html upgrades] you need that only Lenovo offers (such as WiFi). Fill in the rest of the components from other, less expensive vendors.<br />
<br />
Update: you cant do this nowadays. They will not sell you a CTO barebone. At least you cant do it online. You might have to 'con' a sales agent.<br />
<br />
Response to update: I did not need to con anyone. I just ordered the CTO chassis and the parts I needed from their website. I placed the order on August 18, 2005 and received all the shipments by August 26, 2005.<br />
<br />
Comment from visitor: [https://www-03.ibm.com/lenovo/shop/personalpages/public/public/products/dsp_feature_product.cfm?display=main&cat_id=24 Try this page]. You can at least get a Z60 with the titanium cover in a more stripped down model than is otherwise available.<br />
<br />
Special prices: You can get a laptop from Lenovo for special price if you are a student, alumni, researcher <br />
or something like that. You need to go to education -> computers for home -> students (or such), and <br />
now click on "My Account" to create a new account. Perhaps there is another way, but you must end up with a student<br />
account. Then you get around 5% off the web price.<br />
<br />
You can also buy a Lenovo thinkpad pre-configured with Linux from [http://www.linuxcertified.com/linux-laptop-lctp60.html here]<br />
<br />
== Special deals for certain customer groups ==<br />
IBM makes huge discounts to students and teachers:<br />
{| border="1" cellspacing="0" cellpadding="2" style="text-align:left;"<br />
! country !! shops & target groups<br />
|-<br />
| Austria ||<br />
* [http://www.studentline.at/ Studentline.at] (students, university staff, pupils and teachers)<br />
* [http://www.notebook4u.at/ notebook4u.at] (students, university staff, pupils and teachers)<br />
* [http://www.abax.at/academic/ ABAX] (students, university staff, pupils and teachers)<br />
* [http://www.bostelmann.com/ Computer Bostelmann] (students, university staff, pupils and teachers)<br />
|- style="vertical-align:top;"<br />
| France ||<br />
*[http://www.ibm.com/easyaccess/education IBM education homepage]<br />
|- style="vertical-align:top;"<br />
| Germany ||<br />
*[http://www.notebooksbilliger.de notebooksbilliger.de] (pupils, students)<br />
*[http://www.lapstars.de lapstars.de] (students, university staff, pupils and teachers)<br />
*[http://www.ok1.de ok1] (students, university staff, pupils and teachers)<br />
*[http://www.campusrabatt.de/index.php ADD Datensysteme: CampusRabatt] (students, university staff, pupils and teachers)<br />
*[http://www.pro-com.org pro-com Datensysteme]:<br />
**[http://www.pro-com.org/b2b pro-com b2b] (businesses)<br />
**[http://www.nofost.de/ NOFOST] (students & university staff)<br />
**[http://www.no4ed.de/ NOFOED] (pupils & teachers)<br />
**[http://www.nofoch.de/ NOFOCH] (clinics and medical institutions and their staff)<br />
**[http://www.pro-com.org/lf pro-com luf] (universities, schools & other educational and research institutes)<br />
|- style="vertical-align:top;"<br />
| Switzerland ||<br />
*[http://www.rabais-etudiant.ch/ Rabais-Etudiant] (students, teachers, schools)<br />
*[http://www.studentenrabatt.ch/ Studentenrabatt] (students, teachers, schools)<br />
|- style="vertical-align:top;"<br />
| United States ||<br />
* [http://www.pc.ibm.com/us/education/ Education] (K-12 and Higher Education)<br />
* [http://www.dealmine.com/search_by_product.php?s=thinkpad Comparison shop] at DealMine.com to find Thinkpad and membership discounts [http://www.dealmine.com/deals_from/Union_Plus/23 AFL-CIO/AFT] matched up at various stores<br />
<br />
|}<br />
<br />
== Buying FRUs ==<br />
<br />
You can buy single components, called, FRU (Field Replacement Unit), directly from Lenovo.<br />
<br />
* US orders: https://www-132.ibm.com/content/home/store_IBMPublicUSA/en_US/parts/parts_r.html<br />
* Other countries: http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-50278&sitestyle=lenovo<br />
<br />
To find the right FRU, you can look up your model's part lists here:<br />
* [http://www-307.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&lndocid=TPAD-FRU Service parts list index - ThinkPad General]<br />
<br />
== Official list of linux certified computers ==<br />
<br />
* A [http://www.lenovo.com/pc/support/site.wss/MIGR-48NT8D.html list] of completed Linuxâ„¢ certifications on [http://www.lenovo.com lenovo web site]<br />
<br />
==Where to by Linux preinstalled thinkpad==<br />
* [http://laclinux.com/en/Laptop Los Alamos Computers] Custom Linux Thinkpads - T Series, Z Series, X Series 23 Apr 2007<br />
<br />
== Buying on eBay ==<br />
* Many sellers do not know exactly what they have. Get the full 7-digit machine type if at all possible. Compare it to the specifications in the *book.pdf series: twbook.pdf, tabook.pdf, tawbook.pdf, etc, to determine actual screen size, original CPU speed, original hard disk, etc.<br />
* You can try getting the serial number as well to check the warranty status at IBMs support pages.<br />
* Check completed auctions carefully to determine going prices for comparable machines.<br />
* Be aware if any port covers are missing. If they are, see if any current auctions are running to check availability.<br />
* If the unit doesn't come with a hard drive, know whether it has the caddy and cover. Make sure that the three passwords are NOT set or that you know the right passwords before you install your hard drive! If you don't: A password can be set into your hard disk automatically, making it a brick - useful for door stopping only!<br />
* Anything with a PIII or later most likely came with a Windows Certificate of Authenticity. Find out whether the listed machine does. Even if you don't want it, it may help resale value when you '''sell''' the machine.<br />
* Read the feedback of the seller on items he has sold, especially electronics, computers and laptops. If meangranny is suddenly selling T43's after three years of lace, stay away.<br />
* If it seems too good to be true, it probably is. There's a reason no one else is bidding on it.<br />
<br />
==Long-time Weaknesses of certain models==<br />
{| border="1" cellspacing="0" cellpadding="2"<br />
! Model !! Issues<br />
|-<br />
| {{390X}} || *models with 15" display are said to have weak display cables that tend to break.<br />
|-<br />
| {{600X}} || Battery problems.<br />
|-<br />
||{{A20p}} || *Base cover corner are prone to crack, root cause stiff display hinges<br />
|-<br />
||{{A31}} || Several reports of [[Problem with garbled screen]] independent on Operating System<br />
|-<br />
| {{A30}}, {{A30p}}, {{A31}}, {{A31p}} || *seem to have a mechanical design that can cause the motherboard to break. At least there are a significant number of reports of broken motherboards on these models.<br />
|-<br />
| {{T30}} || *had a problem with memory sockets detaching from the system board. IBM replaced these free of charge even after warranties expired.<br />
|-<br />
| {{T20}} || Many models have a problem of gradually dying. Attempting to turn on will only cause a blinking light, and many attempts must be made in order to start the machine. Eventually, the machine is no longer bootable. Cause by faulty onboard transistors building up energy.<br />
|}</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Talk:How_to_enable_integrated_fingerprint_reader_with_BioAPI&diff=28806Talk:How to enable integrated fingerprint reader with BioAPI2007-03-18T20:29:07Z<p>Dmitri: about fingerpring security</p>
<hr />
<div>== Removing the GUI Prompt ==<br />
For all of you that have had the oppertunity to see the fingerprint image, I think we can all agree that this needs to be changed at ounce. A couple of ideas come to mind, first is to trick bioapi to think that X is not running, and secound is to figure out where the images are being pulled from and then edit them. The later would be nice, but I have been experimenting with strace for several hours and have came up with nothing. Any other ideas?<br />
<br />
--[[User:Paul Strefling|Paul Strefling]] 18:42, 18 July 2006 (CEST)<br />
----<br />
<br />
<br />
== chmod 777 -R /usr/local/var/bioapi/ ==<br />
<br />
Is the above necessary? I just made a debian package of xscreensaver with the patch applied, and when using the bioapi debian pacakge from [http://www.qrivy.net/~michael/temp/ Michael R. Crusoe's site] which has this directory put in /usr/var/bioapi I had not to change the permissions to world-writeable there. Write access to the logfile and usb device are necessary, but that directory works with 755 as well (even though it comes with 777 in Michael's package), and all files and subdirectories are 644/755 too.<br />
<br />
--[[User:Spiney|spiney]] 00:08, 11 Nov 2005 (CET)<br />
----<br />
<br />
== Qt Compilation Success ==<br />
<br />
Here it worked with qt ;)<br />
<br />
--<br />
<br />
I didn't get it to work anyway, but I'm curious about your Qt version(s) as it seemed to want Qt 3 when I was playing with it.<br />
<br />
--[[User:Keegan|keegan]] 05:07, 24 Dec 2005 (CET)<br />
<br />
== using absolute paths for commands ==<br />
<br />
I don't know whether using absolute paths in the articles is a good idea, at least not for tools like {{cmd|lsusb|}} which are not established utilities (i.e. used for more than a decade or something ;)) and happen to be in different locations in different distributions. E.g. said {{cmd|lsusb|}} resides in {{path|/usr/sbin|}} on Debian systems.<br />
<br />
--[[User:Spiney|spiney]] 16:45, 12 Nov 2005 (CET)<br />
----<br />
<br />
I'm using debian testing and it's in {{path|/usr/bin|}}. I agree that the confusion is bad; dropping the absolute paths and adding a general note about checking {{cmd|$PATH|}} in case of problems is probably good.<br />
<br />
--[[User:keegan|keegan]]<br />
<br />
== BioAPI error #3 ==<br />
<br />
Its kind of strage it used to work with everythig (kdm,console,lock,etc)<br />
Now it only works with kdm. It allways gives back:<br />
<br />
pam_bioapi[8113]: Unable to initialize Bioapi framework, BioAPI error #:3.<br />
<br />
Even when I set the right permissions on /proc/bus/usb.<br />
<br />
I am able to run the Sample program as normal user after setting the permissions, but when I change within a user session by su I amnot able to run the Sample program a also get an error Code #3.<br />
<br />
From an other terminal (alt+strg+Fx) I am able to run the Sample program but at the login I still get the error #3.<br />
<br />
I cant remember to have changed anything an d bevor I was able to login in a console with my fingerprint now only kdm is working even kde lock-session <br />
isnt working anymore.<br />
<br />
Any suggestions ?<br />
<br />
==Permission errors exclusive to xscreensaver==<br />
<br />
I followed the instructions above and got everything working, including non-root programs like xscreensaver. However, the script to change usbfs permissions is finicky and fails to work with a lot of things like suspend/resume. Therefore, I switched to specifying <tt>devgid=108,devmode=0660,busgid=108,busmode=0770,listgid=108,listmode=0660</tt> as mount parameters for usbfs, where group 108 is a group I created and added my normal user to. This seems like a much better way of doing things, and it almost works. However, xscreensaver (using the newer patch) gives the familiar <tt>Unable to load BioAPI BSP with UUID of <nowiki>{</nowiki>5550454b-2054-464d-2f45-535320425350<nowiki>}</nowiki>, BioAPI error #194d.</tt> error in {{path|/var/log/auth.log|}}. I don't think this is a straightfoward permissions problem because<br />
<ul><br />
<li>the permissions in {{path|/proc/bus/usb|}} are correct by inspection</li><br />
<li>I can write to the device file as my normal user</li><br />
<li>other programs like {{cmd|test_verify-pam_bioapi|}} and [http://pamtester.sourceforge.net/ {{cmd|pamtester|}}] work as my normal user</li><br />
<li>the weirdest one: xscreensaver works when the {{cmd|xscreensaver|}} daemon is launched from within {{cmd|strace|}}. It's still running as my normal user ({{cmd|strace|}} is not setuid root). I have absolutely no idea what would cause this. I thought it might be an environment issue, but the difference in environment between the {{cmd|strace|}} session and my normal session is trivial.</li><br />
</ul><br />
<br />
At this point I'm hoping it's something dumb, but I'm out of ideas. The {{cmd|xscreensaver|}} error is <tt>pam_authenticate (...) ==&gt; 7 (Authentication failure)</tt>, for the record.<br />
<br />
--[[User:keegan|keegan]]<br />
----<br />
<br />
I had the same problem and found that it was caused by the setuid permission on xscreensaver. After chmod'ing it to 755 and restarting xscreensaver, bioapi authentication worked.<br />
<br />
--[[User:henning|henning]] 09:22, 8 Aug 2006 (CET)<br />
----<br />
<br />
Could you provide all the log lines between pam_start and pam_end when running {{cmd|xscreensaver -verbose|}}?<br />
<br />
BTW, the idea with using the mount options for usbfs is very good, maybe you should add that info to the article page? I use the permission changing script without problems, also after resume, but the usbfs version is probably easier to set up, most people will be able to find {{path|/etc/fstab|}}.<br />
<br />
--[[User:Spiney|spiney]] 10:12, 23 Dec 2005 (CET)<br />
----<br />
<pre><br />
xscreensaver: 20:56:01: alternative_pam: 1 -> pam service: xscreensaver-alternative<br />
xscreensaver: 20:56:01: pam_start ("xscreensaver-alternative", "keegan", ...) ==> 0 (Success)<br />
xscreensaver: 20:56:01: pam_set_item (p, PAM_TTY, ":0.0") ==> 0 (Success)<br />
xscreensaver: 20:56:01: PAM ECHO_OFF("Password: ") ==> password<br />
xscreensaver: 20:56:03: pam_authenticate (...) ==> 7 (Authentication failure)<br />
xscreensaver: 20:56:03: pam_end (...) ==> 0 (Success)<br />
xscreensaver: 20:56:03: prompting for password.<br />
xscreensaver: 20:56:03: 0: creating password dialog.<br />
xscreensaver: 20:56:03: 0: mouse is at 442,412.<br />
xscreensaver: 20:56:03: grabbing server...<br />
xscreensaver: 20:56:03: 0: ungrabbing mouse (was 0x48).<br />
xscreensaver: 20:56:03: 0: grabbing mouse on 0xe0002b... GrabSuccess.<br />
xscreensaver: 20:56:03: ungrabbing server.<br />
xscreensaver: 20:56:05: alternative_pam: 12582928 -> pam service: xscreensaver<br />
xscreensaver: 20:56:05: pam_start ("xscreensaver", "keegan", ...) ==> 0 (Success)<br />
xscreensaver: 20:56:05: pam_set_item (p, PAM_TTY, ":0.0") ==> 0 (Success)<br />
xscreensaver: 20:56:05: PAM ECHO_OFF("Password: ") ==> password<br />
xscreensaver: 20:56:05: pam_authenticate (...) ==> 0 (Success)<br />
xscreensaver: 20:56:05: pam_acct_mgmt (...) ==> 9 (Authentication service cannot retrieve authentication info.)<br />
xscreensaver: 20:56:05: pam_setcred (...) ==> 0 (Success)<br />
xscreensaver: 20:56:05: pam_end (...) ==> 0 (Success)<br />
xscreensaver: 20:56:05: password correct.<br />
</pre><br />
So we've got the first attempt with {{cmd|pam_bioapi|}}, which fails immediately (no sign of the GUI fingerprint prompt, nor a "silent" chance to swipe the finger as with xdm), then the fallback to {{cmd|pam_unix|}} which succeeds. Earlier I had xscreensaver set up to only try {{cmd|pam_bioapi|}}, with essentially the same result -- it gives up on pam entirely and does unix auth itself.<br />
<br />
I'd really like to strace the pam module and see what it's attempting to do to {{path|/proc/bus/usb|}}, but as that actually fixes the problem I'm kinda at a loss. Maybe there's some kernel option to print debugging info for usbfs? I'd be all for changing the article to suggest using mount options in {{path|/etc/fstab|}}, if it weren't for this one weird bug. Has anyone else had the same problem?<br />
<br />
-- [[User:keegan|keegan]]<br />
<br />
Same here, I had the whole setup workin flawlessly (I really need to get that 'never-touch-a-running-system' mantra burnt into the back of my hands), but after a fresh install of the same distro (Ubuntu) and following the same procedure to get things working i get exactly this behaviour. Login works (now even with multifinger, although there are other issues with that), I can use test_verify-pam_bioapi as a user. and the stock xscreensaver works, albeit only after entering a bogus password first.<br />
The patched xscreensaver works when run within a strace (Now that sucks) but fails otherwise. And as i said before, I had this working...<br />
<br />
----<br />
<pre><br />
open("/dev/bus/usb", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 13<br />
fstat64(13, {st_mode=S_IFDIR|0755, st_size=140, ...}) = 0<br />
fcntl64(13, F_SETFD, FD_CLOEXEC) = 0<br />
getdents64(13, /* 7 entries */, 4096) = 168<br />
getdents64(13, /* 0 entries */, 4096) = 0<br />
close(13) = 0<br />
open("/dev/bus/usb/003", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 13<br />
fstat64(13, {st_mode=S_IFDIR|0755, st_size=80, ...}) = 0<br />
fcntl64(13, F_SETFD, FD_CLOEXEC) = 0<br />
getdents64(13, /* 4 entries */, 4096) = 96<br />
open("/dev/bus/usb/003/002", O_RDWR) = -1 EACCES (Permission denied)<br />
open("/dev/bus/usb/003/002", O_RDONLY) = 14<br />
ioctl(14, USBDEVFS_CONNECTINFO, 0xafd5bd34) = -1 EPERM (Operation not permitted)<br />
read(14, "\22\1\0\1\0\0\0\10\203\4\26 \1\0\1\2\0\1", 18) = 18<br />
read(14, "\t\2\'\0\1\1\0\240", 8) = 8<br />
read(14, "2\t\4\0\0\3\377\0\0\0\7\5\201\2@\0\0\7\5\2\2@\0\0\7\5\203"..., 31) = 31<br />
close(14) = 0<br />
</pre><br />
<br />
Here is all the excitement from the strace on xscreensaver. As I originally thought, you cannot get away with just playing with the proc entries :P You also need to deal with the counterpart in /dev. We can wrap up all the permissions issues with a single UDEV rule:<br />
<br />
<pre><br />
# fingerprint fun<br />
BUS=="usb", DRIVER=="usb", SYSFS{product}=="Biometric Coprocessor", GROUP="bioapi", SYMLINK="misc/fingerprint", RUN+="/bin/sh -c 'chgrp bioapi /proc/$RESULT; chmod g+rw /proc/$RESULT'"<br />
</pre><br />
<br />
I created a 'bioapi' group and configured pam to add groups to anyone logging in ''locally''. Now all you need to do is amend the pam configuraion files below. We use 'wdm', but of course its as applicable for all those resource hungry touchy-feely gdm/kdm folk out there too ;)<br />
<br />
/etc/security/group.conf<br />
<pre><br />
# local group settings<br />
login; tty*; *; al0000-2400; audio,floppy,video,cdrom,nvram,plugdev,bioapi<br />
wdm; :*; *; al0000-2400; audio,floppy,video,cdrom,nvram,plugdev,bioapi<br />
</pre><br />
<br />
/etc/pam.d/login<br />
<pre><br />
[snipped]<br />
<br />
# group *has* to go here<br />
auth optional pam_group.so<br />
<br />
# fingerprint action<br />
auth sufficient /usr/local/lib/security/pam_bioapi.so {5550454b-2054-464d-2f45-535320425350} /etc/bioapi1.10/pam/<br />
<br />
# Standard Un*x authentication.<br />
@include common-auth<br />
<br />
# This allows certain extra groups to be granted to a user<br />
# based on things like time of day, tty, service, and user.<br />
# Please edit /etc/security/group.conf to fit your needs<br />
# (Replaces the `CONSOLE_GROUPS' option in login.defs)<br />
#auth optional pam_group.so<br />
<br />
[snipped]<br />
</pre><br />
<br />
/etc/pam.d/wdm<br />
<pre><br />
#%PAM-1.0<br />
auth required pam_nologin.so<br />
auth required pam_env.so<br />
<br />
# local tweak<br />
auth optional pam_group.so<br />
<br />
# fingerprint action<br />
auth sufficient /usr/local/lib/security/pam_bioapi.so {5550454b-2054-464d-2f45-535320425350} /etc/bioapi1.10/pam/<br />
<br />
@include common-auth<br />
@include common-account<br />
@include common-session<br />
</pre><br />
<br />
'''N.B.''' as with all pam related things, the order is important<br />
<br />
-- [[User:Jim diGriz|Jim diGriz]]<br />
----<br />
<br />
==Driver Expiring!!!==<br />
Don't anyone notice that both betas of the UPEK driver is expiring in<br />
about a month in the new year, Jan 1st 2006? They really mean it! <br />
I set my computer date to next year and get a message "the driver has expired" when using fingerprint reader! This is a grave threat to our computer lifestyle, i.e. for those of us who got it working and use it<br />
daily:) <br />
Is there any workaround other than setting the date back a year when<br />
new year come and wait for new driver? Is there a way to figure out where exactly in the driver it checked the date and how? The must have set it <br />
somewhere in file libtfmessbsp.so, but it is binary and I can't figure out how to Reverse Engineer it.<br />
<br />
---Jiang<br />
<br />
Yes, the beta driver will expire. The final version (which is due REALLY soon now) will not.<br />
<br />
Sumedha<br />
<br />
Any news? Just 9 days left to expiry. --[[User:Thinker|Thinker]] 21:36, 22 Dec 2005 (CET)<br />
<br />
The final is out, get it at [http://www.upek.com/support/dl_linux_bsp.asp UPEK's download page]. And how does one edit the industry watch section of the main page?<br />
<br />
--[[User:Spiney|spiney]] 21:39, 22 Dec 2005 (CET)<br />
<br />
Ah, great! Both the article page and the driver page it points to are out of date... For the news, just follow the "[[ThinkWiki:News|News]]" link in the main page. <br />
<br />
--[[User:Thinker|Thinker]] 21:44, 22 Dec 2005 (CET)<br />
<br />
As this is now very soon I've updated the article page to link to the final driver, which is better in a few ways anyway. This is unless anyone minds (are there any unresolved issues with the final that don't exist in the betas?).<br />
<br />
--[[User:Keegan|keegan]] 05:06, 24 Dec 2005 (CET)<br />
<br />
== Updated xscreensaver patch ==<br />
<br />
I've tried to address some usability issues with the old patch, e.g. that it calls the PAM bioapi module twice before falling back to the normal authentication methods. It can be found on my [http://linux.spiney.org/debian_gnu_linux_on_an_ibm_thinkpad_t43p_fingerprint_reader Fingerprint Reader] page, feedback is very welcome.<br />
<br />
--[[User:Spiney|spiney]] 20:36, 22 Dec 2005 (CET)<br />
----<br />
<br />
== Fingerprint or password ==<br />
<br />
Is there any way to have PAM accept either a password or a finger swipe, right away? Sometimes one is more convenient, sometimes the other, so and it's a lot of trouble to wait for the UPEK scanner prompt and then cancel it in order to reach the password entry.<br />
<br />
--[[User:Thinker|Thinker]] 19:27, 24 Dec 2005 (CET)<br />
<br />
:I got this to work by editing /etc/pam.d/common-auth and changing the following line:<br />
: <pre>auth sufficient pam_unix.so nullok_secure</pre><br />
: Note the change from "required" to "sufficient"<br />
: I hope this is secure >.><br />
: -[[User:Tro|Tro]]<br />
<br />
== KDE screensaver ==<br />
<br />
If you get the following in {{path|/var/log/secure}} when you try to unlock the KDE screensaver, it means you forgot to set the USB device permissions.<br />
localhost pam_bioapi[24981]: Unable to load BioAPI BSP with UUID of {5550454b-2054-464d-2f45-535320425350}, BioAPI error #194d.<br />
<br />
--[[User:Thinker|Thinker]] 21:21, 24 Dec 2005 (CET)<br />
----<br />
<br />
== fingerprint reader in action. ==<br />
<br />
small video with fingerprint reader in action with login: http://chao.ch/tmp/mov01302.mpg<br />
<br />
--[[User:62.202.35.30|62.202.35.30]] 17:57, 29 Dec 2005 (CET)<br />
<br />
==A little feedback...==<br />
...for all the editors of this article:<br />
<br />
"[[How to enable the fingerprint reader]] over at ThinkWiki.org is some real exhaustive documentation for getting the fingerprint scanner working on the ThinkPads. There is also a troubleshooting section towards the end that might be very useful to anyone messing around with it.<br />
<br />
Thanks to those responsible for taking the time to write up this excellent guide."<br />
<br />
Those thanks come from [http://linuxbiometrics.com/modules/news/ LinuxBiometrics.com]<br />
<br />
[[User:Wyrfel|Wyrfel]] 01:24, 9 Jan 2006 (CET)<br />
----<br />
<br />
==pam_bioapi.so is not linked to libbioapi100.so==<br />
I downloaded the pam_bioapi package and patched the file by following the wiki. However, I got the following result:<br />
<br />
~/soft/thinkpad/pam_bioapi-0.2.1/libpam_bioapi/.libs$ ls -la<br />
total 48<br />
drwxr-xr-x 2 louis users 248 2006-01-12 01:18 ./<br />
drwxr-xr-x 4 louis users 312 2006-01-12 01:18 ../<br />
lrwxrwxrwx 1 louis users 16 2006-01-12 01:18 pam_bioapi.la -> ../pam_bioapi.la<br />
-rw-r--r-- 1 louis users 824 2006-01-12 01:18 pam_bioapi.lai<br />
-rw-r--r-- 1 louis users 19716 2006-01-12 01:18 pam_bioapi.o<br />
lrwxrwxrwx 1 louis users 19 2006-01-12 01:18 pam_bioapi.so -> pam_bioapi.so.0.0.0*<br />
lrwxrwxrwx 1 louis users 19 2006-01-12 01:18 pam_bioapi.so.0 -> pam_bioapi.so.0.0.0*<br />
-rwxr-xr-x 1 louis users 21789 2006-01-12 01:18 pam_bioapi.so.0.0.0*<br />
<br />
~/soft/thinkpad/pam_bioapi-0.2.1/libpam_bioapi/.libs$ ldd pam_bioapi.so<br />
linux-gate.so.1 => (0xffffe000)<br />
libc.so.6 => /lib/tls/libc.so.6 (0x40025000)<br />
/lib/ld-linux.so.2 (0x80000000)<br />
~/soft/thinkpad/pam_bioapi-0.2.1/libpam_bioapi/.libs$<br />
<br />
pam_bioapi.so is NOT linked to libbioapi100.so. The latter is in the ld path:<br />
<br />
~/soft/thinkpad/pam_bioapi-0.2.1/libpam_bioapi/.libs$ ldconfig -p |grep bioapi<br />
libtfmessbsp.so (libc6) => /opt/bioapi/lib/libtfmessbsp.so<br />
libpwbsp.so.0 (libc6) => /opt/bioapi/lib/libpwbsp.so.0<br />
libpwbsp.so (libc6) => /opt/bioapi/lib/libpwbsp.so<br />
libmds_util.so.0 (libc6) => /opt/bioapi/lib/libmds_util.so.0<br />
libmds_util.so (libc6) => /opt/bioapi/lib/libmds_util.so<br />
libbioapi100.so.0 (libc6) => /opt/bioapi/lib/libbioapi100.so.0<br />
libbioapi100.so (libc6) => /opt/bioapi/lib/libbioapi100.so<br />
libbioapi_mds300.so.0 (libc6) => /opt/bioapi/lib/libbioapi_mds300.so.0<br />
libbioapi_mds300.so (libc6) => /opt/bioapi/lib/libbioapi_mds300.so<br />
libbioapi_dummy100.so.0 (libc6) => /opt/bioapi/lib/libbioapi_dummy100.so.0<br />
libbioapi_dummy100.so (libc6) => /opt/bioapi/lib/libbioapi_dummy100.so<br />
<br />
and the Sample program also works allowing me to enroll and test a fingerprint.<br />
<br />
My system is SuSE 10 with the kernel of 2.6.13-15. Any ideas?<br />
<br />
Thanks.<br />
<br />
--[[User:Tyne|Tyne]] 09:51, 12 Jan 2006 (CET)<br />
<br />
==xscreensaver 4.23+fingerprint.patch causes xscreensaver-gl to crash kernel==<br />
<br />
I've gotten bioapi and 'Sample' to allow me to enroll my fingerprint, and I've also experienced the 'two logon' issue. <br />
<br />
I compiled xscreensaver 4.23 (though it seemed that apt came with 4.24) and applied the patch. My goal was to have the fingerprint prompt come up and to see the "bad image" of the fingerprint scan.<br />
<br />
The first time I did this, xscreensaver-gl took a dump and was causing kernel crashes. So I went and got the newest xscreensaver source and patches, and applied the bioapi patch to those. It worked (meaning it didnt crash the kernel anymore ;b )<br />
<br />
It would seem that there is a /etc/pam.d/xscreensaver, so I commented everything out of that except the bioapi line. <br />
<br />
Locking xscreensaver, then attempting to unlock didnt show me any fingerprint requirements, and my password didnt work.<br />
<br />
I'm wondering if theres something that was left out of the xscreensaver howto? or if theres anyone out there who's gotten the xscreensaver portion of this to work, who would be willing to help me out :)<br />
<br />
--[[User:Viss|Viss]] 11:15am, 5 Feb 2006 (PST)<br />
<br />
== gdm hangs on kde logout ==<br />
<br />
Hi.<br />
<br />
I am using a Thinkpad t43, installed with gentoo.<br />
I run gdm as the login manager, with kde 3.4 and enlightenment dr16 as the window manager.<br />
<br />
I followed the steps in the wiki, and the biometric scanner is now working fine, appart from the fact that when I close/end the session I just get a blank screen, in place of the gdm login screen.<br />
<br />
Disabling the biometrics (by setting the pam.d file back to their originals), the session ends fine. I do this for a few times, and then set the biometrics back again, and it work fine for a few logouts, and then back to the blank screen again.<br />
<br />
I can do ctrl+shift+f1 to get to a console window and from there I can issue a shutdown.<br />
Although this works ok, it is a bit of a pain.<br />
<br />
Any ideas ?<br />
<br />
== 'gksudo' Doesn't show biopam finger swipe prompt... ==<br />
<br />
Hey all,<br />
<br />
First off... this is an excellent how-to! I have no real interest in using fingerprint scanner with xscreensaver, but it was up and working with everything else on my system pretty much effortlessly.<br />
<br />
I'm running Ubuntu Breezy Badger 5.10 on an IBM T43p (2678) and have run into two oddities:<br />
1) /etc/pam.d/xscreensaver - as it is initially configured, if you have an xscreensaver session set to require password (or xlock with screensaver) then you get prompted for the normal text-password entry and then will be prompted to swipe your finger... This is easily fixed by commenting out the '@include common-auth' line in /etc/pam.d/xscreensaver and adding the line 'auth required pam_unix.so nullok_secure'. After that change it only prompts for the text-password entry challenge.<br />
<br />
2) gksudo - This is more of a pain... I can use the fingerprint scanner with gksudo, but gksudo doesn't prompt with the (ugly-but-functional) finger swipe dialog the way that gdm does during login or xscreensaver does when configured as mentioned above (pre-fix). So, if I start a Gnome app launcher that is prepended with gksudo, nothing appears to happen until I swipe my finger and then the app gets launched. That's cool and all, but there are times (esp. when multi-tasking) when I forget to swipe and then go "what happened to xxxxx? oh yeah..." <br />
<br />
Anyway... does anyone have an idea of what I can do to get the dialog to appear?<br />
<br />
thanx<br />
<br />
--[[User:JELaVallee|JELaVallee]] 05:56, 20 February 2006 (CET)<br />
<br />
The gksudo problem is a restriction from the X server. It doesn't allow to grab the display for other users than the logged-in one. And the pam_bioapi is invoked as root.<br />
<br />
--[[User:Whoopie|Whoopie]] 13:10, 20 February 2006 (CET)<br />
<br />
That makes sense... so, now I have to wonder, is there a patchable work-around like the xscreensaver one that could allow for this to work? Where should I research such? gksu's project or is this more an issue at the X11-level?<br />
<br />
--[[User:JELaVallee|JELaVallee]] 19:38, 27 February 2006 (CET)<br />
<br />
I got it working. Grab out the newer pam-bioapi from CVS (http://savannah.nongnu.org/cvs/?group=pam-bioapi). This version supports "multi-finger" when using the sqlite3 database. And it supports defining the used display.<br />
Change your line in your /etc/pam.d/ files like this:<br />
<br />
auth sufficient pam_bioapi.so {5550454b-2054-464d-2f45-535320425350} /etc/bioapi/pam/bioshadow.db :0<br />
<br />
--[[User:Whoopie|Whoopie]] 14:27, 1 March 2006 (CET)<br />
<br />
Very cool... Did you run into any issues rebuilding/installing this? I'll give it a shot this evening... THANKS!<br />
<br />
--[[User:JELaVallee|JELaVallee]] 21:07, 1 March 2006 (CET)<br />
<br />
Invoke 'xhost +local:' should be able to let gksudo work. Or just blindly sweap the finger. ;)<br />
<br />
--[[User:YChao|YChao]] 21:25, 7 March 2006 (CET)<br />
<br />
Where do I have to put 'xhost +local:'?<br />
<br />
== Multifinger ==<br />
<br />
Wow, theres a new version of pam_bioapi which supports multifinger enrollment and user identification.<br />
I'll break my system with that this evening :)<br />
<br />
<br />
Yes, but I'm searching the patch for xdm. The download page from Josef Hajas (http://nax.hn.org/pub/bioapi/) is down. Does anybody have it?<br />
<br />
Update: The patch can be found here: http://www.qrivy.net/~michael/blua/xdm_bio.patch<br />
<br />
--[[User:Whoopie|Whoopie]] 17:43, 1 March 2006 (CET)<br />
<br />
Tried the newest pam-bioapi from CVS (http://savannah.nongnu.org/cvs/?group=pam-bioapi) on FC3. Failed on enrolling fingerprints: ({{path|/var/log/secure|}})<br />
<br />
<code>Mar 9 15:30:40 localhost pam_bioapi[32407]: Can't open database: library routine called out of<br />
sequence</code><br />
<br />
Could anyone help?<br />
<br />
--[[User:Ychao|Ychao]] 00:38, 10 March 2006 (CET)<br />
<br />
I don't know how to solve it. It seems to be a problem with sqlite3. Which version do you use? Under Ubuntu Breezy, it's 3.2.1.<br />
<br />
--[[User:Whoopie|Whoopie]] 12:27, 10 March 2006 (CET)<br />
<br />
<br />
Did anybody tried multifinger with BioAPI? I am interested in multifinger at all, not only PAM.<br />
<br />
Updated:<br />
<br />
succesfully installed pam_bioapi with multifinger support, some info:<br />
<br />
use: <code>auth sufficient pam_bioapi.so {5550454b-2054-464d-2f45-535320425350} /etc/bioapi/pam/bioshadow.db :0</code> in pam.d, the bioshadow column is path to bioapi sqlite database.<br />
<br />
if authentication doesn't work, edit /etc/syslog.conf and write line *.alert /var/log/syslog, so you see pam_bioapi messages in /var/log/syslog<br />
most common error is missing biodata table, newest pam_bioapi version should create it automatically, but if it doesn't, go to /etc/bioapi/pam/ and run command <code>sqlite3 bioshadow.db</code>, then insert this:<br />
<br />
<code>CREATE TABLE biodata (id INTEGER PRIMARY KEY,uid INTEGER,uuid TEXT,header BLOB,data BLOB,signature BLOB,type INTEGER,other BLOB);</code><br />
<br />
you must then enroll at least one fingerprint to the database, do it using test_enroll-pam_bioapi from pam_bioapi distribution. note that you must have root user enrolled in order to use <code>su</code> command.<br />
<br />
--[[User:MeBa|MeBa]] 16:58, 22 March 2006 (CET)<br />
<br />
== GNOME Screensaver support ==<br />
<br />
Did anybody try to port the xscreensaver patch to gnome-screensaver? Since Ubuntu Dapper will be shiped with it, it would be nice to have it working then with the fingerprint reader.<br />
<br />
Update: Initial support can be found in gnome-screensaver CVS. See [http://bugzilla.gnome.org/show_bug.cgi?id=338635 bugreport].<br />
<br />
--[[User:Whoopie|Whoopie]] 12:36, 16 March 2006 (CET)<br />
<br />
I'm just working on changes in pam_bioapi which makes gui callbacks from gnome-screensaver possible. But first I have to debug BioAPI error #194d after hibernation because gnome-screensaver is one of the applications returning this error.<br />
<br />
--[[User:Nax|nax]] 23:59, 9 July 2006 (CEST)<br />
<br />
== No sources for bioapi 1.2.3 ==<br />
<br />
There doesn't seem to be any sources available for the recommended Debian package bioapi-1.2.3. That's rather distressing since this is security-related software. A google search doesn't seem to be turning up anything, either. Anybody have a lead on where to find sources?<br />
<br />
--[[User:TedTso|TedTso]] 7:47, 29 Apri 2006 (EDT)<br />
<br />
== Strange issue on GDM login ==<br />
<br />
I successfully have the fingerprint reader running. Everything is working nicely, except when I try to login with GDM for the first time. The login seems to work fine (the PAM_BIOAPI seems to return true) but GDM hangs then. This issue does not occur when I already logged in using password and logged out again or if I kill GDM when it hangs after the first attempt. Anyone an idea on this?<br />
<br />
--[[User:Dotxp|dotxp]] 22:54, 2 May 2006 (CEST)<br />
<br />
== Don't ask for finger scan when lid closed ==<br />
<br />
When using an external CRT+keyboard+mouse with the LD lid closed, it's quiet annoying to have to reach over and open the lid in order to do a finger scan.<br />
Any idea how to make PAM use the fingerprint reader when the lid is open, but skip it when the lid is closed?<br />
<br />
--[[User:Thinker|Thinker]] 13:30, 7 May 2006 (CEST)<br />
<br />
I edited my /etc/gdm/Init/Default script in a way, that it changes /etc/pam.d/common-auth depending on the lid state: When the lid is closed, the file is replaced by a version without the lines for the finterprint reader, and of course the opposite action when the lid is open.<br />
<br />
--[[User:Aerials|Aerials]] 15:52, 9 July 2006 (CEST)<br />
----<br />
<br />
== Unable to initialize Bioapi framework, BioAPI error #:3 ==<br />
<br />
I see some other discussion on this page about the dreaded "Unable to initialize Bioapi framework, BioAPI error #:3" error, but the only solution i can see seems really complicated -- adding users to groups when they log in, etc. Is that really the simplest way to make xscreensaver work? I'm the only user of my laptop -- the only account who will ever log in, the only fingerprint in the database, the only person who will ever run xscreensaver. Is there some quick easy way to make xscreensaver unlock when i swipe my finger?<br />
<br />
-- [[User:Mike Schiraldi|Mike Schiraldi]] 19:52, 16 May 2006 (CEST)<br />
<br />
== Security level ==<br />
<br />
[http://www.upek.com/support/pdf/BioAPI_PerfectMatchBSP1.7.pdf UPEK PerfectMatch Algorithm]<br />
According to this link, highest security level is 0 which is opposite to 5 mentioned in the article. What is correct?<br />
<br />
Update: Well,TFMESS_BSP_LIN.pdf, i downloaded somewhere stated 5 as highest security level. So, ?<br />
<br />
== How good is it? ==<br />
<br />
How strong is the security that results? Is it actually as good as, say, a 10-character password, or is it the sort of thing you can fool<br />
with some gelatin and a used glass? My inclination is not to trust it - but perhaps someone more knowledgeable would care to comment?<br />
-- [[User:RichardNeill|RichardNeill]] 16:58, 25 July 2006 (CEST)<br />
<br />
== Patch for new versions of xdm ==<br />
<br />
I was having some trouble getting the xdm patch to work using the version of xdm in Debian unstable (1.0.5). Turns out that xdm now checks for blank username and doesn't even bother to call pam. Here's an updated version of the patch that works for me: [http://www.ugcs.caltech.edu/~q/code/xdm_bio-1.0.5.patch]<br />
<br />
[[User:Virtualphtn|Virtualphtn]] 02:40, 16 September 2006 (CEST)<br />
<br />
== Using instructions with OpenSuSE 10.1 ==<br />
<br />
Now, as OpenSuSE has the problem with the gcc4 I followed the (by the way not very detailed) instructions about patching it. I've done the first patch before installing the BioApi($ wget http://upir.cz/linux/patches/bioapi-1.2.2-gcc4.patch <br />
$ patch -p1 < bioapi-1.2.2-gcc4.patch) but it didn't work(dal_classes.h:460: error: extra qualification 'DAL_DATABASE_INFO_LIST::' on member 'GetDBNamesAndParameters')<br />
Can somebody help me?<br />
--[[User:SQLMosquito|SQLMosquito]] 19:53, 29 September 2006 (CEST)<br />
<br />
I've been having the same problem for quite a while. Though when using the script found here http://www.cryptosecurity.net/Suse_T60_DRAFT.htm (based on the thinkwikiscript) things worked just fine. Don't ask me why, I really tried everything I know to be able to build it by myself. Anyway, it works good now.<br />
--[[User:Stooofer|Stooofer]] 00:12, 8 January 2007 (CET)<br />
<br />
== 64-bit architecture/OSS release ==<br />
<br />
Hi,<br />
<br />
To all ThinkWiki contributors: Thanks for all the help so far! I've made a lot of progress, but I have a show-stopper for the fingerprint reader. I'm not using x86 architecture! I am using the (new) Thinkpad X60, which just got upgraded to the Core 2 Duo with EM64T support a couple of weeks ago (along with a ton of other upgrades to the product, without changing its name...........!) So consequently I have Fedora Core 6 x86_64 installed. Works great, in general - standby, trackpoint, special buttons, nvram, and wifi supported (although not all out of the box; the ipw3945 driver had to be downloaded from atrpms.) <br />
<br />
The distributed shared library provided by the vendor doesn't link against any 64-bit programs, because it's a 32-bit library. Of course, my desktop manager, PAM, etc. are all 64-bit. Without "downgrading" to a 32-bit distro, is there any way to either hack around this, or to bring up Pavel Machek's open-source enrollment program (thinkfinger) up to the vendor's driver's level of integration with BioAPI? Sounds like some development work, but I'm willing to help any way I can!<br />
<br />
There should be a way to get this moving - either using a wrapper a la nspluginwrapper to enable an interface to the 32-bit driver on another architecture, or building upwards from Pavel's small test program.<br />
<br />
Thanks!<br />
<br />
Sean<br />
<br />
== Alternative ThinkFinger "Driver" ==<br />
<br />
The thinkfinger Project http://thinkfinger.sf.net is a GPL library with a own pam module.<br />
<br />
It works... <br />
It works with all pam application.<br />
(dont try to display a own gui window). <br />
It works without the bioapi.<br />
wow! this is so easy to set up and just works!<br />
<br />
:Have to agree, this looks much easier. So I added a short explanation on how to setup this lib on [http://www.thinkwiki.org/index.php?title=Installing_Ubuntu_6.06_on_a_ThinkPad_T43#Fingerprint_Reader Installing_Ubuntu_6.06_on_a_ThinkPad_T43#Fingerprint_Reader].<br />
:Maybe it should be moved to some other place? Probably it has to be adopted then slightly. E.g. is 'checkinstall' and/or '/lib/security' debian-specific?<br />
:([[User:Tec|Tec]])<br />
::I've just created [[How to enable the fingerprint reader with ThinkFinger]], based on your description. Hope it is okay so.<br />
:: --[[User:Zhenech|Zhenech]] 12:50, 18 February 2007 (CET)<br />
:::Great, thanks!<br />
:::[[User:Tec|Tec]]<br />
<br />
== about fingerpring security ==<br />
<br />
[[Talk:How to enable the fingerprint reader with ThinkFinger]] couple links about fingerpring security or should we pay more for it?</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Talk:How_to_enable_the_integrated_fingerprint_reader_with_ThinkFinger&diff=28805Talk:How to enable the integrated fingerprint reader with ThinkFinger2007-03-18T20:26:52Z<p>Dmitri: +links on howto to fake fingerprints</p>
<hr />
<div>about fingerpring security or should we pay more for it?<br />
* [http://www.ccc.de/biometrie/fingerabdruck_kopieren?language=en How to fake fingerprints]<br />
* [http://events.ccc.de/congress/2006/Fahrplan/events/1578.en.html Hacking fingerprint recognition systems (PDF file - 1.0 MB)]</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Talk:Problem_with_disabled_VT&diff=28679Talk:Problem with disabled VT2007-03-11T22:45:51Z<p>Dmitri: Z61t BIOS does not have VT</p>
<hr />
<div>== IBM/Lenovo support does not know about VT==<br />
Just talked to the german hotline, the guy didn't even know, that Intel CPUs does have VT (but he knew about AMD, which isn't used by IBM/Lenovo). So I got a new record in their support-list and they will call me back. --10:35, 14 December 2006 (CET)<br />
:Got a callback from Lenovo, they said I might have a modified Windows (because the laptop was bougth through the students-support-stuff) and as I said Linux, I got an "unsupported". It looks for me like selling a Ferrari, but not telling where the gear-shift is... Found an interesting link on the net: http://forum.thinkpads.com/viewtopic.php?t=34454 - seems someone at Lenovo knows that VT is disabled... --[[User:Zhenech|Zhenech]] 13:12, 14 December 2006 (CET)<br />
<br />
Needless to say, it has nothing to do with the OS. It's a bit in a CPU register that's set by the BIOS before the OS even loads. --[[User:Thinker|Thinker]] 14:59, 15 December 2006 (CET)<br />
<br />
::: Seems Lenovo has fixed the problem for the X60 Tablet, and I heard they plan a VT-capable Z61 BIOS for April, hope this won't be an aprils-fool ;) --[[User:Zhenech|Zhenech]] 10:01, 15 January 2007 (CET)<br />
<br />
== Z61t BIOS does not have VT ==<br />
<br />
Shots made on 2007-03-11 [[User:Dmitri|Dmitri]]<br />
<gallery><br />
Image:Z61t BIOS ver.jpg|Z61t BIOS 2.09 7FET91WW<br />
Image:Z61t BIOS ver closeup.jpg|Z61t BIOS 2.09 7FET91WW<br />
Image:Z61t BIOS menu.jpg|Z61t BIOS 2.09 7FET91WW Menu<br />
Image:Z61t CPU menu.jpg|Z61t BIOS 2.09 CPU menu - multicore enabling option only<br />
Image:Z61t CPU menu help.jpg|Z61t BIOS 2.09 CPU menu - seems like it's just enables second core of the CPU<br />
</gallery></div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:Z61t_CPU_menu_help.jpg&diff=28678File:Z61t CPU menu help.jpg2007-03-11T22:38:20Z<p>Dmitri: CPU menu help- multicore enabling option only</p>
<hr />
<div>CPU menu help- multicore enabling option only</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:Z61t_CPU_menu.jpg&diff=28677File:Z61t CPU menu.jpg2007-03-11T22:36:25Z<p>Dmitri: Z61t BIOS 2.09 CPU menu - multicore enabling option only</p>
<hr />
<div>Z61t BIOS 2.09 CPU menu - multicore enabling option only</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:Z61t_BIOS_menu.jpg&diff=28676File:Z61t BIOS menu.jpg2007-03-11T22:33:56Z<p>Dmitri: Z61t BIOS 2.09 7FET91WW Menu</p>
<hr />
<div>Z61t BIOS 2.09 7FET91WW Menu</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:Z61t_BIOS_ver_closeup.jpg&diff=28675File:Z61t BIOS ver closeup.jpg2007-03-11T22:31:52Z<p>Dmitri: Z61t BIOS 2.09 7FET91WW 2006-11-01</p>
<hr />
<div>Z61t BIOS 2.09 7FET91WW 2006-11-01</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=File:Z61t_BIOS_ver.jpg&diff=28674File:Z61t BIOS ver.jpg2007-03-11T22:26:18Z<p>Dmitri: Z61t
BIOS 2.09 7FET91WW
2006-11-01</p>
<hr />
<div>Z61t <br />
BIOS 2.09 7FET91WW<br />
2006-11-01</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Problem_with_disabled_VT&diff=28673Problem with disabled VT2007-03-11T22:23:08Z<p>Dmitri: /* Affected Models */ no VT for z61t</p>
<hr />
<div>{{Stub}}<br />
Some recent ThinkPad models ship with Intel CPUs that implement the [http://en.wikipedia.org/wiki/Virtualization_Technology Intel VT extensions] for hardware-supported virtualization, but the capability is disabled by the BIOS. There is no known solution. See [http://lkml.org/lkml/2006/11/5/89 this LKML thread].<br />
<br />
<br />
== Affected Models ==<br />
* {{Z61e}}, {{Z61m}}, {{Z61p}}, {{Z61t}} - forum.thinkpads.com threads: [http://forum.thinkpads.com/viewtopic.php?p=203419] [http://forum.thinkpads.com/viewtopic.php?t=34454]<br />
* {{X60}}, {{X60s}} - [http://www.burtonini.com/blog/computers/kvm-2006-12-12-21-30 Ross Burton's blog] - [http://www-3.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&lndocid=MIGR-63144 fixed by new BIOS]<br />
* {{X60t}} - [http://www-3.ibm.com/pc/support/site.wss/MIGR-67148.html fixed by new BIOS] <br />
* Others?</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Problem_with_disabled_VT&diff=28635Problem with disabled VT2007-03-09T07:53:57Z<p>Dmitri: /* Affected Models */ update on Z61t</p>
<hr />
<div>{{Stub}}<br />
Some recent ThinkPad models ship with Intel CPUs that implement the [http://en.wikipedia.org/wiki/Virtualization_Technology Intel VT extensions] for hardware-supported virtualization, but the capability is disabled by the BIOS. There is no known solution. See [http://lkml.org/lkml/2006/11/5/89 this LKML thread].<br />
<br />
<br />
== Affected Models ==<br />
* {{Z61e}}, {{Z61m}}, {{Z61p}} - forum.thinkpads.com threads: [http://forum.thinkpads.com/viewtopic.php?p=203419] [http://forum.thinkpads.com/viewtopic.php?t=34454]<br />
* {{X60}}, {{X60s}} - [http://www.burtonini.com/blog/computers/kvm-2006-12-12-21-30 Ross Burton's blog] - [http://www-3.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&lndocid=MIGR-63144 fixed by new BIOS]<br />
* {{X60t}} - [http://www-3.ibm.com/pc/support/site.wss/MIGR-67148.html fixed by new BIOS] <br />
* Others?<br />
<br />
** {{Z61t}} - BIOS show an option to enable/disable VT :.[[User:Dmitri|Dmitri]] 08:53, 9 March 2007 (CET)</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=User:Dmitri&diff=28632User:Dmitri2007-03-09T07:16:17Z<p>Dmitri: contact info</p>
<hr />
<div>[[Special:Emailuser/Dmitri|Send me a message]]<br><br />
'''Jabber''': do@jabber.ivanovo.ru</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Buyers_Guide&diff=28631Buyers Guide2007-03-09T07:10:52Z<p>Dmitri: +list of certified models</p>
<hr />
<div>{| width="100%"<br />
|style="vertical-align:top;padding-right:20px;width:10px;white-space:nowrap;" | __TOC__<br />
|style="vertical-align:top" |<br />
This page is dedicated to hints about buying used or new ThinkPad models. You can find notes about typical weaknesses of used ThinkPads here and other things you should care about when choosing a ThinkPad and where to buy it.<br />
|}<br />
==Build it yourself and save money==<br />
Lenovo offers more flexibility than any other major manufacturer of laptop computers, at least that I know of. Their "configure-to-order" (CTO) offerings let you build the computer you want, without paying for anything you don't want. The basic CTO includes the mainboard and CPU, but no RAM, disk, mini-PCI cards, software, or other add-ons. You can even get a laptop in a CTO configuration.<br />
<br />
I built my {{X32}} notebook with 1GB RAM, 60GB 5400RPM hard drive, USB DVD-ROM CD-RW drive, and 802.11a/b/g mini-PCI for a grand total of US$1,206, including tax and shipping.<br />
<br />
Start with the complete list of [https://www-03.ibm.com/lenovo/shop/personalpages/public/public/products/dsp_product_list.cfm products]. Look for items that end with "CTO" or "Custom." Choose the chassis you want. Then add whatever [http://www-132.ibm.com/content/home/store_IBMPublicUSA/en_US/Upgrades.html upgrades] you need that only Lenovo offers (such as WiFi). Fill in the rest of the components from other, less expensive vendors.<br />
<br />
Update: you cant do this nowadays. They will not sell you a CTO barebone. At least you cant do it online. You might have to 'con' a sales agent.<br />
<br />
Response to update: I did not need to con anyone. I just ordered the CTO chassis and the parts I needed from their website. I placed the order on August 18, 2005 and received all the shipments by August 26, 2005.<br />
<br />
Comment from visitor: [https://www-03.ibm.com/lenovo/shop/personalpages/public/public/products/dsp_feature_product.cfm?display=main&cat_id=24 Try this page]. You can at least get a Z60 with the titanium cover in a more stripped down model than is otherwise available.<br />
<br />
Special prices: You can get a laptop from Lenovo for special price if you are a student, alumni, researcher <br />
or something like. You need to go to education -> computers for home -> students (or such), and <br />
now click on "My Account" to create a new account. Perhaps there is another way, but you must end up with a student<br />
account. Then you get around 5% off the web price.<br />
<br />
You can also buy a Lenovo thinkpad pre-configured with Linux from [http://www.linuxcertified.com/linux-laptop-lctp60.html here]<br />
<br />
== Special deals for certain customer groups ==<br />
IBM makes huge discounts to students and teachers:<br />
{| border="1" cellspacing="0" cellpadding="2" style="text-align:left;"<br />
! country !! shops & target groups<br />
|-<br />
| Austria ||<br />
* [http://www.studentline.at/ Studentline.at] (students, university staff, pupils and teachers)<br />
* [http://www.notebook4u.at/ notebook4u.at] (students, university staff, pupils and teachers)<br />
* [http://www.abax.at/academic/ ABAX] (students, university staff, pupils and teachers)<br />
* [http://www.bostelmann.com/ Computer Bostelmann] (students, university staff, pupils and teachers)<br />
|- style="vertical-align:top;"<br />
| France ||<br />
*[http://www.ibm.com/easyaccess/education IBM education homepage]<br />
|- style="vertical-align:top;"<br />
| Germany ||<br />
*[http://www.notebooksbilliger.de notebooksbilliger.de] (pupils, students)<br />
*[http://www.lapstars.de lapstars.de] (students, university staff, pupils and teachers)<br />
*[http://www.ok1.de ok1] (students, university staff, pupils and teachers)<br />
*[http://www.campusrabatt.de/index.php ADD Datensysteme: CampusRabatt] (students, university staff, pupils and teachers)<br />
*[http://www.pro-com.org pro-com Datensysteme]:<br />
**[http://www.pro-com.org/b2b pro-com b2b] (businesses)<br />
**[http://www.nofost.de/ NOFOST] (students & university staff)<br />
**[http://www.no4ed.de/ NOFOED] (pupils & teachers)<br />
**[http://www.nofoch.de/ NOFOCH] (clinics and medical institutions and their staff)<br />
**[http://www.pro-com.org/lf pro-com luf] (universities, schools & other educational and research institutes)<br />
|- style="vertical-align:top;"<br />
| Switzerland ||<br />
*[http://www.rabais-etudiant.ch/ Rabais-Etudiant] (students, teachers, schools)<br />
*[http://www.studentenrabatt.ch/ Studentenrabatt] (students, teachers, schools)<br />
|- style="vertical-align:top;"<br />
| United States ||<br />
* [http://www.pc.ibm.com/us/education/ Education] (K-12 and Higher Education)<br />
* [http://www.dealmine.com/search_by_product.php?s=thinkpad Comparison shop] at DealMine.com to find Thinkpad and membership discounts [http://www.dealmine.com/deals_from/Union_Plus/23 AFL-CIO/AFT] matched up at various stores<br />
<br />
|}<br />
<br />
== Buying FRUs ==<br />
<br />
You can buy single components, called, FRU (Field Replacement Unit), directly from Lenovo.<br />
<br />
* US orders: https://www-132.ibm.com/content/home/store_IBMPublicUSA/en_US/parts/parts_r.html<br />
* Other countries: http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-50278&sitestyle=lenovo<br />
<br />
To find the right FRU, you can look up your model's part lists here:<br />
* [http://www-307.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&lndocid=TPAD-FRU Service parts list index - ThinkPad General]<br />
<br />
== Official list of linux certified computers ==<br />
<br />
* A [http://www.lenovo.com/pc/support/site.wss/MIGR-48NT8D.html list] of completed Linuxâ„¢ certifications on [http://www.lenovo.com lenovo web site]<br />
<br />
== Buying on eBay ==<br />
* Many sellers do not know exactly what they have. Get the full 7-digit machine type if at all possible. Compare it to the specifications in the *book.pdf series: twbook.pdf, tabook.pdf, tawbook.pdf, etc, to determine actual screen size, original CPU speed, original hard disk, etc.<br />
* You can try getting the serial number as well to check the warranty status at IBMs support pages.<br />
* Check completed auctions carefully to determine going prices for comparable machines.<br />
* Be aware if any port covers are missing. If they are, see if any current auctions are running to check availability.<br />
* If the unit doesn't come with a hard drive, know whether it has the caddy and cover. Make sure that the three passwords are NOT set or that you know the right passwords before you install your hard drive! If you don't: A password can be set into your hard disk automatically, making it a brick - useful for door stopping only!<br />
* Anything with a PIII or later most likely came with a Windows Certificate of Authenticity. Find out whether the listed machine does. Even if you don't want it, it may help resale value when you '''sell''' the machine.<br />
* Read the feedback of the seller on items he has sold, especially electronics, computers and laptops. If meangranny is suddenly selling T43's after three years of lace, stay away.<br />
* If it seems too good to be true, it probably is. There's a reason no one else is bidding on it.<br />
<br />
==Long-time Weaknesses of certain models==<br />
{| border="1" cellspacing="0" cellpadding="2"<br />
! Model !! Issues<br />
|-<br />
| {{390X}} || *models with 15" display are said to have weak display cables that tend to break.<br />
|-<br />
| {{600X}} || Battery problems.<br />
|-<br />
||{{A20p}} || *Base cover corner are prone to crack, root cause stiff display hinges<br />
|-<br />
||{{A31}} || Several reports of [[Problem with garbled screen]] independent on Operating System<br />
|-<br />
| {{A30}}, {{A30p}}, {{A31}}, {{A31p}} || *seem to have a mechanical design that can cause the motherboard to break. At least there are a significant number of reports of broken motherboards on these models.<br />
|-<br />
| {{T30}} || *had a problem with memory sockets detaching from the system board. IBM replaced these free of charge even after warranties expired.<br />
|-<br />
| {{T20}} || Many models have a problem of gradually dying. Attempting to turn on will only cause a blinking light, and many attempts must be made in order to start the machine. Eventually, the machine is no longer bootable. Cause by faulty onboard transistors building up energy.<br />
|}</div>Dmitrihttps://www.thinkwiki.org/w/index.php?title=Category_talk:Z61t&diff=28630Category talk:Z61t2007-03-09T07:05:54Z<p>Dmitri: +link to IBM specs on Z61t</p>
<hr />
<div>* [http://www-306.ibm.com/common/ssi/OIX.wss?DocURL=http://d03xhttpcl001g.boulder.ibm.com/common/ssi/rep_ca/6/897/ENUS106-326/index.html&InfoType=AN&InfoSubType=CA&InfoDesc=Announcement+Letters&panelurl=&paneltext=&printableversion=yes Tech info on IBM site] for [[:Category:Z61t|Z61t]]</div>Dmitri