The officially official Devuan Forum!

You are not logged in.

#926 Re: Other Issues » [SOLVED] Script printout format assistance » 2022-05-15 10:12:57

Hello:

Head_on_a_Stick wrote:
printf '%s\t%s\n' "hd temp:" "${_drive_temp}°C"

Done.

~$ ssh user@192.168.1.3
--- snip ---
uptime:		9 min
ui:		inactive
daemon:		running
mem available:	208392 kB
mem free:	222252 kB
sda1 free/used:	  3.6M  53%
sda3 free/used:	362.6G  58%
hd temp:	26°C
~$ 
Head_on_a_Stick wrote:

I prefer Kelvin.

Cool!  8^D

Thank you for your input.

Best,

A.

#927 Re: Other Issues » [SOLVED] Script printout format assistance » 2022-05-14 21:17:08

Hello:

Altoid wrote:

... check it out ...
... report back as soon as I figure out ...

It took me a while, eventually got a decent result.
Trimmed it a bit so that what I get is just the essential information.

This:

#!/bin/sh
PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin"

# \t adds tab characters
# \n adds new lines
# %s defines strings which are listed afterwards
# awk can search so no need for grep

_uptime=$(uptime| sed 's/.*up \([^,]*\), .*/\1/')
_rsync_status=$(sudo /etc/init.d/rsyncd status)                   # OK needs root x ash
_memavail=$(grep -i memavailable /proc/meminfo | cut -c 19-27)    # OK no cats harmed
_memfree=$(grep -i memfree /proc/meminfo | cut -c 19-27)          # OK no cats harmed
_fs_status1=$(df -h | grep -vE '^Filesystem|/dev/root|tmpfs' | cut -c 6-70 | grep -i sda1 | cut -c 40-50)
_fs_status2=$(df -h | grep -vE '^Filesystem|/dev/root|tmpfs' | cut -c 6-70 | grep -i sda3 | cut -c 40-50)
_drive_temp=$(sudo smartctl -a -d ata /dev/sda | awk '/Temperature/ {print $10}')

printf '%s\t\t%s\n' "uptime:" "$_uptime"           # OK
printf '%s\t\t%s\n' "daemon:" "$_rsync_status"     # OK
printf '%s\t%s\n' "mem available:" "$_memavail"    # OK
printf '%s\t%s\n' "mem free:" "$_memfree"          # OK
printf '%s\t%s\n' "sda1 free/used:" "$_fs_status1" # OK
printf '%s\t%s\n' "sda3 free/used:" "$_fs_status2" # OK
printf '%s\t' "hd temp:" "$_drive_temp"            # OK

Gets me this when I ssh to the NAS:

~$ ssh user@192.168.1.3
--- snip ---
uptime:		 2:34
daemon:		running
mem available:	210064 kB
mem free:	226420 kB
sda1 free/used:	  3.6M  53%
sda3 free/used:	362.6G  58%
hd temp:	48	
~$ 

Seems good enough and the info is there.
Could not figure out how to get the °C after the temperature [number] print but it is just for me.
And I've been a Celsius man all my life. =^ )

Your pointers on lines, characters and strings were a big help.

Best,

A.

Edit: spelling/format.

#928 Re: Other Issues » [SOLVED] Script printout format assistance » 2022-05-12 20:17:22

Hello:

Head_on_a_Stick wrote:
#!/bin/sh
_uptime=$(uptime|cut -c 2-19)
_rsync_status=$(/etc/init.d/rsyncd status) # does not need root!
_memavail=$(grep -i memavailable /proc/meminfo) # save those poor cats!
_memfree=$(grep -i memfree /proc/meminfo) # ditto
_fs_status=$(df -h|awk '/^Filesystem/||/\/dev\/root/||/tmpfs/{ print $5 " " $1}') # awk can search so no need for grep
_drive_temp=$(sudo smartctl -d ata -A /dev/sda | grep Temperature | cut -c 5-8,87-89) 

printf '%s\t\t%s\n\n' "uptime:" "$_uptime" # \t adds tab characters, \n adds new lines, %s defines strings which are listed afterwards

printf '%s\t%s\n\n' "rsync daemon status:" "$_rsync_status"

printf '%s\n%s\n%s\n\n' "memory status:" "$_mem_avail" "$_mem_free"

printf '%s\t%s\n\n' "filesystem status:" "$_fs_status" # might not work :/

printf '%s\t%s\n' "drive temperature" "$_drive_temp"

Right ...

I'll check it out tonight and report back as soon as I figure out how it works.

Head_on_a_Stick wrote:

... trapped in Windows atm ...

You'll manage.  ;^ )

Head_on_a_Stick wrote:

... post back later when I'm in a proper OS...

Thank you for your input.

Best,

A.

#929 Other Issues » [SOLVED] Script printout format assistance » 2022-05-12 14:06:30

Altoid
Replies: 7

Hello:

I have this script running on ssh login:

#!/bin/sh
PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin"
echo uptime:
# run uptime - no load stats
uptime | cut -c 2-19
echo
echo rsync daemon status:
# run alias daemon
sudo /etc/init.d/rsyncd status
echo
echo memory status:
cat /proc/meminfo | grep -i memavailable && cat /proc/meminfo | grep -i memfree
echo
echo filesystem status:
# run alias fschk
df -h | grep -vE '^Filesystem|/dev/root|tmpfs'| awk '{ print $5 " " $1}'
echo
echo drive temperature:
# run alias tempchk
sudo smartctl -d ata -A /dev/sda | grep Temperature | cut -c 5-8,87-89
echo
echo filesystem health:
# run alias drivechk
sudo dmesg | grep -i ext4-fs | grep -i sda

This is the terminal printout:

uptime:
10:46:23 up 0 min,

rsync daemon status:
running

memory status:
MemAvailable:      211716 kB
MemFree:           228924 kB

filesystem status:
53% /dev/sda1
58% /dev/sda3

drive temperature:
Temp 22

How can I get it to print out in this format?

uptime:              10:46:23 up 0 min,

rsync daemon status: running

memory status:
MemAvailable:        211716 kB
MemFree:             228924 kB

filesystem status:   53% /dev/sda1
                     58% /dev/sda3

drive temperature:   Temp 22

Thanks in advance.

Best,

A.

Edit: spelling

#930 Re: Hardware & System Configuration » [SOLVED] sudoers file for 'service' » 2022-05-07 18:05:07

Hello:

Head_on_a_Stick wrote:

... completely off-topic for these boards ...
... your continued posting of OpenWRT-related issues on these boards is starting to look like spam.

Hmm ...
spam? 8^D !

merriamwebstwee.com wrote:

spam: noun
unsolicited usually commercial messages (such as emails, text messages, or Internet postings) sent to a large number of recipients or posted in a large number of places

Before I say anything else, I want to say this: I value your opinions, expertise and the help provided to me more than once.
But it seems to me that you are overreacting.

In doing so you are not being rude but much worse than that: you are out of place.
Please don't take my observation personally for it is not personal.

Bear in mind that although my questions do have a relationship to OpenWRT, you may want to consider that although it is not Devuan, both distributions share 1. that they are Linux and 2. they do not use systemd.

And most importantly, my questions are related to uses/tools which are common to both of them.

That said, I'll leave this for the Dev1 admins to opine on and will abide by whatever they decide on the matter.

-------
Edit:

In case you or anyone else is interested, I found a solution to the question with which I started this thread.
Using common Linux tools.

~$ sudo /etc/init.d/rsyncd status
running
~$

Added another line to /etc/profile.d/custom.sh: alias daemon="sudo /etc/init.d/rsyncd status"

And that was it.

~$ daemon
running
~$

The daemon alias will be part of a script which will run anytime I ssh into the NAS and provide me at a glance with basic stats I want to know when I check on it.
-------

Thank you for your input.

Best,

A.

#931 Re: Hardware & System Configuration » [SOLVED] sudoers file for 'service' » 2022-05-07 12:17:04

Hello:

Head_on_a_Stick wrote:

... will show a (colon-separated) list ...
... run that command from OpenWRT then it will probably not have /usr/sbin/ listed ...

But it does:

groucho@OpenWrt:~$ echo $PATH
/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin
groucho@OpenWrt:~$ 
Head_on_a_Stick wrote:

... ask on the OpenWRT forums instead.

I always look for answers in search engine/s, then here and then elsewhere. In that order.  8^ ) 
After all OpenWRT is just Linux in a very compact package to fit in embedded systems.

But you have to coax it to do regular Linux things, like adding users and sudoers.d files.
There's always something new to learn.

Head_on_a_Stick wrote:

... not think to try ...

Of course.

:~$ /usr/sbin/service rsyncd status
-ash: /usr/sbin/service: not found
:~$ 
:~# /usr/sbin/service rsyncd status
-ash: /usr/sbin/service: not found
:~# 

But ...

:~# service rsyncd status
running
:~# 

The thing is that the stanza service rsyncd status is not validated by visudo which needs to see a path.
I think this may be related to BusyBox.

Thanks a lot for your input.

Best,

A.

#932 Re: Hardware & System Configuration » [SOLVED] sudoers file for 'service' » 2022-05-07 01:22:55

Hello:

ralph.ronnquist wrote:

... you (again?)

Yes, always ...  8^D

ralph.ronnquist wrote:

... confused by groucho not having /usr/sbin in PATH (and not /sbin).

Hmm ...
I'm sorry, I think I am being confusing.

The example I show previously is how I run dmesg as sudo in both my main Devuan box and the NAS.
Both my main Devuan box and the NAS have only root and my user (groucho) so it does not matter much.
But you are right, got to fix that.

Now, in my Devuan box, I can find service:

[root@devuan ~]# which service
/usr/sbin/service
[root@devuan ~]# 

But not in my NAS:

root@OpenWrt:~# which service
root@OpenWrt:~# 
root@OpenWrt:~# /usr/bin/service
-ash: /usr/bin/service: not found
root@OpenWrt:~# 

That said, I have not been able to find an example of a sudoers file for this on the web.

Thanks for your input.

Best,

A.

#933 Hardware & System Configuration » [SOLVED] sudoers file for 'service' » 2022-05-06 23:01:23

Altoid
Replies: 6

Hello:

When I need to check the status of a service in a Linux box I use this command as root:

:~# service rsyncd status
running
:~# 

If I want to do this as a user instead of being root, I'd generate a specific sudoers file to add to /etc/sudoers.d.

Like this one I use to run dmesg:

:~$ sudo cat /etc/sudoers.d/user_dmesg
groucho ALL = NOPASSWD:/bin/dmesg 
:~$ 

This because I am convinced that the use of sudo, like a few other things in life, needs to be under check.

I'm at odds with it and can't find a way to get a users_service file that works.
I'd appreciate some help with that.

Thanks in advance,

A.

#934 Re: Hardware & System Configuration » [SOLVED] Backported package install with unmet dependency » 2022-05-03 13:40:45

Hello:

Head_on_a_Stick wrote:

Sorry, that should have been ...

No worries whatsoever, HoaS.  ;^ )

Thanks (again) for your input.

Best,

A.

#935 Re: Hardware & System Configuration » [SOLVED] Backported package install with unmet dependency » 2022-05-03 11:49:43

Hello:

alexkemp wrote:

... question of mixing amd64 & i386?

Really cannot say for sure.

What I can say is that ~$ apt list | grep installed | grep i386 shows me a list of 203 files.
ie: if I managed to count correctly at this hour.

Save these 10, all the rest are lib***:

~$ apt list | grep installed | grep i386 | more
elogind/oldstable,now 241.4-2 i386 [installed,automatic]
gcc-6-base/now 6.3.0-18+deb9u1 i386 [installed,local]
gcc-8-base/oldstable,now 8.3.0-6 i386 [installed,automatic]
gstreamer1.0-plugins-base/oldstable,oldstable-security,now 1.14.4-2+deb10u1 i386 [installed,automatic]
--- snip ---
mesa-va-drivers/oldstable,now 18.3.6-2+deb10u1 i386 [installed]
mesa-vdpau-drivers/oldstable,now 18.3.6-2+deb10u1 i386 [installed,automatic]
ocl-icd-libopencl1/oldstable,now 2.2.12-2 i386 [installed,automatic]
vdpau-driver-all/oldstable,now 1.1.1-10 i386 [installed,automatic]
wine32/oldstable,now 4.0-2 i386 [installed,automatic]
zlib1g/oldstable-security,now 1:1.2.11.dfsg-1+deb10u1 i386 [installed,automatic]
~$

Of the whole of them, 183 were installed,automatic while only 2 were installed,local.

~$ apt list | grep installed | grep i386 | grep local | more
gcc-6-base/now 6.3.0-18+deb9u1 i386 [installed,local]
libicu57/now 57.1-6+deb9u4 i386 [installed,local]
~$ 

This leaves 17 that are just [installed].
ie: not [automatic] or [local].

There's probably a way to see what pulled these i386 file in.
One application that comes to mind is wine.

Hope it clears up something.

Best,

A.

#936 Re: Hardware & System Configuration » [SOLVED] Backported package install with unmet dependency » 2022-05-03 07:58:57

Hello:

Head_on_a_Stick wrote:

Use apt install --target beowulf-backports rsync libzstd.

No, seems it would not work.

groucho@devuan:~$ sudo apt install --target beowulf-backports rsync libzstd
--- snip ---
E: Command line option --target is not understood in combination with the other options
groucho@devuan:~$ 

I use aptitude very little, usually with the why option.

Thanks for your input.

Best,

A.

#937 Re: Hardware & System Configuration » [SOLVED] Backported package install with unmet dependency » 2022-05-03 07:54:39

