[lug] Version Control Device Special Files?

Bear Giles bgiles at coyotesong.com
Mon Jan 6 15:08:12 MST 2014


Tar will archive special devices anywhere. I think some tools put a socket
in the user's home directory.

I mention this since many people forget that there are various attacks via
special devices and tar will happily create them if you untar a malicious
tarball. That's also why /home and removable media should be mounted
'nodev'.

Bear


On Mon, Jan 6, 2014 at 3:00 PM, Quentin Hartman <qhartman at gmail.com> wrote:

> I don't think anything would deal well with device special files. It's
> just not something they're built for. I'd think your best bet would be to
> tar up the state of the special files (in /dev I assume? Things like /proc
> will definitely explode any attempts to archive them) and then drop that
> into the source control repo. Tar has special support for the device node
> info in /dev and doesn't try to actually open the files. I would be shocked
> if there were any source control system that would handle that directly
> with any grace.
>
> That said, do you really need to save the /dev and other non-files? In
> modern systems (even embedded ones I've worked with) that should all get
> rebuild dynamically by the kernel and whatnot. Can you safely just skip
> them?
>
> QH
>
>
> On Mon, Jan 6, 2014 at 2:21 PM, <stimits at comcast.net> wrote:
>
>> Hi,
>>
>> This is probably not practical, but I have need to deal with version
>> control of several small embedded file systems, and would like to put them
>> under subversion.
>>
>> The ability to track the file system from two different vendors plus my
>> own modifications, where large parts of these file systems are in common,
>> are required. Those needs combined with subversion branching and merging
>> would give me a very good way of comparing changes and exporting merges and
>> edits, both from the different vendors and myself. I don't care about
>> inefficiencies of copying entire linux file systems, nor do I care if
>> binary file versioning is inefficient.
>>
>> The trouble is that svn cannot store or version device special files.
>> Named pipes, character or block device special files, sockets, or anything
>> "special" breaks svn. Other than obtaining a copy of someone else's git
>> repo, I'm not really skilled with git (e.g., I've not set up a git server),
>> and not sure what it does if I want to maintain separate vendor branches
>> while sometimes merging parts of those branches. If subversion handled
>> device special files I'd have everything I need...but what would be my
>> other options? Does git deal well with device special files? What other
>> version control methods would be useful?
>>
>> _______________________________________________
>> Web Page:  http://lug.boulder.co.us
>> Mailing List: http://lists.lug.boulder.co.us/mailman/listinfo/lug
>> Join us on IRC: irc.hackingsociety.org port=6667 channel=#hackingsociety
>>
>
>
> _______________________________________________
> Web Page:  http://lug.boulder.co.us
> Mailing List: http://lists.lug.boulder.co.us/mailman/listinfo/lug
> Join us on IRC: irc.hackingsociety.org port=6667 channel=#hackingsociety
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lug.boulder.co.us/pipermail/lug/attachments/20140106/c04bb94e/attachment.html>


More information about the LUG mailing list