On Wed, 2005-07-27 at 00:36 -0700, Frank Millman wrote: > Hi all > > This is not strictly a Python question, but this newsgroup feels like a > family to me, so I hope that someone will be kind enough to respond to > this, or at least point me in the right direction. > > While developing under linux, I use my own computer, as the only user, > so it has become my habit to login as root and do all my work as a > superuser. I know that this is not desirable, but it has become a > habit, which I am now trying to get out of. > > Now that I am logging in as an ordinary user, I find that a number of > things that previously 'just worked' have now stopped working. I can > usually find the cause, and tweak whatever is needed to get it working > again, but I am wondering how most people work. Is it normal to > experience these kinds of problems, or am I missing a trick somewhere > and making my life more complicated than it need be? > > I will give two examples. I would like advice on the best way to fix > them, but I would prefer a more general reply that explains how > experienced unix/linux users go about handling these kinds of issues. > > 1. The application I am developing will eventually be deployed as a > multi-user accounting/business system. I want to identify the physical > workstation that generates each transaction, so I am using the mac > address. My method for extracting this is as follows - > mac = os.popen("ifconfig|grep Ether|awk {print '$5'}").read()[:-1] # > I did not come up with this myself, I cribbed it from somewhere > > As root, this works fine. As non-root, ifconfig is not found. The > reason is that it is in /sbin, and this is not included in the default > path for non-root users. I could either include /sbin in my path, or I > could change the above line to /sbin/ifconfig ... Alternatively, there > may be a better way of getting the mac address or identifying the > workstation.
I <3 sysfs; case in point: cat /sys/class/net/eth*/address ..weeeee.. > 2. I am using wxPython, which was compiled from source. It so happens > that I did this with a colleague who also has a user account on my > machine, so the compile and install of wxPython was done from his home > directory. > > When I start my app as non-root, the import of wx fails, as it cannot > find certain files. They are in the other user's home directory, but as > the top-level directory has permissions of drwx------, my user cannot > read anything in that directory. I can change the directory > permissions, or I can move the files to another area which all users > can read. If the latter, is there a 'correct' place to put them? > > I think that these problems are a result of my lack of experience as a > system administrator. On the other hand, the various books and articles > I have read to try and improve my knowledge have not covered these > kinds of issues. Is it just something that one learns the hard way? > > Any advice, especially pointers to reading matter that covers this > topic, will be much appreciated. > > Thanks > > Frank Millman > -- http://mail.python.org/mailman/listinfo/python-list