DebianDog HowTo thread

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

DebianDog HowTo thread

#1 Post by saintless »

In this thread I will start adding information in separate posts about using Debian Live (and special DebianDog info different from Debian Live) in a way similar to Puppy + any useful tips we can find. The information here will be linked to DebianDog thread first page posts:
http://murga-linux.com/puppy/viewtopic.php?t=93225

Some of the information will be added from http://foxyroxylinux.com since it is already available from JBV and me there and is valid all the way for DebianDog.

The first 3 posts will describe boot and save file options for DebianDog.

Toni
Last edited by saintless on Sat 24 Jun 2017, 11:57, edited 6 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

DebianDog Wheezy live-boot-2x

#2 Post by saintless »

Click here for updated information on github wiki.

This post will not be updated anymore.

=========================================

DebianDog Wheezy live-boot-2x:

Never use the same /live folder name for more DebianDog frugall install on different partitions. Use different folder name for more DebianDog frugal install. You will find information and example boot code at the end of this post.

Boot with initrd1.img created with initramfs-tools-v2.x.
Debian Wheezy Live CD using live-boot version 2.x or Debian-Squeeze boot and save file options.
The difference is initrd1.img is made with initramfs-tools-2x which gives back Copy On Write (COW) option.
EDIT: Since October 2014 all boot methods have /live/cow (Copy On Write) and all related to this scripts work with every boot method.

==========================================
Debian save file is nothing different from Puppy linux pupsave.2fs save file. Just the name is different. You can create empty pupsave.2fs save file from Puppy linux and rename it to live-rw. Now you can use it with DebianDog.
==========================================

The easiest way to test DebianDog live-rw save file:
Download this archive with 1Gb example live-rw save file. Extract it on top of any ext or vfat partition including the boot partition.
http://smokey01.com/saintless/1gb-example-save-file.zip

Add persistent in kernel boot line. Example boot code after extracting /live folder on top of sda1.

Code: Select all

title DebianDog (sda1) 
root=(hd0,0) 
kernel /live/vmlinuz1 boot=live config persistent swapon quickreboot noprompt showmounts
initrd /live/initrd1.img 
Now DebianDog will use this live-rw save file on boot just like Puppy uses pupsave.2sfs save file.
If you remove persistent from the boot code no save file will be used.

The same way instead live-rw save file you can use ext partition labeled live-rw.

Read more about live-boot-2x code options here:
http://live-systems.org/manpages/oldsta ... oot.7.html
You will find there options to use different save file name and location as many other options.

Live-snapshot save in cpio archive option available only for live-boot-2x. More information here:
http://www.murga-linux.com/puppy/viewto ... 787#783787

Workaround from William how to use live-rw save file on NTFS partition:
http://murga-linux.com/puppy/viewtopic. ... 400#758027


How to use Make Save File utility from DebianDog with pictures:
http://murga-linux.com/puppy/viewtopic. ... 215#773215

========================================

More information from William:
How to boot DebianDog-Wheezy live-boot-2x from directory other than /live

The trick here is simply to provide the correct paths to vmlinuz1 and initrd1.img and to use kernel line parameter "live-media-path" to point to where 01-filesystem.squashfs is stored (or to storage location of whatever your squashed filesystem is named).

For example,

If you extracted the whole live folder INCLUDING the containing directory called 'live' from DebianDog-Wheezy iso and put it in /debiandog_jwm on say /dev/sda1 (i.e. first partition of device sda) the following menu.lst stanza could be used:

Code: Select all

title debiandog_jwm (on first partition of drive /dev/sda = hd0,0)
root=(hd0,0)
kernel /debiandog_jwm/live/vmlinuz1 boot=live config persistent swapon quickreboot noprompt showmounts live-media-path=debiandog_jwm/live/
initrd /debiandog_jwm/live/initrd1.img

If alternatively you extract the CONTENTS ONLY OF DebianDog-Wheezy iso's 'live' directory into /debiandog_jwm on partition /dev/sdb2 (i.e. the second partition of device sdb), the following menu.lst stanza could be used:

Code: Select all

title debiandog_jwm (on second partition of device /dev/sdb = hd1,1)
root=(hd1,1)
kernel /debiandog_jwm/vmlinuz1 boot=live config persistent swapon quickreboot noprompt showmounts live-media-path=debiandog_jwm/
initrd /debiandog_jwm/initrd1.img
Note if /live is missing from the boot code you can not use porteus-boot method since it will search for /live folder and will exit with error if it can not find it.
Last edited by saintless on Fri 18 Mar 2016, 08:22, edited 15 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Debian-PorteusDog Wheezy (porteus-boot and save method)

#3 Post by saintless »

Click here for updated information on github wiki.

This post will not be updated anymore.

=========================================

Debian-PorteusDog Wheezy (porteus-boot):

You can use encrypted save file created with Make Save File:
http://www.murga-linux.com/puppy/viewto ... 215#773215

Never use the same /live folder name for more DebianDog frugall install on different partitions. Use different folder name for more DebianDog frugal install. You will find information and example boot code at the end of this post.

Porteus initrd1.xz made for debian kernel and firmware.
Debian Wheezy Live CD using porteus boot method (very similar to Puppy linux boot and save options).

The initrd1.xz file is edited from Fred for use only with DebianDog.
It is not the exact Porteus boot method since it uses .squashfs modules extension instead .xzm and /live instead /debian folder, but the save file options are the same as in Porteus.
You can skip from=/ in the kernel boot line but it is better to keep it this way. For example if want to place folder /live inside folder /deb you need to use from=/deb/
copy2ram parameter will copy all available modules inside /live and its subfolders in RAM.

Boot code examples after extracting /live folder from the iso on top of sda1:

Copy to RAM without saving changes:

Code: Select all

title Debian-PorteusDog Wheezy (sda1) 
root (hd0,0) 
kernel (hd0,0)/live/vmlinuz1 noauto from=/ copy2ram
initrd (hd0,0)/live/initrd1.xz
This will create automatically /live/changes folder for changes:

Code: Select all

title Debian-PorteusDog Wheezy (sda1) 
root (hd0,0) 
kernel (hd0,0)/live/vmlinuz1 noauto from=/ changes=/live/
initrd (hd0,0)/live/initrd1.xz
This need to be created "changes.dat" (or whatever custom name) savefile first for saving changes:

Code: Select all

title PorteusDog (sda1) 
root (hd0,0) 
kernel (hd0,0)/live/vmlinuz1 noauto from=/ changes=/live/changes.dat 
initrd (hd0,0)/live/initrd1.xz
This way of saving changes is equivalent of "pupmode=13" in puppy , saving changes only at shutdown:

Code: Select all

title PorteusDog (sda1) 
root (hd0,0) 
kernel (hd0,0)/live/vmlinuz1 noauto from=/ changes=EXIT:/live/changes.dat 
initrd (hd0,0)/live/initrd1.xz
Note for last example: there will be prompt for save or not to save. Also for prompt to create savefile first time boot.

Like the previous one saving changes only at shutdown but in folder changes:

Code: Select all

title PorteusDog (sda1) 
root (hd0,0)
kernel (hd0,0)/live/vmlinuz1 noauto from=/ changes=EXIT:/live/
initrd (hd0,0)/live/initrd1.xz
For the last two boot codes only "changes=EXIT:/path-to-save-file/folder" you can type from terminal:

Code: Select all

save2flash
This will save in the middle of a session.

Note about changes=EXIT:/ boot code: It is recommended to check for free space before saving changes on Exit or using save2flash. Read here how to do it.

==================================

Porteus initrd1.xz file depends now on /live folder. It will search for folder with name live and if it is not found an error message will appear. But you can place /live in any folder with different name and to use this code (inside folder /debiandog_jwm for example):

Code: Select all

title PorteusDog (sda1) 
root (hd0,0)
kernel (hd0,0)/debiandog_jwm/live/vmlinuz1 noauto from=/debiandog_jwm/ 
initrd (hd0,0)/debiandog_jwm/live/initrd1.xz
=======================================
Last edited by saintless on Sat 31 Oct 2015, 09:23, edited 15 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

DebianDog Wheezy live-boot-3x

#4 Post by saintless »

Click here for updated information on github wiki.

This post will not be updated anymore.

DebianDog Wheezy live-boot-3x:

Never use the same /live folder name for more DebianDog frugall install on different partitions. Use different folder name for more DebianDog frugal install. You will find information and example boot code at the end of this post.

If you are not familiar with Debian live-boot-v3 (Debian Wheezy Live CD) do not use this method. It seems more complicated that the other 2 methods but it also has advantages like persistence for only one or more folders instead full persistence.

Boot with initrd.img created with initramfs-tools-v3.x.
Debian Wheezy Live CD using live-boot version 3.x or Debian Wheezy boot method.

To save changes you need to create save file named persistence or ext partition with label persistence + adding persistence.conf file inside this save file or save partition (both save file and partition can be encrypted).

The easiest way to test this save file option is to download this archive with 1Gb save file example with persistence.conf file for full persistence included. Just extract it on top of a partition, but not on the boot partition:
http://smokey01.com/saintless/1Gb-persi ... ive-rw.zip

You need to add persistence in kernel boot line otherwise no save file will be used. Example boot code after extracting /live folder from the iso on top of sda1.

Code: Select all

title DebianDog Wheezy live-boot-3x (sda1)
root=(hd0,0) 
kernel /live/vmlinuz1 boot=live config persistence swapon rw-basemount quickreboot noeject
initrd /live/initrd.img 
Read more about live-boot-3x code options here:
http://live-systems.org/manpages/stable ... oot.7.html

Thanks to dzz from Refracta forum and his initrd patch we can use encrypted save file or partition even on the same partition where /live folder is located (boot partition). The patch triggers boot code parameter rw-basemount. The standard boot script live is replaced with a patched one from /opt/bin/special/patch-live-initrd/files/scripts (included in DebianDog-Jwm version iso). In case you need it for patching initrd for new installed kernel here is download link:
http://www.smokey01.com/saintless/Fredx ... cta.tar.gz
The patch also fixes the swapon (or swap) boot parameter for live-boot-3x. Now auto swapon on boot works.

The refracta-patch is added only in DebianDog-Squeeze and Wheezy.
In DebianDog-Jessie and SID this patch is not included since the problem is fixed and adding rw-basemount is not needed (it is not a problem to add rw-basemount booting DebianDog-Jessie and SID but it does nothing in Jessie and SID).


Example boot code for (sda1) using encrypted save file inside /live folder:

Code: Select all

title DebianDog Wheezy live-boot-3 Persistence Encrypted 
rootnoverify (hd0,0)
kernel /live/vmlinuz1 boot=live config swapon noeject quickreboot rw-basemount persistence persistence-path=/live/ persistence-encryption=none,luks 
initrd /live/initrd.img
rw-basemount (or basemountmode=rw,noatime) mounts the boot partition read and write. Otherwise it will be read-only mounted.
persistence-path=/live/ - gives the path where persistence save file is located (/live/persistence in this example)
persistence-encryption=none,luks - the system will search fo Luks encrypted or no-encrypted save file or save partition or save file located inside encrypted partition.

Creating save file from command line:

Code: Select all

dd if=/dev/null of=persistence bs=1M seek=2000 # for 2GB save file
mkfs.ext2 -F persistence
Also you need to create persistence.conf file with this content for full peristence. Note file persistence.conf needs to end with a new empty line or persistence won't work (thanks for the tip, Step):

Code: Select all

/ union

Then copy the persistence.conf file inside persistence save file:

Code: Select all

mkdir /mntpt
mount -o loop /path-to/persistence /mntpt
cp /path-to/persistence.conf /mntpt
umount /mntpt
rmdir /mntpt
How to use Make Save File utility from DebianDog with pictures (but you still need to copy from command line persistence.conf file inside after):
http://murga-linux.com/puppy/viewtopic. ... 215#773215

More information about the content options in persistence.conf file here:
http://live-systems.org/manpages/stable ... onf.5.html

You can setup more than one live-boot-3x DebianDog frugal install in different folder names the same way as in live-boot-2x

/etc/fstab - if you like to edit this file manually adding mount points remove swapon option from boot code. Otherwise it will create new empty /etc/fstab on boot or only with swap partition line (if swap partition is found). You can still swapon partition on boot by creating symlink /opt/bin/mount-swap in /root/Startup:

Code: Select all

ln -sf /opt/bin/mount-swap /root/Startup
More information about this you can read here and here.

Edit: Since October 2014 there is included script /opt/bin/cowsave from Fred and /live/cow (+ /live/image) links are ato-created on boot. RemasterCow now works with every boot method and any save file/partition or no-save option.


=======================================
Last edited by saintless on Sat 31 Oct 2015, 09:25, edited 28 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Saving changes without save file on first boot

#5 Post by saintless »

Saving changes without save file on first boot:

Lets say you like to test DebianDog from CD. Your computer has enough RAM (1Gb and more), you have ext partition on your HDD and you decide to install some programs with apt-get to test if all works OK.

You will reproduce all your actions easy again and again later but even without save file you have a choice to save the changes in separate module with RemasterCow. More information here:
http://murga-linux.com/puppy/viewtopic. ... 214#773214

For DebianDog Jwm/icewm version run System->RemasterCow
(for openbox/xfce version run Create Module From Changes).
Then chose the partition and name for working folder (02-my-changes for example) and module 02-my-changes-squashfs (for example).
This will save your changes in separate sfs module.

Image

Then you can load this new module with Utilities -> SFS-Loader or by right click sfs-load option. Or just to make frugal install and place the module inside /live folder. It will be loaded on every boot.

=========================================
Last edited by saintless on Tue 14 Oct 2014, 12:52, edited 11 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Boot DebianDog with different kernel

#6 Post by saintless »

Booting with different kernel (only in case DebianDog has boot problems on your hardware):

Edit: In case you need RTAI kernel for LinuxCNC or similar software read here.

