- What is Porteus?
- What does Porteus look like?
- Who would be interested in Porteus?
- Can I install Porteus to my hard drive?
- How do I check an md5sum and why is it so important?
- How to disable Kernel Mode Setting on amd/ati, nvidia and intel GPU's?
- How do I play 1080p movies in Porteus?
- Why is the KDE-4 desktop missing applications like: konqueror, kontact, kopete etc?
- Why aren't my 32 bit modules working in 64 bit Porteus?
- How do I get my wireless card to work?
- How can I install new programs that are not included in the default Porteus ISO?
- How do I setup national language support in Porteus?
- How do I report a bug?
- What is a cheat code?
- How can I find out more about the various cheat codes?
- Porteus hangs during xorg/GUI initialization 'starting X11' - how can I fix it?
- My PC has low memory amount - is there any simple way of increasing it?
- How can I customize the Porteus ISO?
- I'm using /porteus/rootcopy for adding files to the live filesystem and all of the permissions are messed up.
- How can I boot Porteus from the ISO image file?
- How can I log in to KDE or LXDE as the root user?
- How can I change the default passwords for the root and guest users?
- How do I remove or replace the firefox add-ons that are included by default in Porteus?
- How do I create a module for use in Porteus?
- How can I compile software from source code and create a Porteus module from it?
- How can I track missing package dependencies?
Porteus is a lightning fast and small but powerful Linux operating system that can be installed on a USB flash device, CDROM, SD card or Hard Drive. Once installed on the storage media of your choice, it can be run on almost any PC, giving you the power and freedom of Linux anywhere you go. In essence, Porteus is a lightweight and portable implementation of the Slackware Linux Operating System that boots directly from your storage media without needing to modify or utilize your existing operating system (your computer doesn't even need a hard drive!). To accomplish this, it makes use of the Linux Live Scripts, which have been heavily modified for much faster boot-up and shutdown times. Unlike a standard Linux installation, Porteus exists in a compressed state on your storage media, with no /root, /bin, /usr, etc. directory structure on the media itself. The familiar Linux file structure is created on the fly (i.e., 'live') in your computer's RAM during the boot process, which only takes about 20-30 seconds to get from pressing the power button to full productivity on a relatively new computer. Porteus is modular in design, which means that extra software comes in the form of 'modules' which can be activated and injected into this live file system. Software does not need to be installed and uninstalled as you may expect with other operating systems which take numerous amounts of clicks and agreements; you simply double click on a module and it is activated and ready for use in a second or two. To remove this software, just double click again and it will be deactivated. It's that simple!
Porteus started out as a community remix project to keep the Slax OS up to date. It has now come into its own as a fully-fledged Linux distribution. It is available in both 32-bit and 64-bit editions, making it the perfect "on the go" solution whether you're running a netbook, an old pentium or a brand-new power system. We hope you enjoy using Porteus as much as we have enjoyed creating it!
Here are a few screenshots of the current versions:
Anyone who likes an extremely fast and light operating system that boots in seconds and stays up to date with the latest software and kernel versions. Porteus is also a great way to try out linux from a USB device if you want a taste of linux without having to partition and format a hard drive. Read more here
You can 'run' Porteus from your hard drive whether it is an external or internal hard drive. We advise that you run Porteus from these media in its compressed form, commonly referred to as a 'frugal' install. We do not support decompressing Porteus to your system as a regular linux install. You should install Slackware instead.
An Md5sum is a way of ensuring that files have not become corrupted while being transferred over the internet. If you download a file to your computer and its md5sum matches the md5sum listed on the server (in the md5sums.txt file, for example), you can be 100% sure that your download was not corrupted. You can check the md5sum on a file by running this command in the console:
If the md5sums do not match, please try the 'rsync' utility instead of downloading through your browser/application:
rsync -avP ponce.cc::porteus/x86_64/current/porteus-v1.1-x86_64.iso .
Replace the 'x86_64' portion with 'i486' if you are using the 32-bit edition, and replace the '-v1.1-x86_64.iso' portion to match the release you are using. Be sure to include the final dot - it's actually part of the command and means the file will be downloaded to the current directory you are in when you issue the command.
Kernel Mode Setting (high resolution in console mode) is enabled by default on all modern GPU's. If you wish to disable it, just add the: 'nomodeset' cheatcode to your /boot/syslinux/porteus.cfg file.
Be aware that intel, opensource radeon and nouveau drivers won't work without KMS in Graphical User Interface mode.
mplayer -vo vdpau -vc ffh264vdpau /path_to_movie
If you have an AMD/ATI HD series card or Intel GMA/Clarkdale/Arrandale (i3,i5,i7) or newer gpu/igp, then the proper command syntax looks like this:
mplayer -vo vaapi -va vaapi /path_to_movie
nVidia and AMD/ATI GPU owners will require proprietary drivers to make use of this feature.
If your PC has a multicore processor but doesn't meet the requirements listed above, you can use the multithread feature to play HD movies without glitches:
mplayer -lavdopts threads=2 /path_to_movie
Porteus strives to keep it's file size below 300Mb - that's why the KDE-4 module is stripped of all less important applications. If you really need any special KDE-4 application, please post a request in the relevant thread on the Porteus forum and we'll try to add it to Porteus module repository.
If you are running the 64-bit version of Porteus, 32-bit applications wont work until you install the relevant 32-bit libraries. Please use the 32-bit compatibility modules as described in this forum post.
Use 'Network Manager' or the 'pns-tool/xpns-tool' utilities (launched from terminal) to setup your connection in an 'easy way'. Network Manager users may be interested in a few tweaks which help to connect faster: click here. Broadcom owners who prefer open source drivers over broadcom-sta should read this HOWTO: click here.
A new program is included with Porteus Version 1.0 and higher, called Porteus Package Manager (PPM). It can be opened from the KDE/LXDE menu under the 'System' heading, or run from the command line, as 'porteus-package-manager'. Click here for more information about it.
You can also use the slackyd package manager to install new programs. Slackyd is a CLI (command line interface) utility included with Porteus by default. Slackware packages can be searched and downloaded via slackyd (run the command 'slackyd' for more information on usage of the slackyd application), and then converted into Porteus modules using the 'txz2xzm' utility.
Use Language Selection Tool. Launch it from a console by typing 'language-selection-tool' or through 'Porteus Settings Centre'.
Try to recreate the bug first: boot Porteus in 'Always Fresh' mode with only the basic Porteus modules. If you are able to recreate the error, post a bug report on the Porteus forum in the relevant section. Please attach links to screenshots and logfiles if possible (examples: /var/log/messages, /var/log/Xorg.0.log). For storing log files, please use external sites like pastebin.com and post web links only. Make sure that error was not created by a user mistake, typo, etc. - please save our free time!
A cheat code refers to a command that can be entered at the start of booting (or entered into porteus.cfg for permanence) which passes a value to porteus, such as 'nocd' to prevent booting from CD or 'acpi=off' to disable advanced configuration and power interface settings. These can be very useful for trouble shooting problem components.
You can find an updated cheatcode list in the /boot/docs/cheatcodes.txt file inside the Porteus ISO, or you can go here. Familiarize yourself with the cheat codes as they can come in handy.
Try to add the 'vmalloc=256MB' cheatcode to your /boot/porteus.cfg file under the mode you boot into. If the error still exists, please post a bug report on the Porteus forum in the relevant section.
Create a swap file on your hard drive which will act as an extra (but slower) memory bank. Run the following command in a console to create and activate a 500MB swap file on the partition 'sda9':
mkfileswap /mnt/sda9/Porteus.swap 500
If you want to have this swap file activated by default, add following command to your /etc/rc.d/rc.local:
You should replace sda9 with the path of your own partition. You can see your partition setup by typing fdisk -l in a console from any location.
Make all of your desired changes to the /boot and /porteus folders to make them look exactly how they should appear on your custom ISO. Then run the script /porteus/make_iso.sh which will create a new ISO with a name and location you provide.
Example of how to run make_iso.sh:
where sdXN is the location of your /boot and /porteus folders.
When the /porteus/rootcopy folder is placed on a FAT/NTFS filesystem, all files are given 777 permissions due to Windows filesystem limitations. When Porteus is booted over a network (PXE) then all files from /porteus/rootcopy are given 444 permissions (that's how http service works). If you want to keep your original permissions then you must use an xzm module and not /rootcopy.
REMINDER: all of the above applies to FAT/NTFS and pxe-boot only, you can use /porteus/rootcopy as normal when placed on a supported linux fs.
In order to boot from the ISO image, your bootloader must boot Porteus from the linux kernel and initrd included in that ISO (otherwise, the kernel version will differ from the version of the kernel modules included in the ISO in /porteus/base/000-kernel.xzm). You need to unpack /boot/syslinux/vmlinuz and /boot/syslinux/initrd.xz and place them somewhere on your hard disk or USB drive. Then, you need to point your bootloader to that kernel and initrd and use the from_iso cheatcode. For more information on this topic, please read this article.
As of Version 1.0, Porteus will log you in as a non-root user called 'guest' by default. This is done to increase the security of your system. If you would like to boot into KDE, XFCE or LXDE as the root user, just use the 'login=root' cheatcode.
If you would like to change the default passwords ('toor' for root and 'guest' for guest), this can be done through the 'Porteus Settings Centre'. Click the 'Security settings' box and choose the 'Porteus password' button.
Add-ons are stored in the firefox xzm module in your /porteus/base/ folder. For the 32-bit edition, this is 008-firefox.xzm, and for the 64-bit edition it 006-firefox.xzm. You must extract this module, remove or replace the add-on, then recompress the module.
For example, in the 32-bit edition, you would perform these actions, as root:
1) Copy the 008-firefox.xzm module to your desktop
2) Right click on the module and select "Extract xzm module..."
3) Double click on the 008-firefox folder that is now on your desktop
4) Navigate inside this folder to usr/lib/firefox/extensions/
5) Remove or overwrite the randomly named folder that corresponds to the add-on you want to remove or replace (navigate inside each of these randomly named folders and open the 'chrome' folder to find out which folder corresponds to which extension)
6) Go back to your desktop, right click on the 008-firefox folder, and select "create xzm module..."
7) Copy the resulting firefox module back to /mnt/sdXN/porteus/base/, and remove the old 008-firefox.xzm module (or save it somewhere else in case the new module fails).
In the 64-bit edition, you would follow the same steps, but the add-on files are located in:
Be aware that the add-ons stored in /usr/lib (/usr/lib64 in the 64-bit edition) are enabled or disabled globally. If you want to enable add-ons for some users but not others, please place the add-ons in the home folder instead. For example:
Open your file manager (e.g. konqueror, thunar, pcmanfm or dolphin), navigate to the location of the folder you want to convert, then right click on it and choose "create xzm module" from the service menu. From the command line, you can use the dir2xzm command. For more information, see this article and this article.
First of all you should follow the official Slax documentation which is placed here:
If you want to install all files to a specified directory please use this command:
make install DESTDIR=/tmp/destination
Sometimes the DESTDIR function is not present or does not work. If that's the case, please read this thread:
Or, you can pull out the files that are installed by the compiler using the 'changes-time' script, which is included in the default ISO and saves all changes made to the Porteus system within a defined time interval. Simply run the script and enter a number of minutes, and your recently modified files will be placed in a new directory. For example, entering '5' for the number of minutes would save all files added or modified in the last five minutes to /root/changesXXXX/, and you could then create a module from that directory that would contain all of the files installed by 'make install'. It's a good idea to go through the files saved by this script, to make sure it only contains the files you want to go in your module.
Porteus Package Manager (PPM) should resolve and download any required dependencies for your packages. However, if you are using packages from another location, you can use the 'slackyd' tool to download missing libraries. Open a terminal and type 'slackyd -u' to update the package database, and then 'slackyd -d' to check and download missing dependencies globally. If you want to check dependencies only for one specific application then please use the command 'slackyd -d application_name'.
Thanks for reading this document :)
Please pay special attention especially to Q/A "13. How to report a bug?" . Please remember - the less time we spend on answering questions that are already answered in this FAQ, the more time we'll have for adding new features to Porteus!