Leaderboard

Popular Content

Showing content with the highest reputation on 10/24/20 in Posts

  1. No, because by default Linux does not switch off unused pcie, usb, sata, iGPU, etc. This script sets only all devices from (permanently) ON to AUTO (reduce energy consumption / switch off, if not used). This is different compared to Windows or Apple where energy saving is the default. Source: https://www.kernel.org/doc/html/v4.14/driver-api/pm/devices.html#sys-devices-power-control-files "The setting can be adjusted by user space by writing either “on” or “auto” to the device’s power/control sysfs file. Writing “auto” calls pm_runtime_allow(), setting the flag and allowing the device to be runtime power-managed by its driver. Writing “on” calls pm_runtime_forbid(), clearing the flag, returning the device to full power if it was in a low-power state, and preventing the device from being runtime power-managed. User space can check the current value of the runtime_auto flag by reading that file." This has nothing to do with underclocking currently used devices. It only reduces power of a device that is not used (which is controlled by its driver). This is the same as CPU C-States.
    2 points
  2. Powertop [Support auf Deutsch] Powertop is an Intel tool (yes, works for AMD, too) to check power consumption states of sata, pcie, usb, etc devices. You can download powertop as follows, then restart your server and it will be automatically installed: mkdir /boot/extra cd /boot/extra wget https://github.com/mgutt/unraid-packages/raw/main/6.11.0/powertop-2.15-x86_64-1.txz Then open your terminal and execute: powertop Now press "TAB" until you reach "Idle Stats" and check your CPU Pkg (HW). Depending of the brand and model of your CPU you can reach different C-States. If your system isn't optimized, you will see this: If you press "TAB" you will see additional information about standby states of different hardware components of your system. In the tab "Tunables" you will see multiple devices which have the state "Bad", which means powertop found devices which do not allow standby/sleep states: Now you can execute the following command to optimize this: WARNING Many SATA controllers (JMB xxx or ASM xxxx) do not support link power management and your disks loose connection after reaching spindown! Read further before executing --auto-tune! powertop --auto-tune &>/dev/null By that all compents will return "Good": Now, your server should reach better C-States. Package C-States This table shows the dependency between CPU Core and CPU Package C-States: Several things are important to reach Package (Pkg) C-States C3, C7, C9 or even C10: Accurate power measurement - do some research how accurate your power meter is (UPS integrated power meters are usually bad) - close your Unraid WebGUI and wait 1 minute! (this closes many background jobs, which cost your energy, use your PC's terminal and "ssh root@tower" to monitor your C-States with powertop) - don't use Unraid in GUI mode (you should avoid this mode, if you want low power consumption) Powertop shows only C1, C2 and C3 Pgk-States This happens if powertop does not recognize your CPU (happens for most AMD CPUs and recent Intel CPUs). Your CPU could still reach C9 or even C10, but powertop is not able to obtain this and shows only C3. BIOS - only Gigabyte 8th or 9th Intel: enable CEC2019 - enable ASPM (Active-State Power Management) in the PCI settings - enable all C-States like C7/C9/C10 in the CPU settings ("auto" usually means "disabled", so select "enable") - disable Audio - disable RGB LED controller - disable Turbo in the CPU settings PCIe cards Some PCIe cards prevent states other than C0 or C3 (Intel). As an example my Qnap Aquantia 10G card allowed only C3 while all my Intel 10G cards allowed C7. Without any installed card I'm able to reach C10. iGPU Install the iGPU driver plugin through unRAID Apps if your CPU has an iGPU hpet Set hpet=disable as a Kernel setting if you have an 8th, 9th or 10th Intel CPU as there is a bug which can cause crashes (shouldn't be necessary anymore since unRAID 6.10) CPU governor Use the tips & tweaks Plugin to set the CPU governor to "powersave" or use the below commands in the Go file. 10G networking SFP+ DAC consumes less power than SFP+ SR/LR and both less than 10G RJ45. Depending on your internet connection the most efficient scenario is not to use a 10G switch. Instead directly connect your client with your server and use a second 1G cable to connect with your internet router. By that your 10G controller/card goes to sleep while your client is powered off. In comparison an active connection to a 10G switch never allows sleep states. MTU Surprisingly a user was not able to reach any C-State other than C1E after setting the MTU to 9000. SATA Controller Some mainboards or pcie cards provide SATA ports through an additional SATA controller. Sadly some of the most popular and usually well supported JMB xxx and ASM xxxx controllers have an incompatibility to "powertop --auto-tune" because it sets all SATA ports to "med_power_with_dipm". To bypass this problem, you should not use "powertop --auto-tune". Instead read the "Commands" paragraph to set the commands manually. Then you can remove the line with the "med_power_with_dipm" setting or you can set each hostX individually. Example: # Enable SATA link power management (this skips SATA host3 and host4) echo med_power_with_dipm | tee /sys/class/scsi_host/host1/link_power_management_policy echo med_power_with_dipm | tee /sys/class/scsi_host/host2/link_power_management_policy echo med_power_with_dipm | tee /sys/class/scsi_host/host5/link_power_management_policy echo med_power_with_dipm | tee /sys/class/scsi_host/host6/link_power_management_policy If you are using the ASM1166 you could even try to update the firmware. NVMe A user found out that a specific NVMe SSD allowed only C2, while with a Samsung Evo Plus the system reached C10. Power supply An unnecessary high-power and/or inefficient power supply can raise the power consumption by 5 to 15W. Choose wisely: - as low power (watt) as possible - as efficient as possible (like Titanium grade) - avoid dual power supply setups (server grade hardware is not build for efficiency) If you plan to build a setup with extremely low power consumption, consider these power supplies: - PicoPSU (up to 200 watts, but is limited to ~4 SSDs as it has low 5V output) - Corsair RM550x (2021) (this looses only 1 watt more than a PicoPSU at 10W to 20W load!) - BeQuiet Pure Power 11 FM 550W (similar to the Corsair, but 2 watts more than a PicoPSU, but cheaper than the Corsair) Notes: - As of writing this post all other power supplies are much more inefficient. So don't think for example a Corsair SF450 is more efficient than the Corsair RM550x (2021) although the former is Platinum grade . It's not. I have both and the Platinum looses 4W more at 10W load. The reason is that some of the most recent power supplies include a new technology to reach the future ATX12VO standard, which has the requirement of being extremely efficient at low loads. For example Seasonic told me in 06/2022 that power supplies for ATX12VO are still in development. - An HDD can consume up to 30W if you switch on your server, but in this state the other server components do not reach their maximum load. So summarize wisely to obtain the correct power supply size. - Do not buy the Corsair / BeQuiet if you don't reach a power consumption under 30W: Above this, usual Platinum / Titanium power supplies are more efficient. Commands Instead of using "powertop --auto-tune" you could add the following power-saving commands to your /boot/config/go file (stop your array and execute them through your terminal to test them first) with the Config File Editor Plugin: # ------------------------------------------------- # Set power-efficient CPU governor # ------------------------------------------------- /etc/rc.d/rc.cpufreq powersave # ------------------------------------------------- # Disable CPU Turbo # ------------------------------------------------- [[ -f /sys/devices/system/cpu/intel_pstate/no_turbo ]] && echo "1" > /sys/devices/system/cpu/intel_pstate/no_turbo [[ -f /sys/devices/system/cpu/cpufreq/boost ]] && echo "0" > /sys/devices/system/cpu/cpufreq/boost # ------------------------------------------------- # Enable power-efficient ethernet # ------------------------------------------------- # enable IEEE 802.3az (Energy Efficient Ethernet): Could be incompatible to LACP bonds! for i in /sys/class/net/eth?; do dev=$(basename $i); [[ $(echo $(ethtool --show-eee $dev 2> /dev/null) | grep -c "Supported EEE link modes: 1") -eq 1 ]] && ethtool --set-eee $dev eee on; done # Disable wake on lan for i in /sys/class/net/eth?; do ethtool -s $(basename $i) wol d; done # ------------------------------------------------- # powertop tweaks # ------------------------------------------------- # Enable SATA link power management echo med_power_with_dipm | tee /sys/class/scsi_host/host*/link_power_management_policy # Runtime PM for I2C Adapter (i915 gmbus dpb) echo auto | tee /sys/bus/i2c/devices/i2c-*/device/power/control # Autosuspend for USB device echo auto | tee /sys/bus/usb/devices/*/power/control # Runtime PM for disk echo auto | tee /sys/block/sd*/device/power/control # Runtime PM for PCI devices echo auto | tee /sys/bus/pci/devices/????:??:??.?/power/control # Runtime PM for ATA devices echo auto | tee /sys/bus/pci/devices/????:??:??.?/ata*/power/control Note: EEE can cause problems with 2.5G Intel Ethernet. Config File Editor: Debugging Here are some helpful terminal commands. Spin down all disks (Unraid only) for dev in /dev/sd?; do /usr/local/sbin/emcmd cmdSpindown="$(grep -zoP "(?<=name=\")[a-z0-9]+(?=\"\ndevice=\"${dev: -3})" /var/local/emhttp/disks.ini | tr -d '\0')"; done Obtain ASPM status of all devices: lspci -vv | awk '/ASPM/{print $0}' RS= | grep --color -P '(^[a-z0-9:.]+|ASPM )' Watch CPU frequency: watch -n3 "cpufreq-info | grep 'current CPU'"
    1 point
  3. Your Unraid server shouldn't be exposed to the internet, anyway, so why bother?
    1 point
  4. The rebuild does not check the existing contents. It just works out what should be there by reading all the other disks, and then overwrites whatever is on the disk being rebuilt.
    1 point
  5. Checking would just slow it down and it assumes a new disk was used so no point checking.
    1 point
  6. Without going through the massively complicated directions, since you're using 6.9, instead of utilizing an unassigned device for things, you're better off (and it's going to just plain work better) if you had instead created a new cache pool. But, for the execution error, edit the container, make a change any change, revert it then hit apply. The exact reason why it's failing will appear following the docker run command that appears.
    1 point
  7. Do not use option 2 (new config) mentioned in that post from several years ago. That was incorrect.
    1 point
  8. You didn't have time to run an extended SMART test, but SMART attributes look OK. You can rebuild to a new disk or to the same disk as already explained in this thread. Since this happened after you were making hardware changes, you should double check all connections, all disks, SATA and power, including splitters.
    1 point
  9. cool i ignored that. 😀 I used to have tapes drives but the last one was a lto3.
    1 point
  10. I don't think SAS vs SATA will make much of a difference with Unraid, more important is the disk platter size, i.e., more recent disks with a higher areal density will likely be generally faster.
    1 point
  11. my container automatically updated to 4.3.0 but it isn't whitelisted yet on trackers, so i'd rather downgrade for now. what is the best way to do so? on one forum, someone mentioned getting a version number from the More Info tab on the container image, but i can't find it, and add that to the repository on the container's Edit page. can anyone write a quick step by step for me please? i believe i've turned off automatic updates for the future. thanks.
    1 point
  12. dirty_writeback is the only risky setting, but it's not raised by powertop, it's reduced. The default is 30 seconds. Powertop sets it to 15 seconds. This means Linux starts 15 seconds earlier to empty the RAM to disk. This can save energy as all devices can reach the sleep state 15 seconds earlier. Note: A UPS is absolutely recommend or all data of the last 15 seconds will be lost. Unraid default: Even 30 seconds. Example: You move important data to your server (so it's "deleted" from your client). If now a power outage occurs in the 30 seconds since the first file was uploaded, everything is lost. I think this point needs more attention through Limetech. vm.dirty_ratio should be reduced to 1% and vm.dirty_writeback_centisecs should be reduced to 0.5 seconds (disabling has a huge negative impact on performance) if no UPS is connected. I raised my dirty_ratio to 50% and left the 30 seconds because I'm using a UPS and it allows to upload a huge amount of files even to HDDs with maximum 10G speeds (as it's written to RAM and emptying the RAM happens later)
    1 point
  13. Thx, that was it. But I can't remeber when I changed the vfio-pci config.
    1 point
  14. Possible reduced stability. It's almost like the inverse of overclocking. Circuits are designed and tested to run at spec, deviate and you risk bit errors. Depending on the quality of your specific silicon you might be fine, but you don't know for sure. How valuable is your data integrity? See @mgutt's reply, I was referencing undervolting, wrong thread.
    1 point
  15. Read this thread for more about why that's possibly a bad idea.
    1 point
  16. v0.9 released: - Preloads only subtitle files that belong to preloaded video files Now the preloading should be much faster if your collection contains many SRT files. Here is an example from my logs:
    1 point
  17. 1 point
  18. Yes and no. If you set it to only and your cache becomes full again, emby will crash (because emby runs out of storage). Thats the reason why I set a minimum free space on my SSD before changing the path to Direct Access as this minimum free space is only valid for Shared Access. By that I have up to 100GB free storage exclusively for Plex no matter how much data is written to the SSD through other processes. This is strange. One moment, I will test if this feature shows files that exist twice... Hmm no it shows disk8 and cache if the same file is located on both: So what happened with your Emby installation 🤔 Emby itself has usually no clue about the local path. But maybe the docker container itself resets after changing the appdata path? Hopefully not, but else I'm out of ideas. Which emby container are you using? I want to test this scenario. EDIT: I'm having an additional idea. Execute this command please: sysctl -a | grep dirty Is "vm.dirty_expire_centisecs" set to 3000? If yes, the following could happen: - emby wrote new data to the database - because of "vm.dirty_expire_centisecs" this new database is still located in the RAM for 30 seconds - now you changed the path, emby restarts and does not find the database file anymore as its not already written to the SSD cache If this is the reason, I have to change the manual as we have to disable the container and wait more than 30 seconds before changing the path. What it means for you: File is lost (sorry for that).
    1 point
  19. I am one very happy bunny!! That worked a treat!
    1 point
  20. Apologies if this has been addressed, I saw notes around page 8 of others having issues using custom ports, but I couldn't find a solution. It's unfortunate that so much of this thread is standard UniFi controller support over container support. Anyway, I have been unsuccessful using custom ports for this container as well. I have configured the docker properly, but the defaults are still used. If I go into the container and look as the system.properties file, the port options are all commented out, so I'm not sure how the UniFi controller is supposed to know to use the custom ports. Thanks, James
    1 point
  21. I wouldn't recommend that controller. It is a native 2 sata port PCI-E x1 controler with port multipliers. A PCI-E x1 card only has enough bandwidth for 2 modern HDD so it will quickly become a bottle neck and you are likely to get drive errors, drives ejected from the array etc. 3Gbs is way faster than any conventional HDD.
    1 point
  22. Maybe, or another network issue, but I've always used SMB for Kodi and never had any issues.
    1 point
  23. Update: Bin jetzt und bleibe jetzt bei RouterOS. Die 10G Module haben irgendwie nicht funktioniert mit SWOS aufeinmal. Frag mich nicht. In RouterOS funktionieren sie, ergo ich bleib bei RouterOS EDIT: Die Netzwerkkarten sind noch nicht da. Ich habe jetzt ein paar 10G Module für den QNap Netzwerkadapter benutzt. Dann hat mein Macbook schonmal die 10G
    1 point
  24. Don't see any errors on the log, are you using NFS? If yes try with SMB instead if possible.
    1 point
  25. Q16:- https://github.com/binhex/documentation/blob/master/docker/faq/vpn.md
    1 point
  26. I looked at it, and it was by design. But, you convinced me, so I did a coding change, and we'll see if the powers that be agree.
    1 point
  27. That's what it will show unless you're running a balance, it's the normal status.
    1 point
  28. Important: to all of you who downloaded OVMF files from my posts I'm very sorry for this, OVMF files have unexpected behaviors if compiled with xcode (it seems the culprit is clang 7.0.0) (at least on my system!); they somehow work, you probably didn't notice any issue, me too, unless I detached my second hdmi monitor and I wasn't able to boot anymore (only attaching hdmi made the vm to boot again). So, if you downloaded OVMF files from me AND you have no tianocore logo at boot that OVMF files are somehow corrupted. Read more info here, in the bug I opened today: https://bugzilla.tianocore.org/show_bug.cgi?id=3006 So switch back to that provided with unraid or download the attached version (v. 202008 stable compiled from sources): these are compiled by me on kali linux, no corrupted files, and you will notice that the tianocore logo is back (update: tianocore logo shown/not shown is not so important, it's due to xcode not supporting Hii-Binary-Package.UEFI_HII). Moreover, I think all my issues I posted here related to OVMF could be related to this. With the attached v. 202008 I have no problems in Catalina and Big Sur. All previous attachments in the forum relating OVMF are now removed, pointing to this post. Sorry again Update: Newer files here (202011 stable release): edk2-OVMF-202008.zip
    1 point
  29. Multiple mounts, one upload and one tidy-up script. @watchmeexplode5 did some testing and performance gets worse as you get closer to the 400k mark, so you'll need to do something like below soon: 1. My folder structure looks something like this: mount_mergerfs/tdrive_vfs/movies mount_mergerfs/tdrive_vfs/music mount_mergerfs/tdrive_vfs/uhd mount_mergerfs/tdrive_vfs/tv_adults mount_mergerfs/tdrive_vfs/tv_kids 2. I created separate tdrives / rclone mounts for some of the bigger folders e.g. mount_rclone/tdrive_vfs/movies mount_rclone/tdrive_vfs/music mount_rclone/tdrive_vfs/uhd mount_rclone/tdrive_vfs/adults_tv for each of those I created a mount script instance where I do NOT create a mergerfs mount 3. I mount each in turn and for the final main mount add the extra tdrive rclone mounts as extra mergerfs folders: ############################################################### ###################### mount tdrive ######################### ############################################################### # REQUIRED SETTINGS RcloneRemoteName="tdrive_vfs" RcloneMountShare="/mnt/user/mount_rclone" LocalFilesShare="/mnt/user/local" MergerfsMountShare="/mnt/user/mount_mergerfs" # OPTIONAL SETTINGS # Add extra paths to mergerfs mount in addition to LocalFilesShare LocalFilesShare2="/mnt/user/mount_rclone/music" LocalFilesShare3="/mnt/user/mount_rclone/uhd" LocalFilesShare4="/mnt/user/mount_rclone/adults_tv" 4. Run the single upload script - everything initially gets moved from /mnt/user/local/tdrive_vfs to the tdrive_vfs teamdrive 5. Overnight I run another script to move files from the folders that are in tdrive_vfs: to the correct teamdrive. You have to work out the encrypted folder names for this to work. Because rclone is moving the files, the mergerfs mount gets updated i.e. it looks to plex etc like they haven't moved #!/bin/bash rclone move tdrive:crypt/music_tdrive_encrypted_folder_name gdrive:crypt/music_tdrive_encrypted_folder_name \ --user-agent="transfer" \ -vv \ --buffer-size 512M \ --drive-chunk-size 512M \ --tpslimit 8 \ --checkers 8 \ --transfers 4 \ --order-by modtime,ascending \ --exclude *fuse_hidden* \ --exclude *_HIDDEN \ --exclude .recycle** \ --exclude .Recycle.Bin/** \ --exclude *.backup~* \ --exclude *.partial~* \ --drive-stop-on-upload-limit \ --delete-empty-src-dirs rclone move tdrive:crypt/tv_tdrive_encrypted_folder_name tdrive_t_adults:crypt/tv_tdrive_encrypted_folder_name \ --user-agent="transfer" \ -vv \ --buffer-size 512M \ --drive-chunk-size 512M \ --tpslimit 8 \ --checkers 8 \ --transfers 4 \ --order-by modtime,ascending \ --exclude *fuse_hidden* \ --exclude *_HIDDEN \ --exclude .recycle** \ --exclude .Recycle.Bin/** \ --exclude *.backup~* \ --exclude *.partial~* \ --drive-stop-on-upload-limit \ --delete-empty-src-dirs rclone move tdrive:crypt/uhd_tdrive_encrypted_folder_name tdrive_uhd:crypt/uhd_tdrive_encrypted_folder_name \ --user-agent="transfer" \ -vv \ --buffer-size 512M \ --drive-chunk-size 512M \ --tpslimit 8 \ --checkers 8 \ --transfers 4 \ --order-by modtime,ascending \ --exclude *fuse_hidden* \ --exclude *_HIDDEN \ --exclude .recycle** \ --exclude .Recycle.Bin/** \ --exclude *.backup~* \ --exclude *.partial~* \ --drive-stop-on-upload-limit \ --delete-empty-src-dirs exit
    1 point
  30. So just to let everyone know.... I have received a (only one in stock, the 3 others will be sent later) OCF cabel. AND THAT WORKED! Now on to the next challanges. (Just fought the whole "disk only reads 746,5GB and not 3/4/8/10TB"-problem. THANK YOU ALL!
    1 point
  31. Go to the Docker tab. Find the Binhex-Krusader in the Dockers list. Click on it (see picture below) and select "Edit". The Binhex-Krusader Docker edit screen pops up. Go down the list until you see the /mnt/disks/ for the container path for unassigned. Click the "Edit" button to the right of it. The details pop-up for the unassigned devices paths. Go down the list to "Access Mode" and change that to "RW/Slave" and then save.
    1 point
  32. Feature request: Instead of one giant tarball, could this app use separate tarballs for each folder in appdata? That way it would be much easier to restore a specific app's data (manually) or even pull a specific file since most of them could be opened with untar guis. Plex is the major culprit with it gargantuan folder.
    1 point
  33. I recently set up a mail server on a vps for my company and I would not attempt to create a docker for it. Way too many components and too much to tinker while setting it up. If you really want to run it from home, I would recommend doing it in a Linux vm For reference, I set up a postfix server with dovecot for sasl and also set up opendkim (signatures) and postsrsd (for email forwarding). Fail2ban provides the firewall. Roundcube is the webmail interface but is rarely used as most employees either set it up on their phones with imap, or on their desktops with outlook, or forward all to gmail
    1 point