[gentoo-user] Choose a wireless access point
Is there a way force openrc and wpa_supplicant to map a particular access point to an interface or fail? I have two AP's (each on a different ssid) to connect to so have two wifi interfaces - unfortunately they are not equal so I want wlan0 to connect to only one particular AP, and wlan1 to the other ... reliably! I can manually force it to connect but invariably at the first glitch they both end up connected to the same AP (usually the strongest which is often not what I want :( BillK
Re: [gentoo-user] LVM and moving things around
On 03/04/2022 19:37, Frank Steinmetzger wrote: Am Sun, Apr 03, 2022 at 05:05:07PM +0100 schrieb Wol: Rsync has a bwlimit argument which helps here. Note that rsync copies the whole file on what it considers local storage (which can be mounted network shares) ... this can cause a real slowdown. It won't help on the initial copy, but look at the - I think it is - --in-place option. This one is mostly useful if space on the destination is tight or the data link (for FS commands) is slooow, because normally rsync creates a new temp file and moves it into place once the transfer is complete. And making a temporary file may be exactly what you DON'T want. I make heavy use of hard links, … which the -H option is for. and "make a temp file" absolutely buggers file system integrity ... Can you elaborate? A temp file is just like any other file. If you do in-place syncing, then it “buggers up” the original file instead of a temp. "Make a temp file" breaks hard links. My file system is full of them, and keeping track of hard links can easily bring a system to its knees (it brought a previous system of mine to its knees :-) And my use case with LVM and backups, "make a temp file" does both absolutely nothing to protect file system integrity I was not actually talking about file *system* integrity, but that if you overwrite in-place and the connection is lost during transfer, you are left with an incomplete file. Hence you just lost data on the destination. The FS itself is not adversely affected by that, only the file. If the link is lost (unlikely on my system where both drives are on the same system) you just start again ... and you haven't actually lost any data, you've just got a corrupt copy to recover. and makes every backup waste far more space than is necessary ... How so? If it’s a COW filesystem, I can understand it (insofar as if you do in-place, then the existing file is deleted first, which gives the FS more space for the new copy). An LVM snapshot *IS* a COW filesystem. And no, --in-place doesn't delete the original, it just overwrites the bits that have changed. So my backups, all the identical data is de-duplicated. I have two separate filesystems I can mount, each of which is a full backup, but they only take up disk space for "one and a bit". So --in-place actually has a lot of uses outside your two examples. I have oodles of space, and both my source and target are on fast sata links in the same computer, but not using --in-place would be *very* costly for me. Well I admit I don’t know much outside of my realm of local disks with ext4, zfs and ssh. While I do run LVM on my laptop, it’s just so that I can have “partitions” on an otherwise fully encrypted block device. I never used any of its more fancy features. Read up on it. Especially if you're running linux, snapshotting root is a very good idea. I always snapshot root on a friday evening then do my emerge, and while it's never happened, if it all goes pear-shaped I can mount my backup and go back to where I was. And if you're doing anything at all dangerous, snapshotting will protect your "pre" state. (I only know how to make a snapshot, I've never really investigated rolling back, but it's nice knowing it's an option :-) Cheers, Wol
Re: [gentoo-user] LVM and moving things around
Am Sun, Apr 03, 2022 at 05:05:07PM +0100 schrieb Wol: > > > > Rsync has a bwlimit argument which helps here. Note that rsync copies > > > > the whole file on what it considers local storage (which can be mounted > > > > network shares) ... this can cause a real slowdown. > > > It won't help on the initial copy, but look at the - I think it is - > > > --in-place option. > > > This one is mostly useful if space on the destination is tight or the data > > link (for FS commands) is slooow, because normally rsync creates a new temp > > file and moves it into place once the transfer is complete. > And making a temporary file may be exactly what you DON'T want. I make heavy > use of hard links, … which the -H option is for. > and "make a temp file" absolutely buggers file system integrity ... Can you elaborate? A temp file is just like any other file. If you do in-place syncing, then it “buggers up” the original file instead of a temp. > And my use case with LVM and backups, "make a temp file" does both > absolutely nothing to protect file system integrity I was not actually talking about file *system* integrity, but that if you overwrite in-place and the connection is lost during transfer, you are left with an incomplete file. Hence you just lost data on the destination. The FS itself is not adversely affected by that, only the file. > and makes every backup waste far more space than is necessary ... How so? If it’s a COW filesystem, I can understand it (insofar as if you do in-place, then the existing file is deleted first, which gives the FS more space for the new copy). > So --in-place actually has a lot of uses outside your two examples. I have > oodles of space, and both my source and target are on fast sata links in the > same computer, but not using --in-place would be *very* costly for me. Well I admit I don’t know much outside of my realm of local disks with ext4, zfs and ssh. While I do run LVM on my laptop, it’s just so that I can have “partitions” on an otherwise fully encrypted block device. I never used any of its more fancy features. -- Grüße | Greetings | Salut | Qapla’ Please do not share anything from, with or about me on any social network. Grammar: the difference between knowing your shit and knowing you’re shit. signature.asc Description: PGP signature
Re: [gentoo-user] "sys-libs/glibc[crypt(+)]" is soft blocking sys-libs/libxcrypt
On Sun, 3 Apr 2022 19:07:30 +0200, Arve Barsnes wrote: > > > This file is for setting or unsetting USE flags on a package. > > > To "mask the system USE flag" on libxcrypt you would put this in > > > /etc/portage/package.use.mask: > > > sys-libs/libxcrypt system > > > > Shouldn't that be /etc/portage/profile/package.use.mask? > > > > > I guess so. I've never used it, but refer to the portage man page to > confirm. I did - before posting and making a fool of myself ;-) -- Neil Bothwick Power corrupts. Absolute power is kind of neat. pgpInBzgkmeum.pgp Description: OpenPGP digital signature
Re: [gentoo-user] Re: Java wants cups?
On Sun, 3 Apr 2022 at 18:43, Matthias Hanft wrote: > And jdk-11 seems to need just openjdk (and not icedtea any more). > > This is because icedtea doesn't exist for java 11 (at least in portage). If you don't need it for anything in particular, I would go with your initial thought to just mask >=virtual/jdk-11 and see if you can get away with it, it might just have been installed because it has been keyworded for you lately. Regards, Arve
Re: [gentoo-user] "sys-libs/glibc[crypt(+)]" is soft blocking sys-libs/libxcrypt
On Sun, 3 Apr 2022 at 15:34, Neil Bothwick wrote: > On Sun, 3 Apr 2022 15:12:36 +0200, Arve Barsnes wrote: > > > This file is for setting or unsetting USE flags on a package. > > To "mask the system USE flag" on libxcrypt you would put this in > > /etc/portage/package.use.mask: > > sys-libs/libxcrypt system > > Shouldn't that be /etc/portage/profile/package.use.mask? > > I guess so. I've never used it, but refer to the portage man page to confirm. Cheers, Arve
Re: [gentoo-user] Re: Java wants cups?
Martin Vaeth wrote: > > I guess that virtual/jdk prefers the non-binary package, and apparently > portage is not able to resolve the conflict automatically by letting the > binary package satisfy the dependency. If you manually install openjdk-bin, > the problem is probably resolved. Ahhh... yes, that's the point. It's a very, very old 32-bit system, and there is no "x86" (and not even "~x86") openjdk-bin package. On my other (64-bit) system, openjdk-bin was apparently automatically installed, and virtual/jdk-11 was installed without cups, too. So the 32-bit system falls back auf openjdk (without -bin) which needs cups at build time. icedtea-bin does exist for "x86", so cups for build time was not necessary. And jdk-11 seems to need just openjdk (and not icedtea any more). Well, I can't change the system from 32 to 64 bit just quickly (it's my mail server, my web server, even my online shop...). For the time being, I'll try to enable cups selectively for single packages where it's absolutely needed - and in the long-term, I guess I'll have to construct a second server with 64-bit in parallel where I can switch to later when everything is working. Thanks for your analysis! -Matt
Re: [gentoo-user] LVM and moving things around
On 03/04/2022 16:29, Frank Steinmetzger wrote: Am Sun, Apr 03, 2022 at 09:59:22AM +0100 schrieb Wols Lists: On 03/04/2022 02:15, Bill Kenworthy wrote: Rsync has a bwlimit argument which helps here. Note that rsync copies the whole file on what it considers local storage (which can be mounted network shares) ... this can cause a real slowdown. It won't help on the initial copy, but look at the - I think it is - --in-place option. This one is mostly useful if space on the destination is tight or the data link (for FS commands) is slooow, because normally rsync creates a new temp file and moves it into place once the transfer is complete. This to ensure you never lose data due to a broken connection. If space is tight you could also consider --delete-before instead, to first do all deletions before copying the new stuff. And making a temporary file may be exactly what you DON'T want. I make heavy use of hard links, and "make a temp file" absolutely buggers file system integrity ... And my use case with LVM and backups, "make a temp file" does both absolutely nothing to protect file system integrity, and makes every backup waste far more space than is necessary ... So --in-place actually has a lot of uses outside your two examples. I have oodles of space, and both my source and target are on fast sata links in the same computer, but not using --in-place would be *very* costly for me. Cheers, Wol
Re: [gentoo-user] LVM and moving things around
Am Sun, Apr 03, 2022 at 09:59:22AM +0100 schrieb Wols Lists: > On 03/04/2022 02:15, Bill Kenworthy wrote: > > Rsync has a bwlimit argument which helps here. Note that rsync copies > > the whole file on what it considers local storage (which can be mounted > > network shares) ... this can cause a real slowdown. > > It won't help on the initial copy, but look at the - I think it is - > --in-place option. This one is mostly useful if space on the destination is tight or the data link (for FS commands) is slooow, because normally rsync creates a new temp file and moves it into place once the transfer is complete. This to ensure you never lose data due to a broken connection. If space is tight you could also consider --delete-before instead, to first do all deletions before copying the new stuff. > It won't help with the "read and compare", but it only writes what has > changed, so if a big file has changed slightly, it'll stop it re-copying the > whole file. I think you mean the -c (or --checksum) option, which causes rsync to read the source and destination file (if both exist) in order to determine whether the source has changed. In normal use cases, this should not be necessary, as the file’s metadata (timestamps, permissions, inode numbers) are enough for that. As long as you don’t use -c, rsync is very quick at finding changed files. My standard command is rsync -ai --delete, wich does what most people™ need (-a/--archive means to copy all time stamps, permissions and owner, and -i shows what rsync does and why it does it). In some special cases, I include -x to not cross file systems (like when archiving /), or -H for hard links. I don’t deliberately use extended attributes, for which -X is your friend. -- Grüße | Greetings | Salut | Qapla’ Please do not share anything from, with or about me on any social network. “Don’t put multiple statements on a single line unless you have something to hide.” – Linus Torvalds, Linux kernel coding style documentation signature.asc Description: PGP signature
Re: [gentoo-user] LVM and moving things around
On Sun, Apr 3, 2022 at 4:59 AM Wols Lists wrote: > > On 03/04/2022 02:15, Bill Kenworthy wrote: > > Rsync has a bwlimit argument which helps here. Note that rsync copies > > the whole file on what it considers local storage (which can be mounted > > network shares) ... this can cause a real slowdown. > > It won't help on the initial copy, but look at the - I think it is - > --in-place option. > > It won't help with the "read and compare", but it only writes what has > changed, so if a big file has changed slightly, it'll stop it re-copying > the whole file. You might also try ionice - though I find that is hit and miss for effectiveness once you start adding layers like lvm/mdadm/etc as I don't know that the kernel actually sees all the downstream queues when it is throttling processes. I haven't used it on LVM in a while though. Replication performance (especially if you want to do a second pass with rsync) is the sort of thing that using pvmove/etc helps with - since it will ensure nothing gets moved. Snapshot-supporting filesystems like zfs/btrfs are also better if you want to sync things up because they can rapidly identify all the changes between two snapshots without having to actually read anything but metadata, assuming you manage things correctly and maintain a common baseline between them. Of course all of those options require that they be set up in advance. If you just have two generic filesystems and want to sync them, then rsync is your main option. Oh, one thing I would suggest is that if they're on different hosts you actually run rsyncd or do the sync over ssh so that rsync recognizes the situation and will run the client on the remote host, so that all the hashing/etc is run local to the drives. This greatly reduces your network traffic which is likely to be the bottleneck. All the same, if you want to actually use hashes to find differences and not just rely on size/mtime there is no getting around having to read all the data off the disk. -- Rich
Re: [gentoo-user] systemd DNS does not resolve 'local' addresses
On Sun, Apr 3, 2022 at 4:25 AM Alexander Puchmayr wrote: > > wasn't systemd per se, it was an update of /etc/nsswitch.conf. The old version > had > > Hosts: mymachines files myhostname dns > > while the new version contains > > Hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns > > The extra "resolve [!UNAVAIL=return]" makes the difference. It loads the > glibc's plugin nss-resolve [1], which then calls systemd-resolved [2], which > interprets '.local' as mDNS address. The mDNS is not activated on purpose, it > seems to be some default setting of the router which does not appear in the > configuration pages (or I didn't find it). So, the nsswitch file does direct glibc to use the systemd resolve library, but it is resolved that is using mDNS. Did you check your resolved.conf? Does it have MulticastDNS=no set? If it isn't explicitly set you'd probably need to check the build-time options for what the defaults are these days. I don't see how your router would impact this. You don't even need DHCP/DNS at all to use mDNS, as long as the hosts implement mDNS and link-local autoconfig. (Those are addresses in the range 169.254.0.0/16 and fe80::/10. Many OSes support this at this point by default.) In any case, disabling resolved would certainly solve the issue, but if you want to still use it you can fine-tune the mDNS settings on it. -- Rich
Re: [gentoo-user] "sys-libs/glibc[crypt(+)]" is soft blocking sys-libs/libxcrypt
On Sun, 3 Apr 2022 15:12:36 +0200, Arve Barsnes wrote: > This file is for setting or unsetting USE flags on a package. > To "mask the system USE flag" on libxcrypt you would put this in > /etc/portage/package.use.mask: > sys-libs/libxcrypt system Shouldn't that be /etc/portage/profile/package.use.mask? -- Neil Bothwick Tact is for people who don't understand sarcasm. pgpIkkfxdcIjV.pgp Description: OpenPGP digital signature
Re: [gentoo-user] "sys-libs/glibc[crypt(+)]" is soft blocking sys-libs/libxcrypt
On Sun, 3 Apr 2022 at 11:54, n952162 wrote: > I'm not really clear on masking. > > 1. My /etc/portage/package.accept_keywords has no mention of glibc, so I think there's nothing to unmask. This file is for adding or removing keywords from packages (like amd64 or ~amd64). To "unmask and enable the crypt USE flag of sys-libs/glibc" you would put this in /etc/portage/package.use.mask: sys-libs/glibc -crypt > 2. "mask the system USE flag"? USE flags go into /etc/portage/package.use, correct? Is that "mask" an inexact expression? Anyway, a "system" USE flag? This file is for setting or unsetting USE flags on a package. To "mask the system USE flag" on libxcrypt you would put this in /etc/portage/package.use.mask: sys-libs/libxcrypt system > 3. "mask >=virtual/libcrypt-2" > Like, ">=virtual/libcrypt-2" into /etc/portage/package.accept_keywords, just like that? To mask a package, you put it in /etc/portage/package.mask. Exactly as you write it here, but in a different file. > 4. But virtual/libcrypt:0/1 is not masked (to my knowledge). It is masked here. To unmask it, you could in /etc/portage/package.unmask put something like this: =virtual/libcrypt-1-r1 Regards, Arve
[gentoo-user] Re: Java wants cups?
Matthias Hanft wrote: > > Meanwhile I have found out that the culprit is "virtual/jdk". No, the “culprit” is that you do not use the binary package openjdk and you did apparently in the case of icedtea. Icedtea and openjdk both have cups as a USE-flag, but this influences only the runtime dependency. For building, icedtea and openjdk both need cups. If you install the binary package (icedtea-bin or openjdk-bin), there is no building. I guess that virtual/jdk prefers the non-binary package, and apparently portage is not able to resolve the conflict automatically by letting the binary package satisfy the dependency. If you manually install openjdk-bin, the problem is probably resolved. Be aware to install openjdk-bin:11 and not the meanwhile stable openjdk-bin:17 which does not resolve the virtual/jdk:11 dependency.
Re: [gentoo-user] Java wants cups?
Michael wrote: > > Did you try running emerge with '--tree' to see the dependency tree with all > its dependencies? (The option '--deep' may show more dependencies too). Meanwhile I have found out that the culprit is "virtual/jdk". I have 1.8.0-r6 installed, and emerge wants to upgrade to 11-r2 (strange versioning, isn't it?). Apparently, I have neither "openjdk" nor "openjdk-bin" installed, but "icedtea- bin". Upgrading virtual/jdk to 11 seems to insist on some openjdk... "equery g virtual/jdk" says for the two versions in question: * dependency graph for virtual/jdk-1.8.0-r6 `-- virtual/jdk-1.8.0-r6 x86 `-- dev-java/openjdk-bin-8.322_p06 (dev-java/openjdk-bin) [missing keyword] [headless-awt=] `-- dev-java/openjdk-8.322_p06 (dev-java/openjdk) x86 [headless-awt=] `-- dev-java/icedtea-bin-3.16.0 (dev-java/icedtea-bin) x86 [headless-awt=] `-- dev-java/icedtea-3.21.0 (dev-java/icedtea) [~x86 keyword] [headless-awt=] [ virtual/jdk-1.8.0-r6 stats: packages (5), max depth (1) ] * dependency graph for virtual/jdk-11-r2 `-- virtual/jdk-11-r2 M[package.mask] `-- dev-java/openjdk-bin-11.0.14_p9-r1 (dev-java/openjdk-bin) [missing keyword] [gentoo-vm(+) headless-awt=] `-- dev-java/openjdk-11.0.14_p9-r1 (dev-java/openjdk) x86 [gentoo-vm(+) headless-awt=] [ virtual/jdk-11-r2 stats: packages (3), max depth (1) ] so it seems that virtual/jdk 11 can't/doesn't want to use icedtea-bin and needs openjdk[-bin] which requires cups in any case... Do I need virtual/jdk at all? I don't even develop Java software - all I need is some Java runtime which I can call from the command line by "java -jar blabla.jar". For the moment, I have masked >=virtual/jdk-10 -Matt
Re: [gentoo-user] "sys-libs/glibc[crypt(+)]" is soft blocking sys-libs/libxcrypt
On 4/3/22 10:27, Alexander Puchmayr wrote: Am Sonntag, 3. April 2022, 10:23:25 CEST schrieb n952162: My emerge fails due to a collision with xorg-server and glibc. How can I find out where the problem is, actually? Output attached. Did you have a look at https://www.gentoo.org/support/news-items/2021-10-18-libxcrypt-migration-stable.html Alex Thank you, yes, I forgot to check that. I put in --ignore-built-slot-operator-deps=y The conflict is gone but now I have a circular dependency. Recommended steps: * unmask and enable the crypt USE flag of sys-libs/glibc * mask the system USE flag of sys-libs/libxcrypt * mask >=virtual/libcrypt-2 * unmask virtual/libcrypt:0/1 I'm not really clear on masking. 1. My /etc/portage/package.accept_keywords has no mention of glibc, so I think there's nothing to unmask. 2. "mask the system USE flag"? USE flags go into /etc/portage/package.use, correct? Is that "mask" an inexact expression? Anyway, a "system" USE flag? $ equery uses sys-libs/libxcrypt python-exec: Invalid impl in /etc/python-exec/python-exec.conf: python3.7 [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for sys-libs/libxcrypt-4.4.27: U I + - abi_x86_32 : 32-bit (x86) libraries - - static-libs : Build static versions of dynamic libraries as well - - test : Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently) 3. "mask >=virtual/libcrypt-2" Like, ">=virtual/libcrypt-2" into /etc/portage/package.accept_keywords, just like that? 4. But virtual/libcrypt:0/1 is not masked (to my knowledge).
Re: [gentoo-user] LVM and moving things around
On 03/04/2022 02:15, Bill Kenworthy wrote: Rsync has a bwlimit argument which helps here. Note that rsync copies the whole file on what it considers local storage (which can be mounted network shares) ... this can cause a real slowdown. It won't help on the initial copy, but look at the - I think it is - --in-place option. It won't help with the "read and compare", but it only writes what has changed, so if a big file has changed slightly, it'll stop it re-copying the whole file. Cheers, Wol
Re: [gentoo-user] "sys-libs/glibc[crypt(+)]" is soft blocking sys-libs/libxcrypt
Am Sonntag, 3. April 2022, 10:23:25 CEST schrieb n952162: > My emerge fails due to a collision with xorg-server and glibc. How can I > find out where the problem is, actually? > > Output attached. Did you have a look at https://www.gentoo.org/support/news-items/2021-10-18-libxcrypt-migration-stable.html Alex
Re: [gentoo-user] systemd DNS does not resolve 'local' addresses
Thanks for the hint with mDNS, I wasn't aware of that. I'm using the '.local' domain for all my machines for more than 15 years now, longer than mDNS exists, but finally, after some research I found the problem, and actually it wasn't systemd per se, it was an update of /etc/nsswitch.conf. The old version had Hosts: mymachines files myhostname dns while the new version contains Hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns The extra "resolve [!UNAVAIL=return]" makes the difference. It loads the glibc's plugin nss-resolve [1], which then calls systemd-resolved [2], which interprets '.local' as mDNS address. The mDNS is not activated on purpose, it seems to be some default setting of the router which does not appear in the configuration pages (or I didn't find it). Anyway, there are some ways to solve this: 1) create an entry in /etc/hosts on every machine. Contradicts the idea of DNS, but works 2) keep the old setting in nsswich.conf (without "resolve ...") 3) change my "own" TLD from .local to something else, like .home, as suggested in [3] I think as long term strategy option 3 would be the best. Regards Alex [1] https://www.freedesktop.org/software/systemd/man/nss-resolve.html [2] https://www.freedesktop.org/software/systemd/man/systemd-resolved.html# [3] https://www.rfc-editor.org/rfc/rfc6762#appendix-G Am Samstag, 2. April 2022, 23:48:06 CEST schrieb Rich Freeman: > On Sat, Apr 2, 2022 at 5:22 PM Alexander Puchmayr > > wrote: > > ## portage.local maps to 192.168.1.6 > > ## DNS-Server provided via DHCP is 192.168.1.1 (openwrt-router) > > > > buildhost-desktop ~ # ping portage.local > > ping: portage.local: Temporary failure in name resolution > > > >Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported > > So, I haven't really used resolved much, but I see you have mDNS > enabled. Does the portage.local host broadcast itself using mDNS? If > it is running Gentoo then the answer is no unless you have it running > avahi, which is usually not installed by default. Many > desktop-oriented linux distros provide avahi by default. > > A resolver that supports mDNS will not use DNS to resolve the .local > TLD, in accordance with RFC 6762. > > If you intend to use .local for DNS and not mDNS then you probably do > not want mDNS enabled. You can either disable it for resolved > globally by setting MulticastDNS=no in the [Resolve] section of > /etc/systemd/resolved.conf, or by disabling it for a specific network > in your network manager (the setting has the same name for > systemd-networkd). > > This is one of those reasons why it is best to not use the .local TLD > for DNS on your home network. You can disable it on systemd-resolved, > but some IoT device in your home might have it permanently enabled. > It allows a form of name resolution to work without any DNS server as > devices discover and broadcast on their own.