Read/write and minor driver problems

Try to type in terminal whereis steam it should show you where the binary, the config and the manual files are.

@ilikelinux :+1: thanks!

1 Like

Adding to the issue - despite the drivers successfully installing, the GreenWithEnvy overclocking program doesn’t recognise the card… :frowning:

Note that I suggested something similar be added as a line in /etc/fstab and did not even hint that was to be a literal command line.

I see. I’ll have to do some research regarding what ‘fstab’ is, and how to add to it.

This is always good. You might start here: Welcome to Ask Fedora! Please read me first!
Thats what @computersavvy asked for (Please read Helping your helpers)

That he not has to assume:

Everything you have doubts in Linux, you can read/ask the man(ual) in the terminal, the first lines give you an overview of the command/file etc. you need info.

Let’s start, type the following man commands in the terminal one by one and read at least the header/description, that you have an idea what you are doing.

# Every line is a separate manual entry.
# You can copy/paste the whole block of commands and jump to the next entry
# by pressing the " q " key. 
man cat
man fstab
man sudo
man fdisk
man cp
man ls
man nano
  1. Now we do have a couple of commands do solve the problem (type or copy/paste into terminal)

    cat /etc/fstab
    Please show us the output as preformatet text

  2. To see the information of your hard-disk you like to read/write (if external, verify that it is plugged in and switched on)

    sudo fdisk -l
    Please show us the output as preformatet text

  3. Try to find out your HD’s info where @computersavvy was assuming (please refer to the fdisk -l command output):
    (would like to see your guess!)

  1. Backup your fstab:
    sudo cp /etc/fstab /etc/fstab_backup
    ls -l /etc/fstab* #verify if you have both files original/backup

  2. Before editing your /etc/fstab we would like to get a feedback from you.
    nano testfile # to play around if nano is new for you.
    sudo nano /etc/fstab

I took this in consideration …

Please next time make for every question a new request.

So:

I looked at the man cat, man fstab etc. I get most of it.

I ran some of the commands. I’ve ran some of them before to try and fix this problem. When I got to @computersavvy 's command again ( /dev/sdc1 /home/user/steam ext4 defaults 0 1 #example for /etc/fstab ), I got confused. What am I meant to put in place of #example?

Other than that I feel that this issue will soon be fixed.

Many thanks to both of you again :smiley:

1 Like

This is just a comment, a information for you. I added this, that you can see this was an example. Just let it away …

Please follow the suggestions of @ilikelinux and post the output of your commands as requested, in preformatted text, so we can see the pertinent details of your

  1. system
    and
  2. errors you see

Once we have accurate and detailed information of where you are having problems then it may be possible for us to give detailed guidance of exactly what commands to use and what the expected results should be.

1 Like

Here’s the output, ‘no fluff’ (except some redacted info for privacy/security, mostly names that will not affect anything. Let me know if I’ve put in any potentially sensitive data by accident):

1.

[(user)@fedora ~]$ cat /etc/fstab

/etc/fstab

Created by anaconda on Mon Sep 27 11:41:52 2021

Accessible filesystems, by reference, are maintained under ‘/dev/disk/’.

See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.

After editing this file, run ‘systemctl daemon-reload’ to update systemd

units generated from this file.

UUID=8f35096d-cf48-4248-b85b-6c991ef9a7e9 / btrfs subvol=root,compress=zstd:1 0 0
UUID=ff92c002-0238-46e5-abff-eb5cc46b5308 /boot ext4 defaults 1 2
UUID=572C-8B28 /boot/efi vfat umask=0077,shortname=winnt 0 2
UUID=8f35096d-cf48-4248-b85b-6c991ef9a7e9 /home btrfs subvol=home,compress=zstd:1 0 0
/dev/disk/by-uuid/5bb25426-5215-4594-a913-7cafdc7a5215 /mnt/5bb25426-5215-4594-a913-7cafdc7a5215 auto nosuid,nodev,nofail,x-gvfs-show 0 0
LABEL=Games\040&\040Programs /mnt/Games\040&\040Programs auto nosuid,nodev,nofail,x-gvfs-show 0 0