Hello:

ralph.ronnquist wrote:

Perhaps you'll need to upgrade the i386 version at the same time, by adding libzstd1:i386/beowulf-backports to the install line?

That would seem to do the trick:

groucho@devuan:~$ sudo apt install rsync/beowulf-backports libzstd1/beowulf-backports libzstd1:i386/beowulf-backports
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Selected version '3.2.3-3~bpo10+1' (Devuan Backports:3.0.0/oldstable-backports [amd64]) for 'rsync'
Selected version '1.4.4+dfsg-3~bpo10+1' (Devuan Backports:3.0.0/oldstable-backports [amd64]) for 'libzstd1'
Selected version '1.4.4+dfsg-3~bpo10+1' (Devuan Backports:3.0.0/oldstable-backports [i386]) for 'libzstd1:i386'
The following additional packages will be installed:
  libxxhash0
Suggested packages:
  openssh-server
The following NEW packages will be installed:
  libxxhash0
The following packages will be upgraded:
  libzstd1 libzstd1:i386 rsync      # <- what was needed  
3 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.    # <- nothing removed
Need to get 840 kB of archives.
After this operation, 41.0 kB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.
groucho@devuan:~$ 

I'll try that and report later.

Edit:
Minutes later ...

:~$ rsync -V
rsync  version 3.2.3  protocol version 31
Copyright (C) 1996-2020 by Andrew Tridgell, Wayne Davison, and others.
Web site: https://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, hardlink-specials, symlinks, IPv6, atimes,
    batchfiles, inplace, append, ACLs, xattrs, optional protect-args, iconv,
    symtimes, prealloc, stop-at, no crtimes
Optimizations:
    SIMD, asm, openssl-crypto
Checksum list:
    xxh64 (xxhash) md5 md4 none
Compress list:
    zstd lz4 zlibx zlib none
--- snip ---
:~$ 

Now the Devuan and OpenWRT versions of rsync match.

Thanks for your input.

Best,

A.

#938 Re: Hardware & System Configuration » [SOLVED] Backported package install with unmet dependency » 2022-05-03 01:05:37

Hello:

Altoid wrote:

Or am I missing something?

Just to check, I thought maybe it was a question of installing libzstd1 1.4.4+dfsg-3~bpo10+1 as libzstd1 1.3.8+dfsg-3+deb10u2 was already installed.
ie: for some reason not being updated and be specifically installed from beowulf-backports.

But when I tried I got this huge list of files that are no longer required/removed:

:~$ sudo apt install libzstd1/beowulf-backports
Reading package lists... Done
Building dependency tree       
Reading state information... Done

Selected version '1.4.4+dfsg-3~bpo10+1' (Devuan Backports:3.0.0/oldstable-backports [amd64]) for 'libzstd1'

The following packages were automatically installed and are no longer required:
gstreamer1.0-plugins-base:i386  libaom0:i386  libavresample4:i386  libavutil56:i386
libblkid1:i386  libcairo2:i386  libcapi20-3:i386  libcdparanoia0:i386  libcodec2-0.8.1:i386
libcroco3:i386  libcrystalhd3:i386  libdatrie1:i386  libexif12:i386  libfontconfig1:i386
libfreetype6:i386  libfribidi0:i386  libgcrypt20:i386  libglib2.0-0:i386  libgomp1:i386
libgpg-error0:i386  libgphoto2-port12:i386  libgpm2:i386  libgraphite2-3:i386  libgsm1:i386
libgstreamer-plugins-base1.0-0:i386  libgstreamer1.0-0:i386  libharfbuzz0b:i386  
libicu63:i386  libjack-jackd2-0:i386  libmount1:i386  libmp3lame0:i386  libncurses6:i386
libnuma1:i386  libopenjp2-7:i386  libopus0:i386  liborc-0.4-0:i386  libpango-1.0-0:i386  
libpangocairo-1.0-0:i386  libpangoft2-1.0-0:i386  libpixman-1-0:i386  libpng16-16:i386  
libsamplerate0:i386  libsdl2-2.0-0:i386  libshine3:i386  libsnappy1v5:i386  libsoxr0:i386
libspeex1:i386  libswresample3:i386  libthai0:i386  libtheora0:i386  libtwolame0:i386
libusb-1.0-0:i386  libv4l-0:i386  libv4lconvert0:i386  libva-drm2:i386  libva-x11-2:i386
libvdpau-va-gl1:i386  libvdpau1:i386  libvisual-0.4-0:i386  libvkd3d1:i386  libvpx5:i386 
libvulkan1:i386  libwavpack1:i386  libwayland-client0:i386  libwayland-cursor0:i386
libwayland-egl1:i386  libwebp6:i386  libwebpmux3:i386  libx264-155:i386  libx265-165:i386
libxcb-render0:i386  libxcb-shm0:i386  libxcomposite1:i386  libxcursor1:i386  libxinerama1:i386
libxkbcommon0:i386  libxml2:i386l  ibxpm4:i386  libxrandr2:i386  libxrender1:i386
libxslt1.1:i386  libxss1:i386  libxvidcore4:i386  libzvbi0:i386  mesa-vdpau-drivers:i386
ocl-icd-libopencl1:i386  vdpau-driver-all:i386

Use 'sudo apt autoremove' to remove them.

The following packages will be REMOVED:
libasound2-plugins:i386
libavcodec58:i386
libgd3:i386
libgdk-pixbuf2.0-0:i386
libgphoto2-6:i386
librsvg2-2:i386
librsvg2-common:i386
libtiff5:i386
libwine:i386
libzstd1:i386
wine32:i386

The following packages will be upgraded:
libzstd1
1 upgraded, 0 newly installed, 11 to remove and 0 not upgraded.

Need to get 249 kB of archives.
After this operation, 241 MB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.
:~$ 

The first thing I notice is that they are all :i386 but I'm not sure of the consequences.
What were they for in the first place?

I'd appreciate an opinion.

Thanks in advance.

Best,

A.

#939 Hardware & System Configuration » [SOLVED] Backported package install with unmet dependency » 2022-05-02 23:23:12

Altoid
Replies: 9

Hello:

My NAS running OpenWRT uses rsync version 3.2.3  protocol version 31 and my Devuan running with a backported kernel uses rsync version 3.1.3  protocol version 31.

beowulf-backports has rsync version 3.2.3-3~bpo10+1, which would be a match.

This is what I get when I try to install it:

:~$ sudo apt install rsync/beowulf-backports
Reading package lists... Done
Building dependency tree       
Reading state information... Done

Selected version '3.2.3-3~bpo10+1' (Devuan Backports:3.0.0/oldstable-backports [amd64]) for 'rsync'
Selected version '1.4.4+dfsg-3~bpo10+1' (Devuan Backports:3.0.0/oldstable-backports [amd64]) for 'libzstd1' because of 'rsync'

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

The following information may help to resolve the situation:
The following packages have unmet dependencies:
rsync : Depends: libzstd1 (>= 1.4.4+dfsg-3~bpo10+1) but 1.3.8+dfsg-3+deb10u2 is to be installed
E: Unable to correct problems, you have held broken packages.
:~$ 

So ...
Does this mean that I cannot install it because beowulf-backports has libzstd1 1.3.8+dfsg-3+deb10u2 and not 1.4.4+dfsg-3~bpo10+1?
Or am I missing something?

Thanks in advance.

Best,

A.

#940 Re: Hardware & System Configuration » [SOLVED] rsyncd - permission issue » 2022-05-01 02:16:56

Hello:

You were on the right track.
Just before dinner I was able to solve the problem via an answer to a post at Stack Exchange.

The problem was in the path for the module/s: it was missing the lowest level.

I had this:

[stuff]
--- snip ---
path = /mnt/sda3
--- snip ---

But it should have been this:

[stuff]
--- snip ---
path = /mnt/sda3/stuff
--- snip ---

ie: /mnt/sda3/stuff instead of /mnt/sda3

After I fixed it and rsync was working properly, I am getting a ~19MiB transfer rate.
It is not much to write about as this NAS would get 2x that with the original firmware, but ~2.5x what I was getting via ssh.

Thank you very much for your input.

Best,

A.

#941 Re: Hardware & System Configuration » [SOLVED] rsyncd - permission issue » 2022-04-30 16:59:54

Hello:

chris2be8 wrote:

First try ls -ld /stuff on groucho (I suspect you are trying to access a dir in the root directory). If it looks as if the ID should be able to write there then try touch /stuff/test1 as that ID to make sure.

I may be confusing you as my user groucho gets used everywhere.

My Devuan box:

groucho@devuan:~$ ls -ld /media/
drwxr-xr-x 8 root root 4096 Mar 16 16:38 /media/
groucho@devuan:~$ 

groucho@devuan:~$ ls -ld /media/stuff
drwxr-xr-x 25 groucho groucho 4096 Apr 28 07:32 /media/stuff
groucho@devuan:~$ 

groucho@devuan:~$ touch /media/stuff/test1 

groucho@devuan:~$ ls -ld /media/stuff/test1 
-rw-r--r-- 1 groucho groucho 0 Apr 30 13:42 /media/stuff/test1
groucho@devuan:~$ 

