zsh-workers
 help / color / mirror / code / Atom feed
From: "Mikael Magnusson" <mikachu@gmail.com>
To: zsh-workers@sunsite.dk
Subject: Re: Notes on zsh, zsh/files and recovery
Date: Sat, 18 Oct 2008 22:56:08 +0200	[thread overview]
Message-ID: <237967ef0810181356j7ff7a7d0g75890b89c81f271a@mail.gmail.com> (raw)
In-Reply-To: <20081018204515.GA1642@redoubt.spodhuis.org>

2008/10/18 Phil Pennock <zsh-workers+phil.pennock@spodhuis.org>:
> Managed to hose my box by trying to be too clever while rebuilding.
> Luckily, had zsh as root at the time.  In the end, didn't help fix it;
> once you've hosed /libexec/ld-elf.so.1 with a version that's for a
> different architecture to the kernel, you're hosed.  But it's an
> interesting exercise, trying to recover without making use of exec() (as
> opposed to the more usual fork() limitation).
>
> zsh/files needs zf_chmod.  I'll do that.  Not today, but when I've had
> some sleep.  Does anyone have objections to platform-dependent commands
> conditionally available in existing modules?  I'm tempted to add
> chflags(1) too, since another time it might be a need to nuke an
> immutable flag that's the problem.
>
> I now see the use for zf_cp.  zmodload zsh/mapfile and using:
>  print -nr -- ${mapfile[srcname]} > $destname
> is a close approximation for a straight cat, at least.  Thankfully, zsh
> handles embedded NULs fine.  Without chmod, copying an executable
> cross-filesystem was trickier.  Luckily, for some reason, /bin/rmail is
> still supplied on the root file-system in FreeBSD and that's
> unimportant, so I could sacrifice it with zf_mv and then print mapfile
> on top of it.  Alas, the only version I had available to recover with
> was not helpful and there was no backup of the original and no way to
> invoke an embedded C compiler from zsh.  *sigh*  Hrm, on reflection, if
> I'd had another box to build on, I could have used zsh's built-in FTP
> handling to retrieve the file that way.
>
> Seem reasonable to implement zf_cp and make zf_mv call that for
> cross-filesystem cases?
>
> There does not appear to be a zls() ?  I hacked one together using
> zsh/stat and ... it's rather slow.  I'm tempted to build up a closer
> emulation of ls(1) with a few useful options and contribute it as a
> standard function.  It will be truly slow, but occasionally useful.
>
> If the ACL situation weren't such a complete mess across platforms, I
> might do something there.  Anyone have any thoughts against
> zsh/acl_posix1003.2c ?  Anyone have a better name?  ;)  I just want to
> be able to use getfacl/setfacl and probably with the nice Linux
> behaviour of automatically supplying a calculated mask for default
> entries for setfacl, since the FreeBSD behaviour regularly bites me.
> I've hit it often enough and use ACLs frequently enough now that I
> think I remember quickly.  I can't think of a decent way to structure
> the data of getfacl to have appropriate key/value for putting the
> results into a hash, so it would only implement the regular support.
>
> If I'm going to scratch this bunch of itches, anyone have any feature
> requests or anti-feature requests?  No guarantees.

In these situations, I usually find sash
<http://members.canb.auug.org.au/~dbell/programs/sash-3.7.tar.gz> to
come in handy.

-- 
Mikael Magnusson


  reply	other threads:[~2008-10-18 20:56 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-18 20:45 Phil Pennock
2008-10-18 20:56 ` Mikael Magnusson [this message]
2008-10-19  6:39 ` Dan Nelson
2008-10-20  0:28   ` Phil Pennock
2008-10-20 15:09     ` Bart Schaefer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=237967ef0810181356j7ff7a7d0g75890b89c81f271a@mail.gmail.com \
    --to=mikachu@gmail.com \
    --cc=zsh-workers@sunsite.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).