2.

[(user)@fedora ~]$ sudo fdisk -l
[sudo] password for (user):
Disk /dev/sda: 232.89 GiB, 250059350016 bytes, 488397168 sectors
Disk model: (SSD)
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: B5592110-9F57-47B3-AD98-30E22DE0D364

Device Start End Sectors Size Type
/dev/sda1 2048 1230847 1228800 600M EFI System
/dev/sda2 1230848 3327999 2097152 1G Linux filesystem
/dev/sda3 3328000 488396799 485068800 231.3G Linux filesystem

Disk /dev/sdb: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: (SSD)
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x818fed00

Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 976773119 976771072 465.8G 83 Linux

Disk /dev/sdc: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: (HDD)
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 83460E7F-9B60-41C3-9B5A-D59C2E45F563

Device Start End Sectors Size Type
/dev/sdc1 34 262177 262144 128M Microsoft reserved
/dev/sdc2 264192 1953523711 1953259520 931.4G Microsoft basic data

Partition 1 does not start on physical sector boundary.

Disk /dev/sdd: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: 3.0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: AB780EDC-3080-4659-A628-1611EA9AD807

Device Start End Sectors Size Type
/dev/sdd1 534528 536575 2048 1M Microsoft LDM metadata
/dev/sdd2 536576 567295 30720 15M Microsoft reserved
/dev/sdd3 567296 1953525134 1952957839 931.2G Microsoft LDM data

Disk /dev/zram0: 8 GiB, 8589934592 bytes, 2097152 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

3.

THIS IS THE INFO OF THE SSD WITH THE ISSUE FROM sudo fdisk -l :

Disk /dev/sdb: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: (SSD)
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x818fed00

Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 976773119 976771072 465.8G 83 Linux

4.

sudo cp /etc/fstab /etc/fstab_backup

ls -l /etc/fstab*
-rw-r–r–. 1 root root 962 Sep 27 16:10 /etc/fstab
-rw-r–r–. 1 root root 962 Oct 2 11:35 /etc/fstab_backup

5.

sudo nano /etc/fstab

/etc/fstab

Created by anaconda on Mon Sep 27 11:39:59 2021

Accessible filesystems, by reference, are maintained under ‘/dev/disk/’. sudo fdisk -l

See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.

After editing this file, run ‘systemctl daemon-reload’ to update systemd

units generated from this file.

UUID=8f35096d-cf48-4248-b85b-6c991ef9a7e9 / btrfs subvo>
UUID=ff92c002-0238-46e5-abff-eb5cc46b5308 /boot ext4 defau>
UUID=572C-8B28 /boot/efi vfat umask=0077,shortname=wi>
UUID=8f35096d-cf48-4248-b85b-6c991ef9a7e9 /home btrfs subvo>
/dev/disk/by-uuid/5bb25426-5215-4594-a913-7cafdc7a5215 /mnt/5bb25426-5215-4594->
LABEL=Games\040&\040Programs /mnt/Games\040&\040Programs auto nosuid,nodev,nofa>

Please note the difference between the display of the same text above and below. The below is enclosed in code tags from the tool bar above the box where you enter the text of your post and makes reading the post much easier since it is displayed as seen on your screen.

UUID=8f35096d-cf48-4248-b85b-6c991ef9a7e9 / btrfs subvol=root,compress=zstd:1 0 0
UUID=ff92c002-0238-46e5-abff-eb5cc46b5308 /boot ext4 defaults 1 2
UUID=572C-8B28 /boot/efi vfat umask=0077,shortname=winnt 0 2
UUID=8f35096d-cf48-4248-b85b-6c991ef9a7e9 /home btrfs subvol=home,compress=zstd:1 0 0
/dev/disk/by-uuid/5bb25426-5215-4594-a913-7cafdc7a5215 /mnt/5bb25426-5215-4594-a913-7cafdc7a5215 auto nosuid,nodev,nofail,x-gvfs-show 0 0
LABEL=Games\040&\040Programs /mnt/Games\040&\040Programs auto nosuid,nodev,nofail,x-gvfs-show 0 0

These fstab entries may be part of the issue with how you can access the data.