Important information: Do not use Copy to RAM for the first test with separate kernel module. live-boot-2x and live-boot-3x boot codes are setup to copy only one sfs module in Ram. If you prefer to use Copy to Ram with separate kernel module change toram=01-filesystem.squashfs to toram only in the boot codes in menu.lst or use porteus-boot (which is setup to copy all modules in RAM).

Download one of the following archives and extract it in /live folder. Change menu.lst to point new initrd and vmlinuz files. There is Readme-initrd.txt in every archive with information for what boot method is every initrd file:

026-kernel-3.14-Pae.tar.gz - Debian kernel-3.14-0.bpo.1-686-Pae - for modern multi-core machines (and any PC with PAE capability). It has initrd files for live-boot-2.x, live-boot-3.x and porteus-boot.
http://kazzascorner.com.au/saintless/De ... Pae.tar.gz

Use this in your grub boot menu list:
vmlinuz6
initrd61.img - for live-boot-3x save file method. + encrypted save
initrd62.img - for live-boot-2x save file method.
initrd63.xz - for porteus-boot and save file method. + encrypted save

Check the new kernel after boot:

Code: Select all

root@debian:~# uname -r
3.14-0.bpo.1-686-pae
root@debian:~# uname -a
Linux debian 3.14-0.bpo.1-686-pae #1 SMP Debian 3.14.4-1~bpo70+1 
/opt/bin/update-dpkg-314pae - single click on this script will update dpkg database with information for the new kernel. Needed only in case you decide to remaster the system.

=============================================

022-kernel-686-pae.zip - Debian kernel-3.2.0-4-686-Pae - for modern multi-core machines (and any PC with PAE capability). It has initrd files for live-boot-2.x, live-boot-3.x and porteus-boot.
http://kazzascorner.com.au/saintless/De ... 86-pae.zip

Use this in your grub boot menu list:
vmlinuz2
initrd21.img - for live-boot-3x save file method. + encrypted save
initrd22.img - for live-boot-2x save file method.
initrd23.xz - for porteus-boot and save file method. + encrypted save

Check the new kernel after boot:

Code: Select all

root@debian:~# uname -r
3.2.0-4-686-pae
root@debian:~# uname -a
Linux debian 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 GNU/Linux
/opt/bin/update-dpkg-686-pae - single click on this script will update dpkg database with information for the new kernel. Needed only in case you decide to remaster the system.

==========================================

023-kernel-3.9.11-porteus.zip - Porteus kernel-3.9.11 (the smallest one). It has only porteus-boot (Debian-PorteusDog) initrd file.
http://kazzascorner.com.au/saintless/De ... orteus.zip

Use this in your grub boot menu list:
vmlinuz3
initrd3.xz - porteus-boot only available for this kernel. - (No encrypted save option. Something is missing in kernel compiling encrypted support. Change in initrd3.xz is not enough.)


Check the new kernel after boot:

Code: Select all

root@debian:~# uname -r
3.9.11-porteus
root@debian:~# uname -a
Linux debian 3.9.11-porteus #1 SMP PREEMPT Mon Jul 22 23:09:06 UTC 2013 i686 GNU/Linux
/opt/bin/update-dpkg-porteus - single click on this script will update dpkg database with information for the new kernel. Needed only in case you decide to remaster the system.

==========================================

024-kernel-3.12.0.bpo.1.zip - Debian kernel-3.12.0.bpo.1. It has live-boot-v2.x, live-boot-v.3.x and porteus-boot initrd files included.
http://kazzascorner.com.au/saintless/De ... .bpo.1.zip

Use this in your grub boot menu list:
vmlinuz4
initrd3.img - for live-boot-3x save file method. + encrypted save
initrd4.img - for live-boot-2x save file method.
initrd4.xz - for porteus-boot and save file method. + encrypted save

Check the new kernel after boot:

Code: Select all

root@debian:~# uname -r
3.12-0.bpo.1-486
root@debian:~# uname -a
Linux debian 3.12-0.bpo.1-486 #1 Debian 3.12.9-1~bpo70+1 (2014-02-07) i686 GNU/Linux
/opt/bin/update-dpkg-kernel-312 - single click on this script will update dpkg database with information for the new kernel. Needed only in case you decide to remaster the system.

=======================================

025-kernel-3.13.6-porteus.zip - Porteus kernel-3.13.6. It has only porteus-boot (Debian-PorteusDog) initrd file:
http://kazzascorner.com.au/saintless/De ... orteus.zip

Use this in your grub boot menu list:
vmlinuz5
initrd5.xz - porteus-boot only available for this kernel. - added encrypted save option.

========================================

You can easy remaster DebianDog with new kernel. Every kernel module has dpkg-update script in /opt/bin Single click on the script will update dpkg database with information.
Then remove the previous kernel with:

Code: Select all

apt-get purge linux-image-3.2.0-4-486
And remaster the system with RemasterDog. How to use RemasterDog read here:
http://murga-linux.com/puppy/viewtopic. ... 212#773212

Example instruction for remastering with specific new kernel module here:
http://murga-linux.com/puppy/viewtopic. ... 972#779972

=========================================

If you already changed the default kernel and made few more remasters of DebianDog you can reverse the default 3.2.0-4-486 kernel any time very easy the same way by downloading this module and following the same procedure:
http://kazzascorner.com.au/saintless/De ... el-486.zip

Use this in your grub boot menu list:
vmlinuz1
initrd.img - for live-boot-3x save file method. + encrypted save
initrd1.img - for live-boot-2x save file method.
initrd1.xz - for porteus-boot and save file method. + encrypted save

/opt/bin/update-dpkg-486 - single click on this script will update dpkg database with information for the new kernel. Needed only in case you decide to remaster the system.

======================================

It is easy to install any new kernel from Debian repository with apt-get. The only difficult part is to create new initrd.img for every boot method. I will give some information about this in the next post.

========================================
Last edited by saintless on Sat 05 Sep 2015, 06:27, edited 18 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Installing new kernel and creating new initrd files

#7 Post by saintless »

The instruction removed. It needs changing for latest DD versions.
Last edited by saintless on Fri 23 Oct 2015, 18:33, edited 44 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Making separate module with option to update dpkg database

#8 Post by saintless »

Making separate module with option to update dpkg database safe:

This information is taken mostly from JBV included in FoxyRoxyLinux. The method is much more polished there and does also auto-update on the fly adding the script content in /etc/rc.local
What I give here is very basic information what changes are needed for this to work proper. For anyone interested here is more information about dpkg database from the source:
http://foxyroxylinux.com/viewtopic.php? ... b464f97ab1

Lets just take the above example installing

Code: Select all

apt-get install linux-image-3.2.0-4-686-pae
After the installation finish use RemasterCow to make new module with 3.2.0-4-686-pae kernel but do not accept to make new module. Much more work has to be done in the working folder. RemasterCow will do most of the cleaning and it will be safe to use the module as it is without further cleaning by only making dpkg update database script.
Now look inside the working folder (for example /live/image/02-k3.2.0-4-686-pae).
What you can clean more safe from here is:
/boot folder - you do not need it inside the module. What you need from there is initrd.img and vmlinuz to be placed in /live folder for boot with the new kernel.
The rest of the cleaning is different for every program so the safe choice is not to remove something if you are not sure what it does.
Be sure to delete /etc/network/interfaces since it includes custom network settings. This is done automatically with the new RemasterCow script.

