CIFS filesystem not supported by the system

ISSUE:

mount -t cifs //192.168.0.123/myshare /mnt/myshare -o username=myusername

> mount error: cifs filesystem not supported by the system
> mount error(19): No such device

mount.cifs //192.168.0.123/myshare /mnt/myshare -o username=myusername

> mount error: cifs filesystem not supported by the system
> mount error(19): No such device

modprobe cifs

> modprobe: FATAL: Module cifs not found in directory /lib/modules/5.3.18-lp152.26-default

ls /lib/modules/5.3.18-lp152.26-default/kernel/fs

> btrfs ceph configfs efivarfs fat fscache isofs lockd nfs nfs_common nls overlayfs xfs

locate cifs.ko

Returns nothing

smbclient -NL 192.168.0.123

Lists all SMB shares on the network device

I have just installed latest JeOS
Linux 5.3.18-lp152.26-default x86_64
openSUSE Leap 15.2
Running under VMWare

zypper in samba-client
zypper in cifs-utils

Would appreciate help from anyone who has cifs working in JeOS, or option to install the old smbmount command.

do you have used vers=1.0 or so:

man mount.cifs

Oops no cifs.
Here :

ls /lib/modules/5.7.9-1.ga010166-default/kernel/fs/
9p    binfmt_misc.ko.xz  configfs  erofs     gfs2     lockd       nls        qnx4      sysv    zonefs
adfs  btrfs              cramfs    exfat     hfsplus  minix       ocfs2      qnx6      ubifs
affs  cachefiles         dlm       fat       hpfs     nfs         omfs       quota     udf
afs   ceph               ecryptfs  freevxfs  isofs    nfs_common  orangefs   reiserfs  ufs
befs  cifs               efivarfs  fscache   jffs2    nfsd        overlayfs  romfs     vboxsf
bfs   coda               efs       fuse      jfs      nilfs2      pstore     squashfs  xfs

JeOS uses the** kernel-default-base** package which lacks cifs and some other modules to save space. If you want to get all the modules, including cifs, you need to install kernel-default.

Thanks for the quick responses! That’s not what I wanted to hear, but what I needed to know. You would think cifs-utils would have some sort of dependency check on the module being available. Looks like I will just try again with the main distribution.

You can simply install kernel-default on JeOS, it takes about 300M more space but still takes less than a full blown 15.2 server install.

I think you overlooked this.
It would be very surprising for even a JeOS to have a kernel without cifs support.

BTW -
I’d even be surprised if JeOS wasn’t using the default kernel, recommend you verify the kernel by name.
Although JeOS is a bare minimum OS, I hadn’t noticed that the kernel itself was modified or different than default whether initrd or lkm.

uname -r

Edit:
Re-read your original post, seems you have all info there. Am going to do a little investigation myself to see if anything turns up.

TSU

@tsu:
My Oops was because I have not read the post of neoporcupine carefully.

I have cifs in the kernel, but as Miuku said the JetOS has kernel-default-base installed, a minimal kernel without cifs

I’m only partially through my personal investigation, but I can report this…

Before my findings I’d want to say a few preliminary things about JeOS…
At least within openSUSE, there is not a standard, consistent way for creating a JeOS so the JeOS we’re looking at today is not going to be anything like a JeOS you might find for Docker, Kubernetes, Kiwi or anywhere else. Each JeOS is typically handcrafted according to some person’s idea of what a JeOS should be.

And, that’s in large part why I’m surprised to see a JeOS with a kernel that uses a special kernel. This was less of an issue “in the old days” prior to kernel 3.0 when the kernel only provided core functionality but starting with kernel 3.0 device drivers and applications which used to run in userspace have been embedded in the kernel which is why most people call it a monolithic kernel. This is ironic since the Linux kernel was criticized for being monolithic prior to 2.7, was re-architected to be modular and since then despite retaining the modular changes has become monolithic again.

This is not an academic issue.
Moving all these userspace tools into the kernel has been a gradual process, not done overnight so there wasn’t an overnight change.
And this meant that if a JeOS removed functionality, a User could re-install that functionality typically as just another package.
But, this won’t likely be possible or at least easy to do with what we are seeing in this kernel.


OK,
Let’s get back to the CIFS topic…

I haven’t fully tested, but the following seems to have installed CIFS in the VMware JeOS

  1. Install the YaST samba module
zypper in yast2-samba-server
  1. run the samba server module in yast (ncurses mode of course)
yast

Browse to the samba server module in Network Services
Change the configuration to start the samba service.
That should prompt you to install samba and samba-client if they aren’t already installed

  1. Re-run the YaST samba server module and finish configuration of startup, firewall, shares and any other necessary settings.

You should have a working samba server, configured to support SMB (CIFS).

You can verify the new cifs files on your system using locate…
You should find files that relate to the configuration and maintenance of SMB/CIFS, but you will also find files that are related to building the cifs kernel modules on demand(eg dracut and sources) and where they are (They’re not named or located as you expected in the first post of this thread).

So,
Problem should be solved for this situation,
It should again be emphasized that this or any other JeOS is not to be considered typical or representative of what you’ll find in any other JeOS.

TSU

Thanks Miuku - yours is the solution that worked! I had already wiped and installed full OpenSUSE and got the VM running nicely. But came back to try the JeOS version again as I like the idea of a pre-installed minimalist OS.

zypper in kernel-default

After installing (replace existing I think), rebooting, I was able to mount an SMB share using CIFS without a problem.

If that’s your preference… ie willing to sacrifice the concept of the JeOS minimalist functionality by installing a normal kernel in this case, you might be able to save yourself a lot of trouble by just installing the text mode “server” role in a regular installation.

For those who don’t want to go that far and only want to add CIFS support, the method I outlined using the YaST samba module appears to do only what is necessary to install and configure support for CIFS.

Since you’re dealing with “disposable” VMs, if you still wish to minimalize attack surface, space usage and resource usage, you might set up your File server both ways, then take your pick.

TSU