# linux-steam-utils question



## unicorn (Apr 13, 2022)

I had install linux-steam-utils.When start steam I get errors:
Please make sure the following requirements are satisfied:

* linprocfs mounted at /compat/linux/proc
* linsysfs mounted at /compat/linux/sys
* tmpfs mounted at /compat/linux/dev/shm
* procfs mounted at /proc
* fdescfs mounted at /dev/fd

How to mount?mount in fstab?


----------



## jbo (Apr 13, 2022)

While I haven't used games/linux-steam-utils myself I am fairly sure that it uses the Linux compatibility layer.
As such, after installing the corresponding packages you'd be informed about the extra steps needed (those mounts).
You can use `pkg info -D <package>` to get that message re-printed (although I'm not sure which of the packages would print this).

The handbook also explains this in detail - including an explicit example of etc/fstab: https://docs.freebsd.org/en/books/handbook/linuxemu/#linuxemu-advanced


----------



## SirDice (Apr 13, 2022)

unicorn said:


> How to mount?mount in fstab?


`sysrc linux_mounts_enable="YES"`


----------



## jbo (Apr 13, 2022)

SirDice said:


> `sysrc linux_mounts_enable="YES"`


I did not know about that - seems handy!
Where is that coming from? I assume this is an rc.d script provided by one of the emulation/linux-* packages? Or is it provided by base?

EDIT: Never mind... the handbook has spoken


----------



## SirDice (Apr 13, 2022)

It's a fairly recent addition, it was added to the /etc/rc.d/linux boot script. Before that you had to add those entries by hand to /etc/fstab. Now it can be done "automagically" 


```
if checkyesno linux_mounts_enable; then
                linux_mount linprocfs "${_emul_path}/proc" -o nocover
                linux_mount linsysfs "${_emul_path}/sys" -o nocover
                linux_mount devfs "${_emul_path}/dev" -o nocover
                linux_mount fdescfs "${_emul_path}/dev/fd" -o nocover,linrdlnk
                linux_mount tmpfs "${_emul_path}/dev/shm" -o nocover,mode=1777
        fi
```


----------



## unicorn (Apr 13, 2022)

I edit fstab add follwing:

```
devfs      /compat/linux/dev      devfs      rw,late                    0  0
tmpfs      /compat/linux/dev/shm  tmpfs      rw,late,size=1g,mode=1777  0  0
fdescfs    /compat/linux/dev/fd   fdescfs    rw,late,linrdlnk           0  0
linprocfs  /compat/linux/proc     linprocfs  rw,late                    0  0
linsysfs   /compat/linux/sys      linsysfs   rw,late  
proc       /proc                          procfs       rw                       0      0
```
failed at boot, /compat/linux/dev/shm can't be found


----------



## shkhln (Apr 13, 2022)

SirDice said:


> `sysrc linux_mounts_enable="YES"`


This is the default value, actually.


----------



## SirDice (Apr 13, 2022)

unicorn said:


> failed at boot,/compat/linux/dev/shm can't be found


You might need to create the directory. I don't think it exists when you first enable this.


----------



## SirDice (Apr 13, 2022)

shkhln said:


> This is the default value, actually.


You are correct. I had `linux_enable="YES"` on my system but those filesystems never mounted until I added `linux_mounts_enable="YES"`. The default may have changed at some point in time, and my setting in rc.conf is now superfluous.


----------



## unicorn (Apr 13, 2022)

/shm exist,but I still get this error


----------



## SirDice (Apr 13, 2022)

unicorn said:


> /shm exist,but I still get this error


It's /compat/linux/dev/shm, not /shm.


----------



## unicorn (Apr 13, 2022)

I mean /compat/linux/dev/shm exist


----------



## SirDice (Apr 13, 2022)

unicorn said:


> I mean /compat/linux/dev/shm exist


Please show the output of `mount | grep '/compat/linux'`


----------



## unicorn (Apr 13, 2022)

devfs on /compat/linux/dev (devfs)
fdescfs on /compat/linux/dev/fd (fdescfs)
linprocfs on /compat/linux/proc (linprocfs,local)
linsysfs on /compat/linux/sys (linsysfs,local)


----------



## jbo (Apr 13, 2022)

There's no entry for /compat/linux/dev/shm.

Did you manually add the necessary entries to /etc/fstab? If so, you're missing at least one.
You might want to consider using the new auto mounting feature mentioned further above.


----------



## unicorn (Apr 13, 2022)

How to use auto mounting?code in /etc/rc.d/linux?that code exist in my 
/etc/rc.d/linux


----------



## SirDice (Apr 14, 2022)

`sysrc linux_enable="YES"`


----------



## jbo (Apr 14, 2022)

I've just updated my system from manually listed entries in /etc/fstab to the "new" automatic method and it works like a treat


----------



## unicorn (Apr 14, 2022)

steam cannot start,it shows error couldn't connect to x


----------



## shkhln (Apr 15, 2022)

Likely unset DISPLAY env var or something like that.


----------



## unicorn (Apr 21, 2022)

How to do that? I don't know how to do that.


----------