The NAS:

groucho@OpenWrt:~$ ls -ld /mnt/sda3
drwxr-xr-x    5 root     root          4096 Apr 28 17:53 /mnt/sda3
groucho@OpenWrt:~$

groucho@OpenWrt:~$ ls -ld /mnt/sda3/stuff
drwxrwxrwx    2 groucho  groucho       4096 Apr 29 18:47 /mnt/sda3/stuff
groucho@OpenWrt:~$

groucho@OpenWrt:~$ touch /mnt/sda3/stuff/test1

groucho@OpenWrt:~$ ls -ld /mnt/sda3/stuff/test1
-rw-r--r--    1 groucho  groucho          0 Apr 30 13:44 /mnt/sda3/stuff/test1
groucho@OpenWrt:~$ 
chris2be8 wrote:

... then try rsync -av /media/stuff/firefox.oldfile  rsync://groucho@192.168.1.3:stuff (assuming stuff is in your home dir on groucho).

No.
The /home/groucho dir on the NAS is very limited, just for admin use.
Actually, OpenWRT (mostly used in routers) by default only has root access, no users.

The /mnt/sda3/ partition (~1TB) is where everything gets sent.

root@OpenWrt:~# blkid
/dev/sda1: UUID="xxx" BLOCK_SIZE="1024" TYPE="ext2" PARTUUID="xxx"
/dev/sda2: LABEL="rootfs" UUID="yyy" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="yyy"
/dev/sda3: LABEL="data" UUID="zzz" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="zzz"
root@OpenWrt:~# 
root@OpenWrt:~# mount
--- snip ---
/dev/sda3 on /mnt/sda3 type ext4 (rw,relatime)
--- snip ---
root@OpenWrt:~# 

Thanks for your input.

Best,

A.

#942 Hardware & System Configuration » [SOLVED] rsyncd - permission issue » 2022-04-30 01:00:51

Altoid
Replies: 4

Hello:

I have discovered that the only way to get a half decent link between my Devuan box (GbE port) and my NAS (GbE port) is to use the rsync protocol.
ie: no compression/no encryption with a daemon ie: rsyncd running on one end.

Anyone curious about the details see Can a pocket router go fast?

The problem is that the now ubiquous ssh is only seen a half of what it is: very secure cryptographic network protocol.
What it really is (YMMV) is a very flexible, efficient and easy to use network protocol which also has the ability to be very secure.

Hence the difficulty of being able to use it without encryption.

But I digress.

After a lot of tinkering I have managed to set up an rsync daemon on the NAS as well as the modules required by what I want to do.

eg:

The user is member of the right groups:

:~$ groups
daemon adm mail ftp users network ntp groucho
:~$ 

The modules relate to the directories receiving the data are all owned by the user:

:/mnt/sda3$ ls -l
drwxrwxrwx    4 groucho  groucho       4096 Apr 25 19:03 bkups
drwxrwxrwx    2 groucho  groucho       4096 Apr 29 18:47 stuff
drwxrwxrwx    2 groucho  groucho       4096 Apr 28 17:53 testdir
:/mnt/sda3$ 

The directories from where the data is sent (Devuan box) are all owned by the user:

groucho@devuan:/media$ ls -l /media
total 24
drwxr-x---   2 groucho groucho 4096 Feb  9 19:46 300Gb
drwxr-x---   5 groucho groucho 4096 Jan 30 18:07 bkups
drwxr-x---+  2 root    root    4096 Apr 21 19:57 groucho
drwxr-xr-x   9 groucho groucho 4096 Apr 28 07:25 storage
drwxr-xr-x  25 groucho groucho 4096 Apr 28 07:32 stuff
groucho@devuan:/media$ 

The daemon is running:

:~# service rsyncd status
running
:~# 

The command line is, as far as I can see, correct:

groucho@devuan:~$ rsync -av /media/stuff/firefox.oldfile  rsync://groucho@192.168.1.3:/stuff

But, much to my chagrin, the result is not the expected one:

groucho@devuan:~$ rsync -av /media/stuff/firefox.oldfile  rsync://groucho@192.168.1.3:/stuff
sending incremental file list
firefox.oldfile
rsync: [receiver] mkstemp "/.firefox.oldfile.pPHKBp" (in stuff) failed: Permission denied (13)

sent 85,833,476 bytes  received 134 bytes   24,523,888.57 bytes/sec
total size is 85,812,416  speedup is 1.00
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1207) [sender=3.1.3]
groucho@devuan:~$ 

But not all is bad news:  24,523,888.57 bytes/sec is 3.5x what I was getting using the NAS's native dropbear application.

