The small linux problem thread

chmod -R g+s should do it?

I’ll check real quick, but I think that only sets the permissions correctly for newly created folders within the parent. I’m wondering if I can run a command like that and it update the folders that have already been created within the parent.

Assume I have already created the following directory tree:

/
  cool/
    innerCool/
      genericFolder/  # <---here
        purposefulFolder/
          spotOne/
          spotTwo/
        purposefulFolder2/
          spotThree/
          spotFour/
          spotFive/

After creating that I run

chmod -R 770 /cool/InnerCool/genericFolder
chown -R specialUser:specialGroup /cool/InnerCool/genericFolder

However, now I need to set the sticky bit for the group from /cool/InnerCool/genericFolder down after the subFolders have been created.

I could issue:

chmod g+s /cool/InnerCool/genericFolder

However, that will not affect the current folders already created, which I need to update. I would prefer to not have to delete them and recreate them because that might be painful.

Any way around that?

Oh yeah sorry, you should chgrp -R group and then chmod -R g+s

Okay. Thanks! I’ll have to test that, but this may help me survive this debacle. I’ll let you know what comes from this.

cotton

1 Like

That’s how I have my shares setup and it’s always worked fine so long as you have a dedicated group per share.

1 Like

found my solution

Is there anyway to organize the GNOME app drawer? (Sorry I don’t know a better word for it.) It’s a completely disorganized mess, and one of the reasons I dislike GNOME. But GNOME currently is the only stable desktop I can find on Fedora 33. XFCE and Cinammon keep crashing on me.

So are there any GNOME utilities/tweaks for managing this chaos?

Are you talking about grouping applications? If so, stock the intention is that you would type to search.

If you don’t mind using a menu system like Ms Windows 7 and prior, check the gnome extensions page.
https://extensions.gnome.org/

I am on an MS Windows PC at work, but I believe the extension is called “Applications Menu” and is installed stock, but not turned on in the Tweaks menu. You can use gconf2 to organize things where you actually want them to be and ignore their meta tags.

2 Likes

Recent is ordered by frequency of use and All is ordered by application name, alphabetically.

You can apparently do things with application directories as seen in /usr/share/desktop-directories/. Probably need to read up on the XDG specs.

This seems to be working so far. Thanks!

1 Like

I’m trying to get my NFS server to have more throughput. Right now I can transfer about I Gigabyte per minute. I have file transfers that can get hundreds of GB in size.

I’m using CentOS 7 as the NFS server. Its a VM and I have put it on more performant datastores, which helped out a bit, but not nearly enough.

At this point I’m thinking about teaming nics to see if I can increase the throughput. I’m using the “defaults” in addition to NFSv4 when I mount the NFS share.

Can anyone think of some things to check before assuming I need more NICs?

1 Like

What kind of workload is the NFS traffic? Large sequential, small random or mixed?

As a technical term I’m not sure what sequential/mixed means in this case, but the case I’m trying to solve involves getting a 30GB - 700GB file to transfer. I’m assuming this would be sequential.

Also, it’s already compressed, so I’m not that lucky to just compress the data before the transfer.

I notice in the transfer using:

watch -n1 ls -l #assume I'm in mount directory on the NFS server

In that directory, there only file present is the one being uploaded.

The “total” field is sometime 3 - 15 gb “ahead” of the file size.

image

In this image you can see the total field and the file size. They are equal here because I added “no_wdelay” to try to create synchronous writes. However, before adding this there was a significant gap between “total” and filesize.

I’m assuming there is some degree of windowing going on where the total shows the amount loaded to memory and the file size is what is actually written to disk. When the file size becomes the size of the total… the total jumps up and the file size slowly climbs.

This lead me to think there is an issue with memory -> disk writes on the local machine. However, I’m able to write a 30GB file locally on the NFS server to that directory using dd in about 7 minutes. So I’m not certain that is the issue. But given there is windowing, maybe that is actually slow.

Using:

free -h #on the NFS server

I noticed the “free” memory began to be consumed during the transfer and the buffer/cache memory increased until free memory was down to about 100mb. At this point I increased memory, and further tests showed this helped improve time. This may be a coincidence, but my guess is that this is going to have limited returns the more I add, especially as the file size transfer grows.

The next thing I did was create a NFS server on a datastore with better performance. This also cut down on the time. It’s possible, that increasing RAM on this machine might cut the time down more.

To me the equation for this operation looks something like this:

totalTime = processor{client} + RAM{client} + (numberOfNetworkTransfers * networkLatency) + processor{server} + RAM{server}+ disk{server}. 

The numberOfNetworkTransfers could be cut down by increasing amount of data sent during each transfer. I’m unable to cut down on RAM->Disk Writes any further, so I’m assuming here that I need to increase transfer speed or reduce network latency. That’s why I’m thinking NIC teaming.

But, I could be missing something.

What’s the storage stack? Md/lvm/ext4?

Is this 10GBE?

Try jumbo frames and nfsv3 with tcp,async,rwsize=65536 (On the client)

Yeah 10GBE. Client BTFRFS, Server XFS.

We should be able to jumbo frames on the network, but don’t I have to change the MTU’s on the client and servers NICs to handle that?

1 Like

Yes, set client and server to 9000. The switches usually include the header so it’s 9200ish. Just set it as high as it will go. On the switch it’s just a maximum that it will tolerate since it’s obviously not generating traffic. Recommend a dedicated vlan though to avoid mtu mixing. I assume this is a dedicated physical interface separate from the default gateway (on both server and client)?

Client and Server have single NIC. Switch is set to 9000.

incoming meme

Back To Problem

So only a single NIC on each machine. And just a heads up these are VMs.

1 Like

Ah ok. Go ahead and set client and server to 9000. It’s going to create some load somewhere on your network when normal traffic hits a standard mtu but you can figure out if that’s a reasonable compromise or if it matters at all.

Thanks for the advice, I’m going to run these test in the morning. I’ll reply to let you know how the tests turn out.

Thanks @oO.o

cotton

1 Like

That helps tremendously. The main difficulty is that I have really old /home directory with a ton of obsolete icons and organizing it is a nightmare.

I’ve found that like iOS, GNOME lets you drop one icon on top of another to create a “group”, for lack of a better word. That helps too…

1 Like