Making update dpkg database safe script:
New RemasterCow script has as default option not to register dpkg by adding -new at the end of /var/lib/dpkg/info, status and available. Rename them back if needed.
Now look inside the working dir in /live/image/02-k3.2.0-4-686-pae/var/lib/dpkg/info
You will see there preinstall, postinstall scripts and tamplates, list and md5sum files for kernel 3.2.0-4-686-pae. Leave them as they are.
Now create inside /live/image/02-k/var/lib/dpkg empty files named status.686-pae and available.686-pae.
Open /live/image/02-k3.2.0-4-686-pae/var/lib/dpkg/status and find the information about kernel 3.2.0-4-686-pae. Select it and copy inside status.686-pae file. It is important to add two empty lines at the end of status.686-pae and if you add more than one package to leave one empty line between the packages:

Code: Select all

Package: linux-image-3.2.0-4-686-pae
Status: install ok installed
Priority: optional
Section: kernel
Installed-Size: 80175
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Architecture: i386
Source: linux
Version: 3.2.51-1
Provides: linux-image, linux-modules-3.2.0-4-686-pae
Depends: kmod | module-init-tools, linux-base (>= 3~), initramfs-tools (>= 0.99~) | linux-initramfs-tool
Pre-Depends: debconf | debconf-2.0
Recommends: firmware-linux-free (>= 3~), libc6-i686
Suggests: linux-doc-3.2, debian-kernel-handbook, grub-pc | extlinux | lilo
Breaks: at (<< 3.1.12-1+squeeze1), initramfs-tools (<< 0.99~)
Description: Linux 3.2 for modern PCs
 The Linux kernel 3.2 and modules for use on PCs with one or more
 processors supporting PAE.
 .
 This kernel requires PAE (Physical Address Extension). This feature is
 supported by the Intel Pentium Pro/II/III/4/4M/D, Xeon, Core and Atom; AMD
 Geode NX, Athlon (K7), Duron, Opteron, Sempron, Turion or Phenom;
 Transmeta Efficeon; VIA C7; and some other processors.
 .
 This kernel also runs on a Xen hypervisor.  It supports both privileged
 (dom0) and unprivileged (domU) operation.


Now make the same by copy/paste the information from available to available.686-pae (note the information in available has one extra Size line from the information in status. You can not copy/paste from available to status and the opposite). Again it is important to add two empty lines at the end of status.686-pae and if you add more than one package to leave one empty line between the packages:

Code: Select all

Package: linux-image-3.2.0-4-686-pae
Priority: optional
Section: kernel
Installed-Size: 80261
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Architecture: i386
Source: linux
Version: 3.2.57-3
Provides: linux-image, linux-modules-3.2.0-4-686-pae
Depends: kmod | module-init-tools, linux-base (>= 3~), initramfs-tools (>= 0.99~) | linux-initramfs-tool
Pre-Depends: debconf | debconf-2.0
Recommends: firmware-linux-free (>= 3~), libc6-i686
Suggests: linux-doc-3.2, debian-kernel-handbook, grub-pc | extlinux | lilo
Breaks: at (<< 3.1.12-1+squeeze1), initramfs-tools (<< 0.99~)
Size: 22942260
Description: Linux 3.2 for modern PCs
 The Linux kernel 3.2 and modules for use on PCs with one or more
 processors supporting PAE.
 .
 This kernel requires PAE (Physical Address Extension). This feature is
 supported by the Intel Pentium Pro/II/III/4/4M/D, Xeon, Core and Atom; AMD
 Geode NX, Athlon (K7), Duron, Opteron, Sempron, Turion or Phenom;
 Transmeta Efficeon; VIA C7; and some other processors.
 .
 This kernel also runs on a Xen hypervisor.  It supports both privileged
 (dom0) and unprivileged (domU) operation.


Important note: You do not need to create available.686-pae file for this kernel with DebianDog since available file contains information for all installed and removed packages on the system in some point. DebianDog has information for 686-pae kernel included already in /var/lib/dpkg/available since it was one of the two kernels included in Debian Wheezy Live CD.

Now you can delete safe /var/lib/dpkg/available and /var/lib/dpkg/status files and create new executable script inside the working folder with name update-dpkg-686-pae fro example. The easy way is to copy some script from /opt/bin (audio-setup for example) to /image/live/02-k3.2.0-4-686-pae/opt/bin and to rename it to update-dpkg-686-pae.
Then replace the content with this:

Code: Select all

#!/bin/bash

cd /var/lib/dpkg
cp -f status status-old
cat status.686-pae >> status
rm status.686-pae
cp -f available available-old
cat available.686-pae >> available
rm available.686-pae 
cd /opt/bin
rm update-dpkg-686-pae
Make new module from the working folder. Now after loading the module you will have a choice to update dpkg database safe even if you already use a remastered later version of DebianDog with more programs included (in case you decide to remaster the system again with this module loaded) or to run this module as non dpkg registered,
Single click on the script will update dpkg information and delete the script.
Deleting at the end update-dpkg-686-pae, status.686-pae, available.686-pae is important action to prevent second run of this script after it is executed. This will add the information two times breaking dpkg database.

Some libs will add information in /var/lib/apt/extended_states and the information could be added the same way there but from what I can tell it will not break anything if you skip this action for extended_states.

===========================================
Last edited by saintless on Sun 04 May 2014, 16:30, edited 10 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Using unsquashfs command on Low-RAM computer

#9 Post by saintless »

I use low RAM computers with 64 - 512 Mb RAM and I had strange problem with unsquashfs command.
This was the usual result I get:

Code: Select all

root@debian:~# unsquashfs -d /live/image/2 /live/image/live/01-filesystem.squashfs
Parallel unsquashfs: Using 1 processor
38057 inodes (35160 blocks) to write

[======|                                                    ]  4237/35160  12%
Killed
At first I thought it has something to do with motherboard types or HDD types but it was nothing like this. The strange thing was I have this problem on a computer with 512 Mb RAM + 512 MB SWAP partition and I don't have it on a computer with 128 Mb RAM and 2 Gb SWAP partition. Actually it was memory issue.
Lets say you need to unsquash file with 300 Mb uncompressed data but you have 128 Mb RAM. It will never work unless you have big enough SWAP partition, because while the unsquashfs command is working and it writes on your hard drive, at the same time it uses cache buffer in RAM or SWAP partition with much bigger size than your RAM is. This is for example the memory report while unsquashfs command is working:

Code: Select all

root@debian:~# free -m
             total       used       free     shared    buffers     cached
Mem:           247        243          3          0          4         24
-/+ buffers/cache:        215         31
Swap:         1021        264        757
To solve this problem you have two choices:
1. To create SWAP partition on your HDD and to add swapon option in your kernel grub line. This is not convenient because you will use part of your hard drive space as SWAP partition permanently.
2. To create and use SWAP file only when you need it and delete it when you don't need it. Here is the way to do this. In my example the SWAP file is 512 MB and it is placed in /live/image:

Code: Select all

root@debian:~# dd if=/dev/zero of=/live/image/swapfile bs=1024 count=524288

Code: Select all

root@debian:~# mkswap /live/image/swapfile 524288
You can use this swapfile right a way without reboot by typing:

Code: Select all

root@debian:~# swapon /live/image/swapfile
This command will stop it and then you can delete it to save hard drive space:

Code: Select all

root@debian:~# swapoff /live/image/swapfile
As Anikin pointed here for security reasons you can do also:

Code: Select all

root@debian:~# chown root:root /live/image/swapfile
root@debian:~# chmod 0600 /live/image/swapfile
Otherwise the swap file could become world-readable.

==========================================
Last edited by saintless on Fri 03 Apr 2015, 08:58, edited 1 time in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Create and use SWAP file

#10 Post by saintless »

To create SWAP file type:

Code: Select all

root@debian:~# dd if=/dev/zero of=/live/image/swapfile bs=1024 count=524288

Code: Select all

root@debian:~# mkswap /live/image/swapfile 524288
In this example the SWAP file is 512 Mb and it is placed in /live/image.

You can start using this swapfile right a way without reboot with this command:

Code: Select all

root@debian:~# swapon /live/image/swapfile
And you can stop it with this one:

Code: Select all

root@debian:~# swapoff /live/image/swapfile
You can move this swap file on different partition and use it from there by changing the path, or you can delete it and recreate it again when you need it.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Create xorg.conf file

#11 Post by saintless »

============================================
Click here for example from rufwoof how to add video mode in xorg.conf
============================================
Debian live does not use by default xorg.conf file. It probes your configuration every time when the system boots and it works fine most of the time.

Sometimes this auto-configuration may not be what you need.
For example I had a problem to change the colors from 16 Bit to 24 Bit.
The only way I've found is by editing the xorg.conf file. But we have to create one first.

To do this exit X (logout from the task bar button) and type:

Code: Select all

Xorg -configure
This will create file /root/xorg.conf.new
Then enter X, rename xorg.conf.new to xorg.conf and move the file in /etc/x11
Then open xorg.conf with leafpad and edit what you need.

After reboot the system will be forced to read /etc/X11/xorg.conf

======================================
Last edited by saintless on Sat 23 Jan 2016, 09:15, edited 1 time in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Assign a Static IP address to eth0

#12 Post by saintless »

information from JBV. It works for DebianDog live-boot-v2, live-boot-v3 and porteus-boot:
Two ways for assigned a static IP address.
Both require a minor change in the kernel boot line code.

The option is "ip="

If you leave this option blank with no parameters, the system will use the contents of /etc/network/interfaces

Alternatively, you can specify the network parameters as follows ...

Code: Select all

 ip=eth0:192.168.1.50:255.255.255.0:192.168.1.1
<where>
ip=[interface]:[IP_address]:[netmask]:[gateway]
Like this example:

Code: Select all

title DebianDog live-boot-v2  (sda1) 
root=(hd0,0) 
kernel /live/vmlinuz1 boot=live config persistent ip=eth0:192.168.1.50:255.255.255.0:192.168.1.1 swapon quickreboot noprompt autologin showmounts
initrd /live/initrd1.img
To configure a static IP using /etc/network/interfaces

Code: Select all

title DebianDog live-boot-v2  (sda1) 
root=(hd0,0) 
kernel /live/vmlinuz1 boot=live config persistent ip= swapon quickreboot noprompt autologin showmounts
initrd /live/initrd1.img
And in /etc/network/interfaces for example:

Code: Select all

auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet static
  address 192.168.0.50
  gateway 192.168.0.1
  netmask 255.255.255.0
  network 192.168.0.0
  broadcast 192.168.0.255
  dns-nameservers 192.168.0.1
==========================================

And setting up wired network manually:
If you feel comfortable to setup wired settings from command line this is what I usually do (eth0 for example and my IP, Netmask, GW details. Replace them with yours.):

First step:

Code: Select all

sudo ifup eth0
Setting up IP and Netmask:

Code: Select all

sudo ifconfig eth0 192.168.1.2 netmask 255.255.255.0
Setting up default gateway:

Code: Select all

sudo route add default gw 192.168.1.1 eth0
Add DNS servers in resolv.con (you can edit /etc/resolv.conf with any text editor):

Code: Select all

sudo nano /etc/resolv.conf
For example my ISP DNS - replace them with yours:

Code: Select all

nameserver 192.168.1.1
nameserver 198.41.0.4
Save the changes and you should have working connection.
Last edited by saintless on Sun 05 Oct 2014, 12:45, edited 6 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Important for persistent network settings

#13 Post by saintless »

Information from Emil which works as well for DebianDog Wheezy:
emil wrote:Although nobody might use this oldstable squeeze live CD I share my experience to make wifi work with this version:

It is imperative to add the boot parameter nonetworking to the boot entry
Otherways the live config tools overwrite the /etc/network/interfaces et every fresh boot.

It seems it was (is?) an undocumented boot paramter - read here:
http://lists.debian.org/debian-live/201 ... 00031.html

my grub4dos entry now looks like

Code: Select all

title Light-Debian-Core-Test
 root=(hd0,3)
 kernel /live/vmlinuz boot=live config persistent nonetworking swapon quickreboot noprompt autologin
 initrd /live/initrd.img
 boot
I have an old laptop and I needed to install the b43 low power drivers (with apt-get from non free repositories)
https://wiki.debian.org/bcm43xx

then I set up wifi drom the commandline
https://wiki.debian.org/WiFi/HowToUse#Command_Line

my /etc/network/interfaces looks like

Code: Select all

auto lo
iface lo inet loopback

allow-hotplug eth0
iface eth0 inet dhcp

auto wlan0
iface wlan0 inet dhcp
    wpa-ssid dummynetworkname
    wpa-psk dummypwd
now it works like charm!
maybe this can save some time, sometimes to someone.
cheers

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

#14 Post by saintless »

In case you choose to install and use Firehol firewall maybe you will see the following warnings:

Code: Select all

root@debian:~# /etc/init.d/firehol start
[....] Starting Firewall: firehol

WARNING
File '/etc/firehol/RESERVED_IPS' is more than 90 days old.
You should update it to ensure proper operation of your firewall.

Run the supplied get-iana.sh script to generate this file.

 
 IMPORTANT WARNING:
 ------------------
 FireHOL cannot find your current kernel configuration.
 Please, either compile your kernel with /proc/config,
 or make sure there is a valid kernel config in:
 /usr/src/linux/.config
 
 Because of this, FireHOL will simply attempt to load
 all kernel modules for the services used, without
 being able to detect failures.
 
. ok
Even with the warnings Firehol works but you can fix them this way:

1. To fix File '/etc/firehol/RESERVED_IPS' is more than 90 days old. warning type this in terminal and press Enter:

Code: Select all

touch -m /etc/firehol/RESERVED_IPS
2. If you see also this warning:

Code: Select all

IMPORTANT WARNING:
 ------------------
 FireHOL cannot find your current kernel configuration.
 Please, either compile your kernel with /proc/config,
 or make sure there is a valid kernel config in:
 /usr/src/linux/.config
 
 Because of this, FireHOL will simply attempt to load
 all kernel modules for the services used, without
 being able to detect failures.
 
. ok
The fix is to add kernel configuration file in /boot directory.
It is included in 00-boot-folder-vmlinuz-initrd.squashfs here:
http://kazzascorner.com.au/saintless/De ... d.squashfs

Or just extract the attached archive and copy config-3.2.0-4-486 inside /boot directory.

Then Firehol (if it is installed) will not give warnings anymore:

Code: Select all

root@debian:~# /etc/init.d/firehol start
][....] Starting Firewall: firehol
root@debian:~# 
Edit: The /boot/config-x.x.x file is included in the latest DebianDog iso verisons now. No need to use 00-boot-folder-vmlinuz-initrd.squashfs anymore.

.
Attachments
boot.zip
(33.4 KiB) Downloaded 1001 times
Last edited by saintless on Sun 06 Mar 2016, 15:20, edited 4 times in total.

User avatar
fredx181
Posts: 4448
Joined: Wed 11 Dec 2013, 12:37
Location: holland

#15 Post by fredx181 »

Hi All,

Update: As written below to load 06-DEVX-DebDog-2.squashfs works but is not needed if you just install libdpkg-perl:

Code: Select all

apt-get install libdpkg-perl
Update2:
Here's a better way IMO using apt-ftparchive instead of dpkg-scanpackages:
It doesn't need any extra installing or loading DEVX, just depends on apt-utils, which is already installed by default in DebianDog.
Let's take just for example you created directory '/media/sda1/myrepo'
Inside create folder e.g. 'deb-packages' so you get: /media/sda1/myrepo/deb-packages
Put all your .deb packages inside 'deb-packages'
Then run in terminal:

Code: Select all

cd /media/sda1/myrepo
apt-ftparchive packages . > Packages
gzip -c Packages > Packages.gz
apt-ftparchive contents . > Contents
gzip -c Contents > Contents.gz 
apt-ftparchive release . > Release
Add the local repo to /etc/apt/sources.list and update package lists:

Code: Select all

echo "deb file:/media/sda1/myrepo/ ./" >> /etc/apt/sources.list
apt-get update
Here's how I made small test repo in google drive and dropbox (experimental):
http://murga-linux.com/puppy/viewtopic. ... 928#799928

Also see 'Update' more below in red, something has changed the way it works
------------------------------------------------------

Here's little howto for creating a local repo.
For example from the .deb packages downloaded from here:
http://www.smokey01.com/saintless/Fredx181/

There's lots of info on the net but some of them suggests to use apache2 which we're not going to use here.
The script "dpkg-scanpackages" can create a local database from a folder with .deb files inside.
dpkg-scanpackages is part of "dpkg-dev" package but to install it, with all dependencies, it needs to much space for DebianDog.
So we need only "dpkg-scanpackages" and to load the DEVX

Attached: dpkg-scanpackages.zip

Extract and place the script "dpkg-scanpackages" somewhere in PATH e.g. /opt/bin

Download "06-DEVX-DebDog-2.squashfs" module, from here:

http://www.smokey01.com/saintless/Debia ... em-modules
Then right-click on 06-DEVX-DebDog-2.squashfs and choose 'save link as'.

Then use SFS-loader to load it, or: from terminal opened in folder where you downloaded "06-DEVX-DebDog-2.squashfs":

Code: Select all

loadmodule -a 06-DEVX-DebDog-2.squashfs
Let's take as example: a folder created on /media/sda1 named "myrepo":
(/media/sda1 must be a linux filesystem like ext3 or ext4)

Code: Select all

mkdir /media/sda1/myrepo
Then copy all .deb files you want included in your local database to: /media/sda1/myrepo
Then in terminal:

Code: Select all

cd  /media/sda1/myrepo
dpkg-scanpackages ./ /dev/null |gzip > Packages.gz
Then open /etc/apt/sources.list with geany:

Code: Select all

geany /etc/apt/sources.list
And add to it on a single line:

Code: Select all

deb file://media/sda1/myrepo/ ./
----------------------
Update: The above worked before, but not anymore, needs to be this:

Code: Select all

deb file:/media/sda1/myrepo/ ./
(difference is one / instead of // after file:)
----------------------

Save the file.
Then update database:

Code: Select all

apt-get update
Now you can install/uninstall all packages in /media/sda1/myrepo by using apt-get or synaptic.

When you remove or add .deb files in /media/sda1/myrepo you need to update the database again by loading the "06-DEVX-DebDog-2.squashfs" and doing the previous commands again:

Code: Select all

cd  /media/sda1/myrepo
dpkg-scanpackages ./ /dev/null |gzip > Packages.gz

Fred
Attachments
dpkg-scanpackages.zip
Create local database
(3.01 KiB) Downloaded 958 times
Last edited by fredx181 on Mon 22 Sep 2014, 10:35, edited 4 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Firewall from Puppy linux

#16 Post by saintless »

Puppy Linux default Firewall available now for DebianDog.
http://murga-linux.com/puppy/viewtopic. ... 580#777580

The main script is in /opt/bin and it creates $HOME/rc.firewall script which is started from $HOME/Startup/firewall-puppy script after login and can have different setup for each user account.
For user account there will be GUI window to type root password.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Boot DebianDog with systemd

#17 Post by saintless »

Edit: Some more information how to change sysvinit and systemd in jessie:
http://www.murga-linux.com/puppy/viewto ... 007#829007
http://www.murga-linux.com/puppy/viewto ... 025#829025

Edit: Systemd workaround from Fred for porteus-boot (for now works only with the default included in the iso kernel 3.2.0-4-486):
http://murga-linux.com/puppy/viewtopic. ... 987#798987
fredx181 wrote:Hi Toni, All,

---------------------------------------------

Here's a more solid way to enable systemd for porteus-boot instead of what I wrote here:
http://murga-linux.com/puppy/viewtopic. ... 672#792672

Only for porteus-boot method.
Enable systemd using patched initrd1.xz (kernel 3.2.0-4-486), it's here:
https://googledrive.com/host/0ByBgCDlZZ ... emd.tar.gz
Edit from saintless: this initrd1.xz is included in the iso from October 2014 both DebianDog versions and DebianDog-Squeeze.
by adding "init=/bin/systemd" parameter to your kernel boot line like this:

Code: Select all

kernel /live/vmlinuz1 noauto from=/  changes=/live/changes.dat init=/bin/systemd
The steps:
In terminal:

Code: Select all

apt-get update # if needed
apt-get install systemd
Installing also the 'systemd-sysv' package will make it permanent (by not installing it you'll be still able to use the old initscripts when not using 'init=/bin/systemd' parameter)

To enable autologin for user root, run in terminal:

Code: Select all

# Set ExecStart to autologin as root (inittab doesn't work anymore under systemd)
EXESTART=`cat /etc/systemd/system/getty.target.wants/getty@tty1.service | grep 'ExecStart='`
EXESTARTNEW="ExecStart=-/sbin/agetty --noclear -a root %I 38400"
sed -i "s,$EXESTART,$EXESTARTNEW,g" /etc/systemd/system/getty.target.wants/getty@tty1.service
Then reboot and systemd should be enabled if you added the 'init=/bin/systemd' parameter.

More info about what's changed to make init=/bin/systemd parameter work in the ReadMe-enable-systemd inside initrd1.xz-systemd.tar.gz.

Note: Uninstalling systemd afterwards may give a problem.
If apt-get refuses to uninstall it, best thing to do then is:

Code: Select all

apt-get install sysvinit # if it isn't already installed
Then reboot without 'init=/bin/systemd' parameter added.
Then you should be able to uninstall systemd because it's not running anymore.

Fred
The autologin as root command works also for live-boot-2x and live-boot-3x.

Boot DebianDog with systemd: - for live-boot-2x and live-boot-3x.

More information about systemd here:
https://wiki.debian.org/systemd

Only two easy steps needed:

1. Install systemd:

Code: Select all

root@debian:~# apt-get install systemd
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libcryptsetup4 libsystemd-daemon0 libsystemd-id128-0 libsystemd-journal0
  libwrap0
Suggested packages:
  systemd-gui python python-dbus python-cairo
Recommended packages:
  tcpd libpam-systemd
The following NEW packages will be installed:
  libcryptsetup4 libsystemd-daemon0 libsystemd-id128-0 libsystemd-journal0
  libwrap0 systemd
0 upgraded, 6 newly installed, 0 to remove and 32 not upgraded.
Need to get 1696 kB of archives.
After this operation, 4310 kB of additional disk space will be used.
Do you want to continue [Y/n]? y

..................................................................................

Unpacking systemd (from .../systemd_44-11+deb7u4_i386.deb) ...
Setting up libwrap0:i386 (7.6.q-24) ...
Setting up libsystemd-daemon0:i386 (44-11+deb7u4) ...
Setting up libsystemd-id128-0:i386 (44-11+deb7u4) ...
Setting up libsystemd-journal0:i386 (44-11+deb7u4) ...
Setting up libcryptsetup4 (2:1.4.3-4) ...
Setting up systemd (44-11+deb7u4) ...
Initializing machine ID from D-Bus machine ID.
root@debian:~# 
2. For DebianDog Frugal install add at the end of your kernel boot line init=/bin/systemd

Example boot code for live-boot-2x:

Code: Select all

title DebianDog Wheezy live-boot-2 Persistent Changes
 uuid 25e43216-01b1-43eb-b02d-6350e970da2c
 kernel /live/vmlinuz1 boot=live persistent config swapon quickreboot noprompt autologin init=/bin/systemd
 initrd /live/initrd1.img
Example boot code for live-boot-3x:

Code: Select all

title DebianDog Wheezy live-boot-3 Persistence Changes
 uuid 25e43216-01b1-43eb-b02d-6350e970da2c
 kernel /live/vmlinuz1 boot=live config swapon persistence quickreboot noeject autologin init=/bin/systemd
 initrd /live/initrd.img
For DebianDog Full install add at the end of your kernel boot line init=/bin/systemd rw. Replacing ro with rw is important for full install otherwise you will get "Could not write in /tmp..." message and you can't start X.

Example boot code for Full install:

Code: Select all

title DebianDog Wheezy Full install
 uuid 090712ec-7b56-47de-87a5-be8b1f99534d
 kernel /boot/vmlinuz-3.2.0-4-486 root=UUID=090712ec-7b56-47de-87a5-be8b1f99534d init=/bin/systemd rw
 initrd /boot/initrd.img-3.2.0-4-486
After reboot you will notice the change in boot messages and a little bit faster boot for live-boot-2x and live-boot-3x.

Removing init=/bin/systemd from your boot code will bring back default sysvinit boot.

============================================
Last edited by saintless on Tue 17 Feb 2015, 21:35, edited 7 times in total.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Preventiing default kernel upgrade

#18 Post by saintless »

Debian stable provides upgrades for many packages (including linux-image). If we upgrade the default kernel we need also to replace /live/vmlinuz1 with new created from the upgrade process. To prevent troubles we have this file included: /etc/apt/preferences

Code: Select all

Package: linux-image-3.2.0-4-486
Pin: version 3.2.51-1
Pin-Priority: 1001
Having this file running apt-get upgrade will not upgrade linux-image.
If you like to activate default kernel upgrade just remove /etc/apt/preferences and run apt-get update.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Enable touchpad tapping:

#19 Post by saintless »

Touchpad tapping option is disabled by default in Debian. I read many discussions and solutions to make it work and I also see disable by default as logical for users who prefer to plugin mouse and can't work well with touchpad yet. Single touch by mistake can activate window or even delete important data.

Type in terminal tapbutton to enable this option when needed. If you like to keep the changes permanent after reboot symlink the /opt/bin/tapbutton script in /root/Startup.

User avatar
saintless
Posts: 3862
Joined: Sat 11 Jun 2011, 13:43
Location: Bulgaria

Install AMD legacy proprietary driver (fglrx-legacy-driver)

#20 Post by saintless »

Installing AMD legacy proprietary driver (fglrx-legacy-driver):


Edit3: Some more information how to install fglrx driver in Jessie from Keisha.

Edit2: Instructions how to build ati driver for kernel 3.2.0-4-486 and 3.14-0.bpo.1-686-pae here (thank you, Devil.Dog!):
http://www.murga-linux.com/puppy/viewto ... 674#798674
http://www.murga-linux.com/puppy/viewto ... 838#798838
Maybe no need to read the information below. Devil.Dog's method building ati driver in DebianDog works.

Edit: Read this posts first:
http://www.murga-linux.com/puppy/viewto ... 228#793228

There was a question about this but I can't really tell if it works OK or not on AMD hardware. The install process seems to finish and the system works but testing on proper hardware can confirm if there are problems or not.

I read about problems in google and possible solutions patching amd installer like this one if apt-get install method doesn't work:
http://forums.debian.net/viewtopic.php?f=5&t=94847
Or here:
http://www.debianuserforums.org/viewtop ... f=7&t=2606
http://ftp.debian.org/debian/pool/non-f ... rx-driver/

There are suggestions to use newer kernel above 3.10 so you can test this with separate kernel module for DebianDog from here (026-kernel-3.14-Pae.tar.gz or 024-kernel-3.12.0.bpo.1.zip) :
http://murga-linux.com/puppy/viewtopic. ... 459#774459

How to install AMD legacy proprietary driver (fglrx-legacy-driver) with apt-get:

1. Rename /etc/apt/sources.list to /etc/apt/sources.list-original
2. Create new file /etc/apt/sources.list, add only this one line inside and save it:

Code: Select all

deb http://ftp.de.debian.org/debian wheezy-backports main contrib non-free
3. Run in terminal apt-get update
4. Install with apt-get fglrx-legacy-driver

Code: Select all

apt-get install fglrx-legacy-driver
You will see similar information:

Code: Select all

root@debian:~# apt-get install fglrx-legacy-driver
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  glx-alternative-fglrx glx-alternative-mesa glx-diversions libfglrx-legacy
  nvidia-installer-cleanup
Suggested packages:
  fglrx-legacy-control xvba-va-driver amd-opencl-icd-legacy fglrx-driver
Recommended packages:
  fglrx-legacy-modules-dkms fglrx-kernel-8.97.100.7 libgl1-fglrx-legacy-glx
  fglrx-legacy-atieventsd libfglrx-legacy-amdxvba1
The following NEW packages will be installed:
  fglrx-legacy-driver glx-alternative-fglrx glx-alternative-mesa
  glx-diversions libfglrx-legacy nvidia-installer-cleanup
0 upgraded, 6 newly installed, 0 to remove and 16 not upgraded.
Need to get 15.8 MB of archives.
After this operation, 75.5 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://ftp.de.debian.org/debian/ wheezy-backports/contrib nvidia-installer-cleanup i386 20131102+1~bpo70+1 [17.9 kB]
Get:2 http://ftp.de.debian.org/debian/ wheezy-backports/contrib glx-diversions i386 0.4.1~bpo70+1 [9066 B]
Get:3 http://ftp.de.debian.org/debian/ wheezy-backports/non-free libfglrx-legacy i386 8.97.100.7-3~bpo70+1 [9513 kB]
Get:4 http://ftp.de.debian.org/debian/ wheezy-backports/contrib glx-alternative-mesa i386 0.4.1~bpo70+1 [2792 B]
Get:5 http://ftp.de.debian.org/debian/ wheezy-backports/contrib glx-alternative-fglrx i386 0.4.1~bpo70+1 [3658 B]
Get:6 http://ftp.de.debian.org/debian/ wheezy-backports/non-free fglrx-legacy-driver i386 8.97.100.7-3~bpo70+1 [6225 kB]
Fetched 15.8 MB in 1min 49s (144 kB/s)                                         
Preconfiguring packages ...
Selecting previously unselected package nvidia-installer-cleanup.
(Reading database ... 28451 files and directories currently installed.)
Unpacking nvidia-installer-cleanup (from .../nvidia-installer-cleanup_20131102+1~bpo70+1_i386.deb) ...
Setting up nvidia-installer-cleanup (20131102+1~bpo70+1) ...
Selecting previously unselected package glx-diversions.
(Reading database ... 28459 files and directories currently installed.)
Unpacking glx-diversions (from .../glx-diversions_0.4.1~bpo70+1_i386.deb) ...
Selecting previously unselected package libfglrx-legacy:i386.
Unpacking libfglrx-legacy:i386 (from .../libfglrx-legacy_8.97.100.7-3~bpo70+1_i386.deb) ...
Selecting previously unselected package glx-alternative-mesa.
Unpacking glx-alternative-mesa (from .../glx-alternative-mesa_0.4.1~bpo70+1_i386.deb) ...
Selecting previously unselected package glx-alternative-fglrx.
Unpacking glx-alternative-fglrx (from .../glx-alternative-fglrx_0.4.1~bpo70+1_i386.deb) ...
Selecting previously unselected package fglrx-legacy-driver.
Unpacking fglrx-legacy-driver (from .../fglrx-legacy-driver_8.97.100.7-3~bpo70+1_i386.deb) ...
Setting up glx-diversions (0.4.1~bpo70+1) ...
Adding 'diversion of /usr/lib/libGL.so to /usr/lib/mesa-diverted/libGL.so by glx-diversions'
Adding 'diversion of /usr/lib/i386-linux-gnu/libGL.so to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so by glx-diversions'
Adding 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so by glx-diversions'
Adding 'diversion of /usr/lib/arm-linux-gnueabihf/libGL.so to /usr/lib/mesa-diverted/arm-linux-gnueabihf/libGL.so by glx-diversions'
Adding 'diversion of /usr/lib/libGL.so.1 to /usr/lib/mesa-diverted/libGL.so.1 by glx-diversions'
Adding 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1 by glx-diversions'
Adding 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1 by glx-diversions'
Adding 'diversion of /usr/lib/arm-linux-gnueabihf/libGL.so.1 to /usr/lib/mesa-diverted/arm-linux-gnueabihf/libGL.so.1 by glx-diversions'
Adding 'diversion of /usr/lib/libGL.so.1.2 to /usr/lib/mesa-diverted/libGL.so.1.2 by glx-diversions'
Adding 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1.2 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1.2 by glx-diversions'
Adding 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1.2 to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1.2 by glx-diversions'
Adding 'diversion of /usr/lib/arm-linux-gnueabihf/libGL.so.1.2 to /usr/lib/mesa-diverted/arm-linux-gnueabihf/libGL.so.1.2 by glx-diversions'
Adding 'diversion of /usr/lib/libGL.so.1.2.0 to /usr/lib/mesa-diverted/libGL.so.1.2.0 by glx-diversions'
Adding 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1.2.0 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1.2.0 by glx-diversions'
Adding 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1.2.0 to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1.2.0 by glx-diversions'
Adding 'diversion of /usr/lib/arm-linux-gnueabihf/libGL.so.1.2.0 to /usr/lib/mesa-diverted/arm-linux-gnueabihf/libGL.so.1.2.0 by glx-diversions'
Setting up libfglrx-legacy:i386 (8.97.100.7-3~bpo70+1) ...
Setting up glx-alternative-mesa (0.4.1~bpo70+1) ...
update-alternatives: using /usr/lib/mesa-diverted to provide /usr/lib/glx (glx) in auto mode
Setting up glx-alternative-fglrx (0.4.1~bpo70+1) ...
update-alternatives: using /usr/lib/fglrx to provide /usr/lib/glx (glx) in auto mode
I: update-initramfs is disabled (live system is running without media mounted on /lib/live/mount/medium).
Setting up fglrx-legacy-driver (8.97.100.7-3~bpo70+1) ...
root@debian:~# 
At some point you will have to confirm to continue and information how to configure the driver manually (see the picture):

Image

5. Remove (or rename) /etc/apt/sources.list and rename back /etc/apt/sources.list-original to /etc/apt/sources.list and run apt-get update

I'm not sure if rebuilding initrd files is really needed after installing fglrx-legacy-driver but if it is and someone can give testing details and errors we can add further details in this post. Maybe someone will test this to confirm if it works or not and maybe provide working method if there is a problem with this one.

The best place to post if there is a problem and searching for solution is the development thread:
http://www.murga-linux.com/puppy/viewtopic.php?t=90660

=========================================
Last edited by saintless on Sun 29 Mar 2015, 08:51, edited 8 times in total.

Post Reply