The /var/log/rsyncd.log file on the NAS reads:

groucho@OpenWrt:~$ cat /var/log/rsyncd.log
2022/04/29 21:35:42 [2557] connect from UNDETERMINED (192.168.1.2)
2022/04/29 21:35:42 [2557] rsync allowed access on module stuff from UNDETERMINED (192.168.1.2)
2022/04/30 00:35:42 [2557] rsync to stuff/ from UNDETERMINED (192.168.1.2)
2022/04/30 00:35:42 [2557] receiving file list
2022/04/30 00:35:42 [2557] rsync: [receiver] mkstemp "/.firefox.oldfile.lNbFmM" (in stuff) failed: Permission denied (13)
groucho@OpenWrt:~$ 

The connection is established, rsync is allowed access to the target folder but when rsync attempts to (having received the file) write a temporary copy at destination, for some reason it it fails and the link is cut

Funny that it does not do a premission check before actually sending the file.

In any case, this seems to be a premission issue, probably the most common one rsync can have.
But I have not been able to find a solution.

Could someone shed some light on this for me?

Thanks in advance.

Best,

A.

#943 Re: Other Issues » [SOLVED] rsync operation takes ages » 2022-04-27 11:53:51

Hello:

GlennW wrote:

... an old 4 port modem/routrer as a switch.

PedroReina wrote:

... a really good piece of advice.

Indeed ...
I had first looked into that option. (See updated post @2022-04-25 17:34:35)

Locally, a used (decent quality) Gb router would cost me a bit more than what I paid for a four/five port unmanaged Gb switch.   
So I got one of those. Plug everything up, power it and that's it. Just works.

It has a metal case and is unobstusive (100*98*25) so that once I threw it under the desk, I forgot all about it.
Slipped my mind and neglected to mention it in the post, maybe the old cache is acting up.

Sorry about that.

Thank you both for your input.

Best,

A.

#944 Re: Other Issues » [SOLVED] rsync operation takes ages » 2022-04-26 19:04:57

Hello:

Ahh ...

Thanks a lot for that. ;^ )
I'll have a look and see what I get from using that method.

Best,

A.

#945 Re: Other Issues » [SOLVED-PENDING] First time r-e-i-s-u-b didn't work » 2022-04-26 16:28:44

Hello:

Head_on_a_Stick wrote:

@OP: create a file at /etc/sysctl.d/reisub.conf ...

Yes.
Creating the file in my box made it work.

And yes, it did work before without the /etc/sysctl.d/reisub.conf file.

Now, how long ago was before, I have not had a chance to use it much, so I really can't say.

O.

#946 Re: Other Issues » [SOLVED] rsync operation takes ages » 2022-04-26 16:03:18

Hello:

Head_on_a_Stick wrote:

... can't actually disable encryption over ssh ...
... use a simple cipher like Blowfish ...

# rsync -e "ssh -o compression=no -c blowfish" -a -stats ~/media/bckups root@192.168.1.3:/mnt/sda3

I'm afraid that dropbear does not do blowfish.

~$ rsync -e "ssh -o compression=no -c blowfish" -a --stats /media/bckups root@192.168.1.3:/mnt/sda3
Unknown cipher type 'blowfish'
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(235) [sender=3.1.3]
~$ 

See: https://dropbear.nl/mirror/CHANGES

CBC ciphers, 3DES, hmac-sha1-96, and x11 forwarding are now disabled by default.
They can be set in localoptions.h if required.
Blowfish has been removed.

Head_on_a_Stick wrote:

... without encryption use rsh instead, as supplied by the rsh-client & rsh-server packages ...

Unfortunately, I have not found the rsh package in the OpenWRT repository so that's a dead end.

Looking around for similar situations, I found this:

https://www.glidk.com/2021/12/22/benchm … ppy-router

It's a post by a chap using a small travel router with a lower spec than the WD-MBL:

Brand/Name		WD-MBL		GL-AR750
CPU:			PowePC 44x     Qualcomm Atheros
Model:			APM82181	QCA9531
CPU Cores:		1		1
CPU MHz:		800		650       <----- #
Flash Mb:		512		16
RAM MB:			256		128       <----- #
BogoMIPS:		1600		432.53    <----- # 

It would seem that he achieved speeds using just the rsync protocol and bypassing ssh.
I don't undertand how he's set this up and cannot find how to contact the guy.

The WD-MBL, save for the HDD/SD card difference, seems to be much heftier.
Could I be able to get at least his 10.0Mb/s?

Can you make any sense of what he's done there?

Thanks in advance.

A.

#947 Re: Other Issues » [SOLVED] rsync operation takes ages » 2022-04-25 20:37:23

Hello:

thierrybo wrote:

... backup my desktop and nas with rclone ("rsync for the cloud") ...

Hmm ...
Sorry, I don't do anything cloudy and have no trust in that type of thing.
But that's just me, YMMV.

Notwithstanding, thank you very much for your input. ;^)

Best,

A.

#948 Re: Other Issues » [SOLVED] rsync operation takes ages » 2022-04-25 20:34:35

Hello:

Head_on_a_Stick wrote:

Disable encryption for rsync operations over ssh ...

Altoid wrote:

My box has an on-board 82566DM-2 Gigabit Network adapter.     
The WD My Book NAS has a Gigabit Ethernet port.

---

Altoid, several days later wrote:

Forgot to mention that at this point I purchased/installed a four/five port unmanaged Gb switch (TL-SG105).

---

Part of this problem had to do with the CAT5e cables I was using.
Found out when I used ethtool to check the on-board ethernet adapter on the NAS and saw it was reporting 100M:

root@OpenWrt:~# ethtool eth0
Settings for eth0:
--- snip ---
    Advertised auto-negotiation: Yes
    Advertised FEC modes: Not reported
    Speed: 100Mb/s    <-------------------------- #####
    Duplex: Full
--- snip ---
root@OpenWrt:~# 

With a set of new CAT5e cables and properly negotiating 1000Mb/s between my box and the NAS, I tested the link with iperf:

root@OpenWrt:~# iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:  128 KByte (default)
------------------------------------------------------------
[  4] local 192.168.1.3 port 5001 connected with 192.168.1.2 port 35408
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec   771 MBytes   645 Mbits/sec
root@OpenWrt:~# 
groucho@devuan:~$ iperf -c 192.168.1.3
------------------------------------------------------------
Client connecting to 192.168.1.3, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[  3] local 192.168.1.2 port 35408 connected with 192.168.1.3 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec   771 MBytes   646 Mbits/sec
pcl@devuan:~$ 

Good enough, I guess.

But I was expecting something like the 94Mb /s I get between the NAS and my netbook which has a 10/100 ethernet adapter.
ie: if with a 10/100 connection I can get 94% of 100M, I was expecting at least 85% from the box to NAS connection at 1000M - 850 Mbits /s instead of 645 Mbits /s.

I'm assuming it is proportional, it probably isn't.

I've just finished running the same rsync job that took over 18 hours (first time/empty destination) the last time I ran it ie: before switching all the patch cables for new CAT5e ones and as a result getting the iperf speeds reported above, 646 Mbits/sec

All through the job, my conky panel reported a speed of ~7.45MiB /s

    Incoming: 114KiB /s
    Outgoing: 7.46MiB /s

These were the NAS's CPU/Memory loads during the job:

PID   Owner  CPU   Mem    Process
 213  root    9%    0%    kswapd0
1904  root   67%    0%    Dropbear
1905  root    0%    7%    rsync  --server
1906  root   22%   13%    rsync  --server

My guess is that NAS's CPU is totally maxed out.
ie: just kswap 9% + dropbear 67% + rsync 22% =>>> 98%

dropbear is the SSH2 server/client included in OpenWRT installation image, only 82k.
Evidently, with this hardware* a 67% CPU load is rather expensive to run.

*Applied Micro APM82181 @800 MHz + 256 MB RAM

Head_on_a_Stick wrote:

... use rsh instead of ssh (but only do the latter on a local network ...

I don't really neeed encryption as it is all local traffic.
ie: going nowhere else but from a back-up drive inside my box to the NAS under my desk.

But I do need rsync.
I use ssh to login to the NAS, how do I disable encryption?

Have never used/heard of rsh, have to look it up.

Thank you very much for your input.

Best,

A.

#949 Re: Hardware & System Configuration » Log4j vulnerabilty - Yet again » 2022-04-25 13:59:36

Hello:

Head_on_a_Stick wrote:

... fixed the bug with patches that introduced more bugs?

Yes ...
Which would mean that maybe they really didn't fix anything.

ie: just made it worse.

Fortunately I was able to purge that from my box.

Best,

A.

#950 Re: Other Issues » [SOLVED] rsync operation takes ages » 2022-04-22 11:18:31

Hello:

PedroReina wrote:

... had been very similiar to yours ...

Probably with the same infamous Telefonica ADSL routers. 8^|

PedroReina wrote:

You are correct ...
... with 4 up to 16 ports.

Great.
But I have no need for more than 4 ports at the moment.
Unless I get a very good price for one with more.

Thanks a lot for for your input.

Best,

A.

Board footer

Forum Software