sysopen(DB_USERS_LOCK, $lck_users, O_RDWR|O_CREAT) || die( "Cannot open $lck_users: $! " ); flock(DB_USERS_LOCK, LOCK_EX) || die( "Cannot LOCK_EX $lck_users: $! " ); tie %h, "DB_File", $users_dbm_file, O_RDWR|O_CREAT, 0640, $DB_HASH || die( "Cannot tie $users_dbm_file $! \n" ); my $data_for_db = ""; foreach ( sort keys %data ){ $data_for_db = $data_for_db . "$_ $data{$_} " } $h{$username} = $data_for_db; print $h{$username}; untie %h; close DB_USERS_LOCK;