Find the answer to your Linux question:
Results 1 to 5 of 5
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1

    Cant installl steam under linux

    [jeremiah@localhost ~]$ su
    [root@localhost jeremiah]# cedega /home/jeremiah/Desktop/SteamInstall.exe
    /usr/lib/transgaming_cedega//winex/bin/wine: can't exec '/home/jeremiah/Desktop/ SteamInstall.exe': error=21

    What am i doing wrong here?

  2. #2
    try running

    chmod a+x /home/jeremiah/Desktop/SteamInstall.exe

    first things first

  3. #3


    I did the chmod a+x and i still get his error 21, have you tested this?

  4. $spacer_open
  5. #4


    I did the chmod a+x and i still get his error 21, have you tested this?

  6. #5
    Linux Enthusiast Opnosforatou's Avatar
    Join Date
    Dec 2003
    Vleuten, The Netherlands

    RTFF (M= Manual | F = Forum )

    On the cedega forums is a lot about Error 21 as this is common for the FC3 distro.


    To solve error 21 problems you need to:
    disable prelink
    turn off exec-shield
    enable legacy VA_LAYOUT (2.6.9 kernel)
    enable exec mount option

    Check below for more information on the problems and details on fixing them.

    More information
    Prelink is a new set of functionality, available in newer glibc versions
    and distributions such as Fedora Core 1, designed to reduce the startup
    time for applications which use dynamic libraries. The loading speed
    improvements are achieved by preassigning the addresses of various dynamic
    linked libraries that will be placed in memory. Thus, relocations will not
    have to be performed by the dynamic loader when loading the application.
    Unfortunately, more often than not, libraries are prelinked into addresses
    which are incompatible with Windows programs.

    Windows programs generally use a trick, similar to Prelink, to reduce the
    size of the executable and improve start times. This trick
    assumes, quite rightly for a Windows program, that the address 0x400000
    is always available. Thus when Cedega attempts to load the Windows
    executable into the starting address, and it's not available, Cedega will
    fail to start the program with an error message mentioning
    "stripped relocation records" and "address 0x400000 not available".

    Exec-shield is a kernel level solution
    which remaps executable code to a lower memory address with the
    intention of eliminating ASCII based code overflow attacks. The
    new location of the executable has the potential of conflicting
    with the required windows range which will result in the same error
    message as with Prelink.

    The solution to the problems these two new technologies create is to
    disable them so that they don't affect any Cedega libraries or executable

    To disable automatic prelinking in the future, edit /etc/sysconfig/prelink
    and set PRELINKING to no by making sure the following line is present:
    Then execute the cron job, most likely /etc/cron.daily/prelink, to
    reverse the Prelink for all of your libraries or manually run:
    $ prelink -ua

    To disable exec-shield you can either use the boot time option
    "exec-shield=0" or it may be changed, before running Cedega, by typing
    $ echo 0 > /proc/sys/kernel/exec-shield
    $ sysctl -w kernel.exec-shield=0

    In addition, newer Fedora Core 2, Fedora Core 3, and other 2.6.9 kernels also
    require support for legacy VA layout to be enabled. This can be done
    via the command:
    $ echo 1 > /proc/sys/vm/legacy_va_layout
    before running Cedega (this is required after every boot).
    To enable legacy VA Layout at boot time, edit /etc/sysctl.conf
    and add the following:
    vm.legacy_va_layout = 1

    Information about this can be option found on the fedora announce mailing list:

    Some distributions version of mount now run with the noexec option unless otherwise specified. Running games from a partition mounted with noexec can cause an error = 21
    To fix this issue edit the /etc/fstab and modify the partition line by removing the noexec option and adding the exec switch to the mount options. For example:
    /dev/hda1 / ext3 errors=remount-ro,no-exec,defaults 0 1
    /dev/hda1 / ext3 errors=remount-ro,exec,defaults 0 1

    If neither exec nor noexec appears in the line it is recommended that you add it.

    To remount the partition run (as root):
    mount -o remount /
    And one important line:

    I had this exact same error on Fedora Core 3, i disabled prelinking and install-sheild just like in the HOWTO

    I also did this as root.

    # /bin/echo 1 >/proc/sys/vm/legacy_va_layout
    Don't ask me what that does it just adds something to the filesystem important thingy... i think...

    P.S. you will get error=21 until you do the # /bin/echo 1 >/proc/sys/vm/legacy_va_layout thingy on Fedora Core 3......
    ---[ MS09-99896 - Vulnerability in All MS Windows OS ; Using Windows Could Allow Remote Code Execution. ]---
    Hardware: Asus P4P800, 1GB, P4-3Ghz, Asus V9950, Maxtor ATA HD\'s, 3Com GBit lan, Audigy ZS Plat.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts