05-12-2013
First observation: sh!t happens! That is a proven, reliable fact and an environment which can't cope with that is designed wrongly from the start. If you need a service to be not disrupted you shouldn't allow people to develop on it, because development will create the one or other hiccup to happen over time. Further, you need to take precautions against failure of every single part of the system if it should survive. Suppose instead of your error some hardware would have crashed, the network disrupted, whatever. This is what HA-solutions are for, for instance.
No SysAdmin in his right mind will let a manager determined to "save" on hardware off this hook: do you want to bet the projects future on me never doing an accidental typo? (As it is i have actually said exactly this in a design conference - and got my testing system.) And, by the way: when they decide about new office furniture for their offices any intention to save is usually abandoned immediately, so wtf?
Second aspect: whenever you do something it is your utmost responsibility to test what you have done. Immediately! So how can you create such a loop and not notice it? How can you implement this change even twice? This is not a question of introducing an error - that happens to all of us. It is a matter if noticing you have done something wrong and this has to do with the style of work: if i delete a file, i do an immediate "ls" to verify it (and it alone) is gone, if i do a "cd" i do a "pwd" to verify i am in the right directory, etc., etc.. This slows me down by perhaps 5%, but when i think i have something done i usually have it done - without any error. The 5% are easily recovered not having to do the error correction and/or recovery others eventually have to do.
So, i hope for your best, but you should really change your work ethics and learn from this accident. My 2 cents.
bakunin
These 2 Users Gave Thanks to bakunin For This Post:
6 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi there,
I am lil confused with the following issue.
I have a File, which has the following header: IMSHRATE_043008_101016
a sample detailed record is :9820101 A982005000CAVG030108000000000000010169000MAR 2008
9820102 MAR 2008 D030108
... (1 Reply)
Discussion started by: cmaroju
1 Replies
2. What is on Your Mind?
I'm currently a Windows admin and have wanted to jump ship to the *nix side for a while now. I've been studying both through an lpic level 1 manual as I have time (focusing on debian), and a solaris 10 cert book. The problem is I only have a handful of hours a week to study, and my current job... (3 Replies)
Discussion started by: bobwilson
3 Replies
3. War Stories
Was wondering if anyone has come across any situation where you do your best to help users and in return you get a nice escalation from top level management!
Here's my story:
One fine morning, I was sitting idle, doing next to nothing, I got an alert from helpdesk people about a problem with... (30 Replies)
Discussion started by: admin_xor
30 Replies
4. Shell Programming and Scripting
Hi,
I have 80 large files, from which I want to get a specific value to run a Bash script. Firstly, I want to get the part of a file which contains this:
Name =A
xxxxxx
yyyyyy
zzzzzz
aaaaaa
bbbbbb
Value = 57
This is necessary because in a file there are written more lines which... (6 Replies)
Discussion started by: wenclu
6 Replies
5. What is on Your Mind?
I am planning to choose my career as Unix/Linux Admin or a DBA. But I have come to know from forums and few admins like the job will be 24/7. I have few questions on that.
Can we get "DAY" shifts in any one of the admin Job ?
Can't we have shift timings in any company ?
Eventhough the... (7 Replies)
Discussion started by: Jacktts
7 Replies
6. UNIX for Beginners Questions & Answers
Hi All,
We've a VDI infrastructure in AWS (AWS workspaces) and we're planning to automate the process of provisioning workspaces. Instead of going to GUI console, and launching workspaces by selecting individual users is little time consuming. Thus, I want to create them in bunches from AWS CLI... (6 Replies)
Discussion started by: arun_adm
6 Replies
LEARN ABOUT DEBIAN
ledgersmb::dbobject::admin
LedgerSMB::DBObject::Admin(3pm) User Contributed Perl Documentation LedgerSMB::DBObject::Admin(3pm)
NAME
LedgerSMB::DBObject::Admin - User/group management for LedgerSMB
SYNOPSIS
User/group management for LedgerSMB
INHERITS
Universal
LedgerSMB
LedgerSMB::DBObject
METHODS
save_user
Saves a user optionally with location and contact data.
If the password or import hash values is set, will not save contact or address information.
This API is not fully documented at this time because it is expected that it will be broken down into more manageable chunks in future
versions. Please do not count on the behavior.
delete_user($delete_role)
Deletes a user specified by $self->{user_id}.
if $delete_role is true, deletes the role too.
search_users
Returns a list of users matching search criteria, and attaches that list to the user_results hash value.
Search criteria:
username
first_name
last_name
ssn
dob
Undef matches all values. All matches exact except username which allows for partial matches.
list_sessions
returns a list of active sessions, when they were last used, and how many discretionary locks they hold. The list is also attached to
the active_sessions hash value. No inputs required or used.
delete_session
Deletes a session identified by the session_id hashref.
save_roles
Saves the roles assigned to a user. Each role is specified as a hashref true value, where the key is the full name of the role (i.e.
starting with lsmb_[dbname]__).
get_salutations
Returns a list of salutation records from the db for the dropdowns.
get_roles
Returns a list of role names with the following format:
{role => $full_role_name, description => $short_role_name}
The short role name is the full role name with the prefix removed (i.e. without the lsmb_[dbname]__ prefix).
get_countries
Returns a reference to an array of hashrefs including the country data in the db.
Sets the same reference to the countries hash value.
get_contact_classes
Returns a list of hashrefs ({id =>, class =>}) relating to the contact classes.
COPYRIGHT
Copyright (c) 2009, the LedgerSMB Core Team. This is licensed under the GNU General Public License, version 2, or at your option any later
version. Please see the accompanying License.txt for more information.
perl v5.14.2 2012-03-25 LedgerSMB::DBObject::Admin(3pm)