> i dont see vmx causing kernel crashes for me. > however, i think the author meant to express is lack > of confidence in the air-tightiness of vmx giving > the zillions of architectual registers you have to > setup to contain a guest. it is easy to forget > to set some bit and everything works until someone > manages to exploit that. and not like any competitor has any great solution to that either. the hardware just never was built for such strong isolation to meaningfully prevent that kind of exploit. and if it did, there would still always be other side-channels. just less obvious ones (from today's pov). in terms of stability, my slowlaris hypervisor (their own vmx plus qemu) has finally reached some limit, which destroyed the guest kernel's interpretation of time, which created some centuries of timeshifting, waits don't fire any more, and suddenly i have 1000s days of uptime bec. it's like a hundred years later now. forced me to destroy this virtual computer and thus reboot the guest. :D stuff breaks. everywhere. vmx is small, so actually it might break less in some edge-cases. but yes, virtualization is one more layer, and the interfaces, drivers, aren't as minimal as they could be, so virtualization still sucks. even with all these hw optimizations now. still a neat hack, i guess if you want to implement multi-core vmx, a lot of firefox on vmx on plan9 users will be happy. otherwise, what do we need that needs multiple cores in a vm? ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tc08115552282a0a2-M62c7b76e5e8a766d7ecc601d Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
for the kernel part, a devvmx vm *IS* a core basically and the physical memory that core sees is passed as a segment to the device. so having multiple cpu support should be fine without having even to change the kernel part, you just have multiple vmx instances share a memory segment. however, to be practical, you'd need to add emulation code for the apic interrupt controller as well provide acpi or mp tables... reason is a core is started with a inter processor interrupt thru the apic. the kernel discoveres the apics thru eigther MP tables or ACPI tables. and the processor comes up in real-mode, which might have some limitations in what hardware will emulate for us so a interpreter might be needed. (tho i'm not fully sure on this) (note, right now vmx has no BIOS and it implements each OS bootloader itself so it starts executing the kernel in 32 bit mode directly). i dont see vmx causing kernel crashes for me. however, i think the author meant to express is lack of confidence in the air-tightiness of vmx giving the zillions of architectual registers you have to setup to contain a guest. it is easy to forget to set some bit and everything works until someone manages to exploit that. patches welcome. -- cinap ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tc08115552282a0a2-M6ac623797c50743cf9de92ad Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #1: Type: text/plain, Size: 654 bytes --] In the man pages for VMX, it states under "bugs": Currently only one core is supported. Does anyone know why this is? The inclusion of this under "bugs" alongside the tendency to crash the kernel makes me think that VMX was originally intended to be able to leverage multiple cores and the author only got it "mostly working". Is there any documentation around what direction was going to be taken with this? ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tc08115552282a0a2-M5172ccb429ebabb05ba2e9b6 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription [-- Attachment #2: Type: text/html, Size: 1691 bytes --]
[-- Attachment #1: Type: text/plain, Size: 341 bytes --] Sorry, dropped the links. [0] https://github.com/euclaise/w2c9/ [1] https://github.com/SlashScreen/ricket ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tc92420e9a897ad5a-M86bc494d6d6f4e73b1cf63d9 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription [-- Attachment #2: Type: text/html, Size: 1063 bytes --]
[-- Attachment #1: Type: text/plain, Size: 807 bytes --] Some folks have attempted to use WASM not too long ago and had some moderate success. If I recall correctly there were two independent projects. One started a fork of w2c2[0], another tried using a go interpreter[1]. I think it is _a_ way of going about doing cross-compilation from more complex ecosystems, I think the w2c2 fork was capable of running a rust binary compiled to wasm. I personally might think effort may be better spent elsewhere. Thanks, moody (I had to input this via the web interface, emails from my client were getting dropped seemingly) ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tc92420e9a897ad5a-M83b4b929445a93cbae999034 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription [-- Attachment #2: Type: text/html, Size: 1452 bytes --]
[-- Attachment #1: Type: text/plain, Size: 601 bytes --] Some of you may have noticed that the original deadline for the camera-readycopy of papers and the WiP reports is today. The committee has decidedto extend that deadline by one week. So anyone for whom the edits haveslid to the back burner, you've got a reprieve. After the new deadline onthe 20th, we'll work on putting the online proceedings together. Thanks,BLS ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T6f56828c4f9d22bd-Mfea55b6d44f429aff88ba6b0 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription [-- Attachment #2: Type: text/html, Size: 1588 bytes --]
[-- Attachment #1: Type: text/plain, Size: 567 bytes --] Has anyone experimented with Web Assembly and Plan 9? I specifically am curious about compiling Inferno to WASM because it can run in a very small amount of RAM, but if anyone has experimented with any of the other Plan 9 variants, I'm curious about that too. C is supposed to be one of the earliest languages targeted by the WASM folks. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tc92420e9a897ad5a-M58d7f908a3fea6485f7f93bd Delivery options: https://9fans.topicbox.com/groups/9fans/subscription [-- Attachment #2: Type: text/html, Size: 1069 bytes --]
Hello, as some of you might have noticed already, 9p.zone is basically dead. To be more precise, we lost the domain and will start shutting down servers soon. We're still figuring out what to keep (and how). In the meantime, the deepest core of 9p.zone - the chat - is available at chat.only9fans.com, and it'll probably stay there. sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T1c23ad37a2cc978d-M8dd074d6a9a59c9f482ae9bd Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
sirjofri <sirjofri+ml-9fans@sirjofri.de> writes: > 06.03.2024 11:36:39 Edouard Klein <edou@rdklein.fr>: > ... >> >> I'll try to compile it on Linux and will let you know :) > > Well, it's designed for plan 9 systems, so you're probably out of luck on linux, except you try it with plan9ports. > That was the plan. > While we're talking about finger, I wrote some simple android app called > "FingerList" some time ago (on F-droid). It displays a list of fingers in a list > format, it's intended for micro social networking with status pages and whatever > people want to use it for. > Installed :) Thanks ! > sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-M6b41561a554e0d062d2d2a24 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
06.03.2024 11:36:39 Edouard Klein <edou@rdklein.fr>: > > sirjofri <sirjofri+ml-9fans@sirjofri.de> writes: > >> Hi, >> >> 05.03.2024 22:38:59 Edouard Klein <edou@rdklein.fr>: >> >>> Hi, >>> >>> Thank you for your answer. >>> >>> >>> sirjofri <sirjofri+ml-9fans@sirjofri.de> writes: >>> >>>> Hello, >>>> >>>> I don't use /rc/bin/service anymore, but I use /cfg/machinename/service instead. My contents are copies of what's in /rc/bin/service or my own scripts: >>> >>> I assume that you then bind-mount /cfg/machinename/service to that >>> machine's /rc/bin/service ? >> >> Nope, because bind would only change my own namespace (or I have to bind it becore aux/listen starts). >> >> In fact, it's much easier. I don't know if it's a 9front feature or if it's also >> in plan 9, but if there is a /cfg/$sysname/service directory it will use that >> instead of /rc/bin/service (see the cpurc file, >> https://git.9front.org/plan9front/plan9front/36478171be59721dcc5252043fe2955cb37fc9b3/rc/bin/cpurc/f.html >> ). >> > Thanks, I had missed it because there is no /cfg in the source. Do you > happen to know how the /cfg dir is first populated during install ? Is > it all hand-written by the user ? I think it is all hand-written, yes. Take a look at cpurc and what the options are. Most notably, the service directory, cpustart, and the plan9.ini file for tftp booting (iirc, I never tried it). >> If you think about how plan 9 should run on a network, imagine a single fs with >> many cpu servers all using the same fs. All the configuration is on the fs, and >> the service directories are in the /cfg/machinename/service. The cpu servers >> will run their individual configuration automatically using that mechanism. It >> just makes sense. >> > > Indeed it does. > >>>> >>>> tcp80 - web server >>>> tcp443 - web server but wrapped in tls >>>> ... >>>> >>>> I have some cifd running, some irc server that translates to grid chat, my mail >>>> server (smtp and imap4), and fingerd, the files follow the usual scheme tcpXXX. >>>> I probably missed one service or the other, but aux/listen is simple enough to >>>> set up custom servers with arbitrary functionality. >>>> >>> >>> Would you mind sharing your fingerd and irc server ? For finger my plan >>> is to turn this one: >>> https://github.com/michael-lazar/finger2020/blob/master/finger2020 into >>> a multi-user version, but if there already is one I won't bother. >> >> Sure, here it is: >> >> https://shithub.us/sirjofri/fingerd/HEAD/info.html >> >> Note that I got some notice of potential .. path issues and I'm not sure if I >> fixed that, but just in case, you might want to fix that (and maybe send me a >> patch). Fix could be as easy as a newns or what it is in C. >> > > I'll try to compile it on Linux and will let you know :) Well, it's designed for plan 9 systems, so you're probably out of luck on linux, except you try it with plan9ports. While we're talking about finger, I wrote some simple android app called "FingerList" some time ago (on F-droid). It displays a list of fingers in a list format, it's intended for micro social networking with status pages and whatever people want to use it for. sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-M36dbf7b9e2efc3a83ba11e15 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
a@9srv.net writes: > I wonder what percentage of people who reply are going to be running a finger server they wrote. :-) My tcp79 comes from my implementation, here: > http://txtpunk.com/finger/index.html > > I think we've got enough interoperable unicode-aware implementations we can start working on the update to the RFC now. > > I have a service which allows some unix hosts I run to submit vac scores after they perform a backup to my venti; a slightly outdated version is here: > https://9p.io/sources/contrib/anothy/bin/rc/tcp17038 > > tcp411 calls pqsrv, I think the same version as on the "extra" page: http://9p.io/sources/extra/ > > I usually have at least one "poor man's nat traversal" thing running with aux/trampoline. > > I love how easy aux/listen makes sticking trivial little services up on the net. I used to have one that provided a menu of MUDs to connect to. Another gave the weather, as the telnet > service at Weather Underground started to go unmaintained (of course, mine used darksky, which is now also defunct). I forgot to mention: you may be interested about: finger paris@graph.no >I made a little text-based zine server (inspired by Cara Esten's > https://github.com/caraesten/dial_a_zine, which powered the things at anewsession.com); that's up, although very lightly used: http://txtpunk.com/zine/ > > Before life got away from me last year, I was trying to get a VoIP bridge working so I could plug a POTS line into my modem and get telcodata working again. I think 'cp tcp2323 > telcodata' should be enough to make that zine server dialable. (Sadly, I've only gotten the bridge to *place* calls over my crummy DSL line.) > > As a young unix sysadmin back in the 1900s, aux/listen was one of the first things that caught my eye about Plan 9, in comparison to inetd and the direction everyone else was headed > from there. Certainly the growth (in multiple senses) of systemd has only tightened my grip on that particular tool. > 9fans / 9fans / see discussions + participants + delivery options Permalink ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-Mc5c3a50fb7cce6b9b57854d2 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
hiro <23hiro@gmail.com> writes: > all this makes sense. thank you. > i might be dense, but what's the problem with inetd exactly? > I have two main gripes with it: - it runs as root, in order to switch users when launching a server, and therefore is a security risk. - it can be configured only by root, or if you share the file with a group, there's no fine-grained control over who can do what. In contrast, files in a dir can be chowned to individual users, or different groups, allowing a per-port per-user attribution scheme, which is very handy on a multi-user system :) > On 3/5/24, a@9srv.net <a@9srv.net> wrote: >> I wonder what percentage of people who reply are going to be running a >> finger server they wrote. :-) My tcp79 comes from my implementation, >> here: http://txtpunk.com/finger/index.html >> >> I think we've got enough interoperable unicode-aware implementations we can >> start working on the update to the RFC now. >> >> I have a service which allows some unix hosts I run to submit vac scores >> after they perform a backup to my venti; a slightly outdated version is >> here: https://9p.io/sources/contrib/anothy/bin/rc/tcp17038 >> >> tcp411 calls pqsrv, I think the same version as on the "extra" >> page: http://9p.io/sources/extra/ >> >> I usually have at least one "poor man's nat traversal" thing running with >> aux/trampoline. >> >> I love how easy aux/listen makes sticking trivial little services up on the >> net. I used to have one that provided a menu of MUDs to connect to. Another >> gave the weather, as the telnet service at Weather Underground started to go >> unmaintained (of course, mine used darksky, which is now also defunct). I >> made a little text-based zine server (inspired by Cara >> Esten's https://github.com/caraesten/dial_a_zine, which powered the things >> at anewsession.com); that's up, although very lightly >> used: http://txtpunk.com/zine/ <http://txtpunk.com/zine/index.html> >> >> Before life got away from me last year, I was trying to get a VoIP bridge >> working so I could plug a POTS line into my modem and get telcodata working >> again. I think 'cp tcp2323 telcodata' should be enough to make that zine >> server dialable. (Sadly, I've only gotten the bridge to *place* calls over >> my crummy DSL line.) >> >> As a young unix sysadmin back in the 1900s, aux/listen was one of the first >> things that caught my eye about Plan 9, in comparison to inetd and the >> direction everyone else was headed from there. Certainly the growth (in >> multiple senses) of systemd has only tightened my grip on that particular >> tool. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-Mfb9ec82c181d0b246e6a3dd2 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
a@9srv.net writes: > I wonder what percentage of people who reply are going to be running a finger server they wrote. :-) Indeed, it may be why I can't seem to find a good, standard implementation: there are as many implementations as servers. > My tcp79 comes from my implementation, here: > http://txtpunk.com/finger/index.html > Your finger program is a nice illustration of /net usage. Hard to port to Linux though ;) Thanks for making me aware of twtxt. > > I think we've got enough interoperable unicode-aware implementations we can start working on the update to the RFC now. > > I have a service which allows some unix hosts I run to submit vac scores after they perform a backup to my venti; a slightly outdated version is here: > https://9p.io/sources/contrib/anothy/bin/rc/tcp17038 > Nice :) Your tcp80 is also short and to the point. > > tcp411 calls pqsrv, I think the same version as on the "extra" page: http://9p.io/sources/extra/ > > I usually have at least one "poor man's nat traversal" thing running with aux/trampoline. > What an aptly named program. > > I love how easy aux/listen makes sticking trivial little services up on the net. I used to have one that provided a menu of MUDs to connect to. Another gave the weather, as the telnet > service at Weather Underground started to go unmaintained (of course, mine used darksky, which is now also defunct). I made a little text-based zine server (inspired by Cara Esten's > https://github.com/caraesten/dial_a_zine, which powered the things at anewsession.com); that's up, although very lightly used: http://txtpunk.com/zine/ > Well, one more thing on the to-read queue... > > Before life got away from me last year, I was trying to get a VoIP bridge working so I could plug a POTS line into my modem and get telcodata working again. I think 'cp tcp2323 > telcodata' should be enough to make that zine server dialable. (Sadly, I've only gotten the bridge to *place* calls over my crummy DSL line.) > > As a young unix sysadmin back in the 1900s, aux/listen was one of the first things that caught my eye about Plan 9, in comparison to inetd and the direction everyone else was headed > from there. Certainly the growth (in multiple senses) of systemd has only tightened my grip on that particular tool. > 9fans / 9fans / see discussions + participants + delivery options Permalink Thank you for all these pointers :) ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-Mbe2d89455c018e411194cd7d Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
sirjofri <sirjofri+ml-9fans@sirjofri.de> writes: > Hi, > > 05.03.2024 22:38:59 Edouard Klein <edou@rdklein.fr>: > >> Hi, >> >> Thank you for your answer. >> >> >> sirjofri <sirjofri+ml-9fans@sirjofri.de> writes: >> >>> Hello, >>> >>> I don't use /rc/bin/service anymore, but I use /cfg/machinename/service instead. My contents are copies of what's in /rc/bin/service or my own scripts: >> >> I assume that you then bind-mount /cfg/machinename/service to that >> machine's /rc/bin/service ? > > Nope, because bind would only change my own namespace (or I have to bind it becore aux/listen starts). > > In fact, it's much easier. I don't know if it's a 9front feature or if it's also > in plan 9, but if there is a /cfg/$sysname/service directory it will use that > instead of /rc/bin/service (see the cpurc file, > https://git.9front.org/plan9front/plan9front/36478171be59721dcc5252043fe2955cb37fc9b3/rc/bin/cpurc/f.html > ). > Thanks, I had missed it because there is no /cfg in the source. Do you happen to know how the /cfg dir is first populated during install ? Is it all hand-written by the user ? > > If you think about how plan 9 should run on a network, imagine a single fs with > many cpu servers all using the same fs. All the configuration is on the fs, and > the service directories are in the /cfg/machinename/service. The cpu servers > will run their individual configuration automatically using that mechanism. It > just makes sense. > Indeed it does. >>> >>> tcp80 - web server >>> tcp443 - web server but wrapped in tls >>> ... >>> >>> I have some cifd running, some irc server that translates to grid chat, my mail >>> server (smtp and imap4), and fingerd, the files follow the usual scheme tcpXXX. >>> I probably missed one service or the other, but aux/listen is simple enough to >>> set up custom servers with arbitrary functionality. >>> >> >> Would you mind sharing your fingerd and irc server ? For finger my plan >> is to turn this one: >> https://github.com/michael-lazar/finger2020/blob/master/finger2020 into >> a multi-user version, but if there already is one I won't bother. > > Sure, here it is: > > https://shithub.us/sirjofri/fingerd/HEAD/info.html > > Note that I got some notice of potential .. path issues and I'm not sure if I > fixed that, but just in case, you might want to fix that (and maybe send me a > patch). Fix could be as easy as a newns or what it is in C. > I'll try to compile it on Linux and will let you know :) >>> If you have exact questions about aux/listen functionality or you don't understand something, just ask :) >>> >> >> - I noticed some tcpXXX files use exec for their last line, and some >> don't. Is there a reason ? My understanding is that exec saves one call >> to fork per connection, and thus it would be best if it was always used. > > There might be some difference, maybe with log redirectors or something, but I > don't know about that. I guess someone else can tell us more about this (and the > following topic, which is very similar) > >> - I noticed Inferno makes great use of servers that speak 9P on their >> stdstream, with its >> mount {some-program} /mnt/toto >> These programs are trivial to expose thanks to listen: >> listen -v 'tcp!*!toto' {some-program&} >> On Plan9, I ran into rc's cmd <[0=1] | echo 0 > /srv/name, then mount >> /srv/name /n/toto. >> - Is there a inferno-like shorthand for Plan 9 ? >> - Why the "echo 0" ? (I'm not familiar with rc). >> >>> Btw it's quite common to "deactivate" services by renaming the files to have a >>> leading "!". In general, everything that follows the naming scheme >>> <protocol><port> and is executable will work. >>> >> why not just chmod -x them ? In a multiuser system, users may not have >> the right to rename them. > > I think that _would_ work, but I think it's about readability in this case. I > can just lc in that directory and immediately see what's relevant and what not. > With executable flag I have to run ls -l to see what's executable, and it's also > harder to parse it (sorting and filtering). A simple ! is easier to read, and > also probably more stable in case of copying files via different filesystem > types (like, copying the file to fat32 and back, or even having a filesystem > without executable flags, which often results in all files bein executable). > Thanks for all this info ! > > sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-Mf9cb49da52d37653059fdaa2 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
all this makes sense. thank you. i might be dense, but what's the problem with inetd exactly? On 3/5/24, a@9srv.net <a@9srv.net> wrote: > I wonder what percentage of people who reply are going to be running a > finger server they wrote. :-) My tcp79 comes from my implementation, > here: http://txtpunk.com/finger/index.html > > I think we've got enough interoperable unicode-aware implementations we can > start working on the update to the RFC now. > > I have a service which allows some unix hosts I run to submit vac scores > after they perform a backup to my venti; a slightly outdated version is > here: https://9p.io/sources/contrib/anothy/bin/rc/tcp17038 > > tcp411 calls pqsrv, I think the same version as on the "extra" > page: http://9p.io/sources/extra/ > > I usually have at least one "poor man's nat traversal" thing running with > aux/trampoline. > > I love how easy aux/listen makes sticking trivial little services up on the > net. I used to have one that provided a menu of MUDs to connect to. Another > gave the weather, as the telnet service at Weather Underground started to go > unmaintained (of course, mine used darksky, which is now also defunct). I > made a little text-based zine server (inspired by Cara > Esten's https://github.com/caraesten/dial_a_zine, which powered the things > at anewsession.com); that's up, although very lightly > used: http://txtpunk.com/zine/ <http://txtpunk.com/zine/index.html> > > Before life got away from me last year, I was trying to get a VoIP bridge > working so I could plug a POTS line into my modem and get telcodata working > again. I think 'cp tcp2323 telcodata' should be enough to make that zine > server dialable. (Sadly, I've only gotten the bridge to *place* calls over > my crummy DSL line.) > > As a young unix sysadmin back in the 1900s, aux/listen was one of the first > things that caught my eye about Plan 9, in comparison to inetd and the > direction everyone else was headed from there. Certainly the growth (in > multiple senses) of systemd has only tightened my grip on that particular > tool. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-M32b1f1b0e1eeedd875aee9d9 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #1: Type: text/plain, Size: 2120 bytes --] I wonder what percentage of people who reply are going to be running a finger server they wrote. :-) My tcp79 comes from my implementation, here: http://txtpunk.com/finger/index.html I think we've got enough interoperable unicode-aware implementations we can start working on the update to the RFC now. I have a service which allows some unix hosts I run to submit vac scores after they perform a backup to my venti; a slightly outdated version is here: https://9p.io/sources/contrib/anothy/bin/rc/tcp17038 tcp411 calls pqsrv, I think the same version as on the "extra" page: http://9p.io/sources/extra/ I usually have at least one "poor man's nat traversal" thing running with aux/trampoline. I love how easy aux/listen makes sticking trivial little services up on the net. I used to have one that provided a menu of MUDs to connect to. Another gave the weather, as the telnet service at Weather Underground started to go unmaintained (of course, mine used darksky, which is now also defunct). I made a little text-based zine server (inspired by Cara Esten's https://github.com/caraesten/dial_a_zine, which powered the things at anewsession.com); that's up, although very lightly used: http://txtpunk.com/zine/ <http://txtpunk.com/zine/index.html> Before life got away from me last year, I was trying to get a VoIP bridge working so I could plug a POTS line into my modem and get telcodata working again. I think 'cp tcp2323 telcodata' should be enough to make that zine server dialable. (Sadly, I've only gotten the bridge to *place* calls over my crummy DSL line.) As a young unix sysadmin back in the 1900s, aux/listen was one of the first things that caught my eye about Plan 9, in comparison to inetd and the direction everyone else was headed from there. Certainly the growth (in multiple senses) of systemd has only tightened my grip on that particular tool. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-Mb37884661621aa08e1f8449c Delivery options: https://9fans.topicbox.com/groups/9fans/subscription [-- Attachment #2: Type: text/html, Size: 3113 bytes --]
Hi, 05.03.2024 22:38:59 Edouard Klein <edou@rdklein.fr>: > Hi, > > Thank you for your answer. > > > sirjofri <sirjofri+ml-9fans@sirjofri.de> writes: > >> Hello, >> >> I don't use /rc/bin/service anymore, but I use /cfg/machinename/service instead. My contents are copies of what's in /rc/bin/service or my own scripts: > > I assume that you then bind-mount /cfg/machinename/service to that > machine's /rc/bin/service ? Nope, because bind would only change my own namespace (or I have to bind it becore aux/listen starts). In fact, it's much easier. I don't know if it's a 9front feature or if it's also in plan 9, but if there is a /cfg/$sysname/service directory it will use that instead of /rc/bin/service (see the cpurc file, https://git.9front.org/plan9front/plan9front/36478171be59721dcc5252043fe2955cb37fc9b3/rc/bin/cpurc/f.html ). If you think about how plan 9 should run on a network, imagine a single fs with many cpu servers all using the same fs. All the configuration is on the fs, and the service directories are in the /cfg/machinename/service. The cpu servers will run their individual configuration automatically using that mechanism. It just makes sense. >> >> tcp80 - web server >> tcp443 - web server but wrapped in tls >> ... >> >> I have some cifd running, some irc server that translates to grid chat, my mail >> server (smtp and imap4), and fingerd, the files follow the usual scheme tcpXXX. >> I probably missed one service or the other, but aux/listen is simple enough to >> set up custom servers with arbitrary functionality. >> > > Would you mind sharing your fingerd and irc server ? For finger my plan > is to turn this one: > https://github.com/michael-lazar/finger2020/blob/master/finger2020 into > a multi-user version, but if there already is one I won't bother. Sure, here it is: https://shithub.us/sirjofri/fingerd/HEAD/info.html Note that I got some notice of potential .. path issues and I'm not sure if I fixed that, but just in case, you might want to fix that (and maybe send me a patch). Fix could be as easy as a newns or what it is in C. >> If you have exact questions about aux/listen functionality or you don't understand something, just ask :) >> > > - I noticed some tcpXXX files use exec for their last line, and some > don't. Is there a reason ? My understanding is that exec saves one call > to fork per connection, and thus it would be best if it was always used. There might be some difference, maybe with log redirectors or something, but I don't know about that. I guess someone else can tell us more about this (and the following topic, which is very similar) > - I noticed Inferno makes great use of servers that speak 9P on their > stdstream, with its > mount {some-program} /mnt/toto > These programs are trivial to expose thanks to listen: > listen -v 'tcp!*!toto' {some-program&} > On Plan9, I ran into rc's cmd <[0=1] | echo 0 > /srv/name, then mount > /srv/name /n/toto. > - Is there a inferno-like shorthand for Plan 9 ? > - Why the "echo 0" ? (I'm not familiar with rc). > >> Btw it's quite common to "deactivate" services by renaming the files to have a >> leading "!". In general, everything that follows the naming scheme >> <protocol><port> and is executable will work. >> > why not just chmod -x them ? In a multiuser system, users may not have > the right to rename them. I think that _would_ work, but I think it's about readability in this case. I can just lc in that directory and immediately see what's relevant and what not. With executable flag I have to run ls -l to see what's executable, and it's also harder to parse it (sorting and filtering). A simple ! is easier to read, and also probably more stable in case of copying files via different filesystem types (like, copying the file to fat32 and back, or even having a filesystem without executable flags, which often results in all files bein executable). sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-M1b1379582bb9751cff6ba2ce Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
Hi, Thank you for your answer. sirjofri <sirjofri+ml-9fans@sirjofri.de> writes: > Hello, > > I don't use /rc/bin/service anymore, but I use /cfg/machinename/service instead. My contents are copies of what's in /rc/bin/service or my own scripts: I assume that you then bind-mount /cfg/machinename/service to that machine's /rc/bin/service ? > > tcp80 - web server > tcp443 - web server but wrapped in tls > ... > > I have some cifd running, some irc server that translates to grid chat, my mail > server (smtp and imap4), and fingerd, the files follow the usual scheme tcpXXX. > I probably missed one service or the other, but aux/listen is simple enough to > set up custom servers with arbitrary functionality. > Would you mind sharing your fingerd and irc server ? For finger my plan is to turn this one: https://github.com/michael-lazar/finger2020/blob/master/finger2020 into a multi-user version, but if there already is one I won't bother. > If you have exact questions about aux/listen functionality or you don't understand something, just ask :) > - I noticed some tcpXXX files use exec for their last line, and some don't. Is there a reason ? My understanding is that exec saves one call to fork per connection, and thus it would be best if it was always used. - I noticed Inferno makes great use of servers that speak 9P on their stdstream, with its mount {some-program} /mnt/toto These programs are trivial to expose thanks to listen: listen -v 'tcp!*!toto' {some-program&} On Plan9, I ran into rc's cmd <[0=1] | echo 0 > /srv/name, then mount /srv/name /n/toto. - Is there a inferno-like shorthand for Plan 9 ? - Why the "echo 0" ? (I'm not familiar with rc). > Btw it's quite common to "deactivate" services by renaming the files to have a > leading "!". In general, everything that follows the naming scheme > <protocol><port> and is executable will work. > why not just chmod -x them ? In a multiuser system, users may not have the right to rename them. Thank you for your help :) Cheers, Edouard. > > sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-Maa2def04fcfcb1e92523c45d Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
Hello, I don't use /rc/bin/service anymore, but I use /cfg/machinename/service instead. My contents are copies of what's in /rc/bin/service or my own scripts: tcp80 - web server tcp443 - web server but wrapped in tls ... I have some cifd running, some irc server that translates to grid chat, my mail server (smtp and imap4), and fingerd, the files follow the usual scheme tcpXXX. I probably missed one service or the other, but aux/listen is simple enough to set up custom servers with arbitrary functionality. If you have exact questions about aux/listen functionality or you don't understand something, just ask :) Btw it's quite common to "deactivate" services by renaming the files to have a leading "!". In general, everything that follows the naming scheme <protocol><port> and is executable will work. sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-M512c462da8b1a759383a0b74 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
Dear 9fans, Those of you who run a Plan 9 or Inferno box, could you please share the contents of your /rc/bin/service or /dis/svc dir ? I'm writing about Plan 9's listen, and I've read the scripts included in the default distribution (e.g. http://git.9front.org/plan9front/plan9front/c5c19dfe4998fa40de5f58f61439fd5fd65c9056/rc/bin/service/f.html), but I'm curious to see how it's used in practice now by people who are familiar with the system (which I'm not, since I don't run a Plan 9 box). Thanks in advance, Edouard. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf73851503467346f-M66cb88b13f0e3f7dc29fae27 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
01.03.2024 11:38:06 Steve simon <steve@quintile.net>: > A larger block size as lucio says, and also try two dd's with a pipe between them, > one reading and one writing. dd(1) is single threaded but you have two asynchronous physical devices. You can probably even pipe it through some compressor, but I doubt you'll get much performance out of it in a case like this (local machine). I guess it's more useful for separate machines with slower network connections. sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T0fd6444acb9c7811-M08db6c6b992d9e5efc4ac1a6 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
A larger block size as lucio says, and also try two dd's with a pipe between them, one reading and one writing. dd(1) is single threaded but you have two asynchronous physical devices. I have had good success copying sd-cards using fcp - rsc's multithreaded cp, already in the distribution, though I don't know what blocksize it uses offhand. -Steve > On 1 Mar 2024, at 09:39, Lucio De Re <lucio.dere@gmail.com> wrote: > > Increasing the dd block size (-bs 1024k or as big as the man pages > allow) could make a big difference. > > > On 3/1/24, Aleksandar Kuktin <ak@triklod.rs> wrote: >>> On Fri, 1 Mar 2024 10:08:25 +0100 >>> Marco Feichtinger <marco@germteig.com> wrote: >>> >>>> and the computer isn't a SBC bitty box, the transfer rate is weirdly >>>> low. >>> >>> Well, both disk are on the same machine. >>> It's a Supermicro X7SPA-H-D525 board. >>> >>> -marco >> >> Well, that's not a bitty box. Wish I bought something like that instead >> of my BananaPi. Anyway, someone more knowledgeable on Plan 9 than me is >> needed. I can only speculate that the OS and hardware fight. I have >> something similar happening on my desktop with modern hardware running >> old software. I run GNU/Linux on it. For some reason I can't figure out, >> transfers start off normal but then degrade to 10 Mbps or less after a >> few GiB are transferred. If I try it with CentOS 7, it runs fine. But >> when I use my own homegrown distro it's pathologic. Kernel version >> 3.16.85, vanilla. >> >> -- >> Svi moji e-mailovi su kriptografski potpisani. Proverite ih. >> All of my e-mails are cryptographically signed. Verify them. >> -- >> You don't need an AI for a robot uprising. >> Humans will do just fine. >> -- >> > > > -- > Lucio De Re > 2 Piet Retief St > Kestell (Eastern Free State) > 9860 South Africa > > Ph.: +27 58 653 1433 > Cell: +27 83 251 5824 ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T0fd6444acb9c7811-Mb5849711471b91fba2a419ff Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
Increasing the dd block size (-bs 1024k or as big as the man pages allow) could make a big difference. On 3/1/24, Aleksandar Kuktin <ak@triklod.rs> wrote: >>On Fri, 1 Mar 2024 10:08:25 +0100 >>Marco Feichtinger <marco@germteig.com> wrote: >> >> > and the computer isn't a SBC bitty box, the transfer rate is weirdly >> > low. >> >> Well, both disk are on the same machine. >> It's a Supermicro X7SPA-H-D525 board. >> >> -marco > > Well, that's not a bitty box. Wish I bought something like that instead > of my BananaPi. Anyway, someone more knowledgeable on Plan 9 than me is > needed. I can only speculate that the OS and hardware fight. I have > something similar happening on my desktop with modern hardware running > old software. I run GNU/Linux on it. For some reason I can't figure out, > transfers start off normal but then degrade to 10 Mbps or less after a > few GiB are transferred. If I try it with CentOS 7, it runs fine. But > when I use my own homegrown distro it's pathologic. Kernel version > 3.16.85, vanilla. > > -- > Svi moji e-mailovi su kriptografski potpisani. Proverite ih. > All of my e-mails are cryptographically signed. Verify them. > -- > You don't need an AI for a robot uprising. > Humans will do just fine. > -- > -- Lucio De Re 2 Piet Retief St Kestell (Eastern Free State) 9860 South Africa Ph.: +27 58 653 1433 Cell: +27 83 251 5824 ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T0fd6444acb9c7811-M3511a4d8d92d12118f55f6bf Delivery options: https://9fans.topicbox.com/groups/9fans/subscription
[-- Attachment #1.1: Type: text/plain, Size: 1077 bytes --] >On Fri, 1 Mar 2024 10:08:25 +0100 >Marco Feichtinger <marco@germteig.com> wrote: > > > and the computer isn't a SBC bitty box, the transfer rate is weirdly > > low. > > Well, both disk are on the same machine. > It's a Supermicro X7SPA-H-D525 board. > > -marco Well, that's not a bitty box. Wish I bought something like that instead of my BananaPi. Anyway, someone more knowledgeable on Plan 9 than me is needed. I can only speculate that the OS and hardware fight. I have something similar happening on my desktop with modern hardware running old software. I run GNU/Linux on it. For some reason I can't figure out, transfers start off normal but then degrade to 10 Mbps or less after a few GiB are transferred. If I try it with CentOS 7, it runs fine. But when I use my own homegrown distro it's pathologic. Kernel version 3.16.85, vanilla. -- Svi moji e-mailovi su kriptografski potpisani. Proverite ih. All of my e-mails are cryptographically signed. Verify them. -- You don't need an AI for a robot uprising. Humans will do just fine. -- [-- Attachment #1.2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] [-- Attachment #2: Type: text/plain, Size: 228 bytes --] ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T0fd6444acb9c7811-Maaa7e17b02d8ea4da65a457e Delivery options: https://9fans.topicbox.com/groups/9fans/subscription