In general, most things mounted under /mnt are initially owned and accessible only to the root user. They may not be readable and certainly are not writeable by a normal user without making other changes.

I would suggest you do an eval as to which is actually the device /dev/sdb1 (which you said is your games) then choose to mount it differently.

Using the command "ls -l /dev/disk/by-uuid/" will give an output similar to this

$ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx. 1 root root 10 Sep 28 20:38 106df360-4bb3-4cd7-aa1e-f7a070b7bead -> ../../sda4

Note that both the UUID and the device it links to are shown.

What I have done before I wrote these instructions for you was to analyze how my steam install works and where files were created. and where they are located, so the guide should be correct.

1.  First, you need to identify which UUID applies to /dev/sdb1 as said above.
2.  Next you need to know if the entire device is intended as use for steam and all its associated data.
If the answers to #2 above is yes then what follows is step by step how to relocate the existing steam data to the device /dev/sdb1 and mount that for all future use as the steam library.  If no then there are differences in what you do.
3.  Verify the device is not mounted then format the device as ext4
sudo umount /dev/sdb1
sudo mkfs.ext4 /dev/sdb1
4.  Copy all the existing data from the steam install to the device /dev/sdb1.
a. Mount the device  by using
sudo mount /dev/sdb1 /mnt
b. Copy all the data over with
sudo rsync -av /home/<username>/.local/share/Steam/  /mnt/
c. (OPTIONAL: -- if desired to free up space) delete everything in you just copied over.
rm -r /home/<username>/.local/share/Steam/*
d. unmount the device
sudo umount /mnt
5.  Verify the proper UUID for /dev/sdb1 as described above.
6.  Create an entry in /etc/fstab to mount the device by UUID.  The line should read something like
UUID=<uuid found in step 5>  /home/<username>/.local/share/Steam  ext4  user,nosuid,nodev,nofail,x-gvfs-show 0 0
Once this entry is created the user can expect the device to automatically be mounted on boot (if attached), and if not can be mounted by the user with the command "mount -a"
7.  Finally, After doing all the above  the last step is to check that permissions are correct at the mount point so the user is able to read/write to the device.
If the command "ls -ld ~/.local/share/Steam" returns something like
drwx------. 26 user user 4096 Oct  2 12:58 .local/share/Steam/
then you should be done.
1 Like
  1. sudo blkid UUID of the drive=“bb831e11-05c8-47bc-a12f-dd7782d8b420”
  2. No, it will be used for other programs also.

Ok, since it will be used for other things as well I will give you a procedure to allow having it mounted elsewhere but still be able to use it for your steam library.
Will do that tomorrow.

Righto, thanks :slightly_smiling_face:

Here goes.
This procedure will enable you to mount the file system on a different drive and enable use of it as the steam library while sharing it with other programs.

You have said the partition is /dev/sdb1, and from what you have previously posted it seems it may already have been mounted with the line

LABEL=Games\040&\040Programs /mnt/Games\040&\040Programs auto nosuid,nodev,nofail,x-gvfs-show 0 0

in /etc/fstab. If that is correct then there is no issue and it can be used as such. If that is not correct then you need to use the following commands to find out where it is actually mounted.

mount

and look for /dev/sdb1. If you do not see it then do

ls -l /dev/disk/by-uuid

and look for the line that displays sdb1 at the very end. That line will give you the uuid needed to identify the device in /etc/fstab and always ensure it is mounted the same location.

Note that the line above from fstab can be better understood by changing it to

LABEL="Games & Programs" /mnt/"Games+Programs" auto nosuid,nodev,nofail,x-gvfs-show 0 0

Note also that using spaces in file and directory names in linux causes problems with many programs and utilities (including cd) and would be easier to use in the long run if the mount point were changed to /mnt/Games+Programs so there were no spaces involved.

You can use it as you wish but I will for the rest of this discussion use the mount point as /mnt/Games+Programs so no spaces are involved in the paths given.

First, the file system to be used must be mounted. I will use the mount point I suggest above to continue.
Second you need a directory that is initially empty to use for the steam data, and it has to be created with proper ownership
I will suggest that you create it as follows.

sudo mkdir /mnt/Games+Programs/Steam
sudo chown <youruser>:<yourgroup> /mnt/Games+Programs/Steam 
sudo chmod 700 /mnt/Games+Programs/Steam

The username and group used in the chown command above should be that seen when you do an

ls -ld ~/.local/share/Steam

Those commands will create the directory and set ownership and permissons properly.
The next step is to copy the content of the existing steam install to the new location, retaining all the ownership and attributes, including SELinux context.

rsync -aAXv ~/.local/share/Steam/ /mnt/Games+Programs/Steam/

Once this is done, you will need to delete the ~/.local/share/Steam/ direcory content if you wish to save space. If space is not of concern it may be left but the existing data will not be accessible as long as you are using the other drive for steam data and will be out of date as soon as you install a single additional game from steam (possibly as soon as you play another game).

To delete the data a simple “rm -r ~/.local/share/Steam/*” will do that for you.
Now to mount the new steam library over the existing mount point.

sudo mount -t bind /mnt/Games+Programs/Steam /home/<username>/.local/share/Steam 

If this successfully completes then it is time to make a new entry in /etc/fstab to mount it this way each time you boot.

sudo nano /etc/fstab
then add a line 
/mnt/Games+Programs/Steam /home/<username>/.local/share/Steam bind defaults 1 1
at the end of the existing fstab entries.

This should complete relocating the steam library and you should have full access at this point.

Note that all my comments are using my suggested mount point for that drive, and I strongly suggest that you create a directory /mnt/Games+Programs then edit the existing fstab entry as I suggested above so the mount point does not contain spaces in the name. It is OK for the LABEL to contain the spaces since that is only used for the mount, but file utilities such as cd, rm, ls, etc. require special handling when there are spaces in file and directory names. A lot of programs, including simple bash scripts may barf with spaces in names.

2 Likes
sudo mkdir /mnt/Games+Programs/Steam

mkdir: cannot create directory ‘/mnt/Games+Programs/Steam’: No such file or directory

I’m assuming that’s because ‘Steam’ is in (User)@fedora ~]$ whereis steam
steam: /usr/bin/steam /usr/lib/steam /usr/share/man/man6/steam.6.gz

But what does it mean no such file or directory? Isn’t the goal to create a directory that does not yet exist? I’m very confused.

I’ve just copy pasted every single command you’ve put in to terminal in descending order with no editing. I don’t want to end up with a corrupted drive again.

With the command you try to make a directory named Steam where is in /mnt/Games+Programs/ .

As /Games+Programs not exists yet in /mnt, the system tells you No such file or directory

At least now i would check the manual for mkdir and see if there is an parameter to make (p)arent directories, have a look below:

Remember man mkdir

DESCRIPTION
       Create the DIRECTORY(ies), if they do not already exist.

       Mandatory arguments to long options are mandatory for short options too.

       -m, --mode=MODE
              set file mode (as in chmod), not a=rwx - umask

       -p, --parents
              no error if existing, make parent directories as needed

       -v, --verbose
              print a message for each created directory

       -Z     set SELinux security context of each created directory to the default type

       --context[=CTX]
              like -Z, or if CTX is specified then set the SELinux or SMACK security context to CTX

       --help display this help and exit

       --version
              output version information and exit

Apparently you did not understand the caveat I gave. Your drive seems to be currently mounted at /mnt/Games\040&\040Programs. I suggested changing the mount point to /mnt/Games+Programs before you followed the rest of my instructions.

You apparently did not choose to do that so you are using a directory tree that does not fully exist.

I also said the mount point was changed in my instructions for easier readability. Do not use the path I gave but instead use the path already there if you choose to not change that mount point.

For example, everyplace you see in my instructions the “Games+Programs” you would need to put in a literal (including the quotations)

"Games & Programs"
or
Games\040&\040Programs

Well, if it helps, here is the result of every single command given in descending order, no fluff as usual:

LABEL=Games\040&\040Programs /mnt/Games\040&\040Programs auto nosuid,nodev,nofail,x-gvfs-show 0 0

nosuid,nodev,nofail,x-gvfs-show 0 0
[1] 4663
[2] 4664
bash: 040Programs: command not found…
bash: 040Programs: command not found…
[1]- Done LABEL=Games\040
[(User)@fedora ~]$ ^C
[2]+ Exit 127 \040Programs /mnt/Games\040

mount

proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=16383172k,nr_inodes=4095793,mode=755,inode64)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel,inode64)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,size=6560872k,nr_inodes=819200,mode=755,inode64)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,seclabel,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime,seclabel)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
none on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
/dev/sda3 on / type btrfs (rw,relatime,seclabel,compress=zstd:1,ssd,space_cache,subvolid=257,subvol=/root)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,nosuid,noexec,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=13862)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime,seclabel)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel,pagesize=2M)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime,seclabel)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,seclabel,nr_inodes=409600,inode64)
/dev/sda3 on /home type btrfs (rw,relatime,seclabel,compress=zstd:1,ssd,space_cache,subvolid=256,subvol=/home)
/dev/sda2 on /boot type ext4 (rw,relatime,seclabel)
/dev/sda1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=winnt,errors=remount-ro)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=3280432k,nr_inodes=820108,mode=700,uid=1000,gid=1000,inode64)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
/dev/sdd3 on /run/media/(User)/New Volume type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)
portal on /run/user/1000/doc type fuse.portal (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)

ls -l /dev/disk/by-uuid

total 0
lrwxrwxrwx. 1 root root 10 Oct 5 08:47 34C0EAD7C0EA9DFC → …/…/sdd3
lrwxrwxrwx. 1 root root 10 Oct 5 08:47 572C-8B28 → …/…/sda1
lrwxrwxrwx. 1 root root 10 Oct 5 08:47 8f35096d-cf48-4248-b85b-6c991ef9a7e9 → …/…/sda3
lrwxrwxrwx. 1 root root 10 Oct 5 08:47 bb831e11-05c8-47bc-a12f-dd7782d8b420 → …/…/sdb1
lrwxrwxrwx. 1 root root 10 Oct 5 08:47 CC7EFB5F7EFB412E → …/…/sdc2
lrwxrwxrwx. 1 root root 10 Oct 5 08:47 ff92c002-0238-46e5-abff-eb5cc46b5308 → …/…/sda2

LABEL="Games & Programs" /mnt/"Games+Programs" auto nosuid,nodev,nofail,x-gvfs-show 0 0

bash: /mnt/Games+Programs: No such file or directory

sudo mkdir /mnt/Games+Programs/Steam

mkdir: cannot create directory ‘/mnt/Games+Programs/Steam’: No such file or directory

sudo chown <*User)>:<(Looked in 'man group', I don't think my device even has one from what I could find) > /mnt/Games+Programs/Steam 

bash: (User): No such file or directory

sudo chmod 700 /mnt/Games+Programs/Steam

chmod: cannot access ‘/mnt/Games+Programs/Steam’: No such file or directory

ls -ld ~/.local/share/Steam

drwx------. 1 (User) (Group (just put down my user as group, idk what else to put) 964 Oct 4 12:35 /home/(User)/.local/share/Steam

rsync -aAXv ~/.local/share/Steam/ /mnt/Games+Programs/Steam/

rsync: [Receiver] mkdir “/mnt/Games+Programs/Steam” failed: No such file or directory (2)
rsync error: error in file IO (code 11) at main.c(784) [Receiver=3.2.3]
rsync: [sender] write error: Broken pipe (32)

sudo mount -t bind /mnt/Games+Programs/Steam /home/(User)/.local/share/Steam 

bash: username: No such file or directory

/mnt/Games+Programs/Steam /home/(User)/.local/share/Steam bind defaults 1 1
at the end of the existing fstab entries.
bash: [(User)@fedora: command not found…
bash: /mnt/Games+Programs/Steam: No such file or directory
bash: at: command not found…
Install package ‘at’ to provide command ‘at’? [N/y]

(selected ‘N’ not knowing what it does)

An extra thanks for your patience with me, both of you… I’m sure you’re both facepalming at my sheer incompetence with Linux.