Re: How to package e2scrub

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On May 31, 2019, at 8:10 AM, Theodore Ts'o <tytso@xxxxxxx> wrote:
> 
> On Fri, May 31, 2019 at 12:07:13PM +0200, Jan Kara wrote:
>> On Thu 30-05-19 09:51:55, Theodore Ts'o wrote:
>>> On Thu, May 30, 2019 at 11:59:07AM +0200, Jan Kara wrote:
>>>> Yeah, my plan is to just not package cron bits at all since openSUSE / SLES
>>>> support only systemd init anyway these days (and in fact our distro people
>>>> want to deprecate cron in favor of systemd). I guess I'll split off the
>>>> scrub bits into a separate sub-package (likely e2fsprogs will suggest
>>>> installation of this sub-package) and the service will be disabled by
>>>> default.
>>> 
>>> I'm not super-fond of extra sub-packages for their own sake, and the
>>> extra e2scrub bits are small enough (about 32k?) that I don't believe
>>> it justifies an extra sub-package; but that's a distribution-level
>>> packaging decision, so it's certainly fine if we're not completely aligned.
>> 
>> Yes, size is not a big concern but the scrub bits require util-linux, lvm,
>> and mailer to work correctly and I don't want to add these dependencies to
>> stock e2fsprogs package because some minimal installations do not want e.g.
>> lvm at all. Granted these are just scripts so I could get away with not
>> requiring e.g. lvm at all but it seems user-unfriendly to leave it up to
>> user to determine that his systemd-service fails due to missing packages.
> 
> So you're using an extra package to force the installation of the
> necessary prerequisite packages, instead of the current approach where
> we don't require them, but we just skip running the scrub if lvm and
> util-linux are not present.  I think both approaches makes sense.
> 
> It's also a good point that we need to handle the case of a missing
> sendmail intelligently.  It looks like we currently skip sending mail
> at all in the cron case, and in the case systemd case, we'll spew a
> warning (which won't get mailed since there's no sendmail, but it does
> mean some extra lines in the logfile).  All of this being said, it's
> not _completely_ useless to scrub without an mailer; we still mark the
> file system as needing to be checked on the next boot.  But it's
> another argument that we shouldn't enable the service by default.
> 
> For that reason, I'm not sure I'd want to force the installation of a
> mailer, since someone might want to run e2scrub by hand, and
> e2scrub_all every week w/o isn't a completely insane thing.  But we
> certainly should handle that case gracefully.

If sendmail is unavailable (and maybe even if it *is* available), e2scrub
can use logger to write a short message to syslog if there is an error.
Something like:

    e2scrub: $device errors detected, needs offline e2fsck to correct
    e2scrub: $device logs in /var/log/e2scrub....

in mark_corrupt() or from e2scrub_fail.

Cheers, Andreas





Attachment: signature.asc
Description: Message signed with OpenPGP


[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux