debian/0000775000000000000000000000000012265321754007177 5ustar debian/htcondor.manpages0000664000000000000000000000002212260003121012502 0ustar doc/build/man/*.1 debian/htcondor.lintian-overrides0000664000000000000000000000012212260517751014371 0ustar htcondor binary: making-assumptions-about-interfaces-in-templates condor/personal debian/copyright0000664000000000000000000002541212260520403011121 0ustar Format: http://dep.debian.net/deps/dep5/ Upstream-Name: htcondor Upstream-Contact: HTCondor Team Source: http://www.cs.wisc.edu/htcondor Files: * Copyright: 1990-2013, HTCondor Team, Computer Sciences Department, University of Wisconsin-Madison, WI. License: Apache-2.0 Files: externals/bundles/openssl/0.9.8h-p2/ossl_typ-post.h Copyright: 1998-2001, The OpenSSL Project License: Custom Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: . 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. . 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. . 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/)" . 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact openssl-core@openssl.org. . 5. Products derived from this software may not be called "OpenSSL" nor may "OpenSSL" appear in their names without prior written permission of the OpenSSL Project. . 6. Redistributions of any form whatsoever must retain the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)" . THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Files: src/condor_daemon_core.V6/valgrind.h Copyright: 2000-2006, Julian Seward License: BSD-4-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: . 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. . 2. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. . 3. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. . 4. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Files: src/condor_rmdir/{tokenize.cpp bprint.h harylist.h} Copyright: 2010, John M. Knoeller License: Apache-2.0 Files: src/condor_dagman/node_scheduler/* Copyright: 2005 Argonne National Laboratory License: Apache-2.0 Files: src/safefile/* Copyright: 2007-2008, 2011 James A. Kupsch License: Apache-2.0 Files: src/nordugrid_gahp/globus* src/condor_includes/condor_gssapi_openssl.h src/gt2_gahp/my_ez.cpp Copyright: 1999-2006, University of Chicago License: Apache-2.0 Files: src/condor_filetransfer_plugins/hdfs* src/condor_contrib/aviary/src/axis2_* Copyright: 2006, Apache Software Foundation License: Apache-2.0 Files: src/condor_filetransfer_plugins/stdint-msvc.h Copyright: 2006-2008, Alexander Chemeris License: BSD-3-clause Files: src/condor_contrib/condor_pigeon/src/condor_pigeon_client/skype_linux_tools/* Copyright: 2007, Vincent Oberle, License: GPL-2+ Files: src/condor_contrib/condor_pigeon/src/condor_pigeon_client/skype_linux_tools/twitter.py Copyright: 2007, Google Inc License: Apache-2.0 Files: src/condor_contrib/condor_pigeon/src/condor_pigeon_client/skype_linux_tools/Skype4Py/* Copyright: 2007-2008, Arkadiusz Wahlig License: BSD-3-clause Files: src/condor_contrib/aviary/test/module/aviary/https.py Copyright: 2011, Joseph Turner 2011, David Norton, Jr 2009-2011 Red Hat, Inc License: Apache-2.0 Files: src/condor_contrib/rcondor/* Copyright: 2010, Jeffrey M. Dost License: BSD-3-clause Files: src/condor_utils/my_getopt.cpp Copyright: 1997, 2000, 2001, 2002, Benjamin Sittler License: Expat Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: . The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. . THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Files: build/cmake/macros/CheckTypeExists.cmake Copyright: 2009, Michihiro NAKAJIMA 2011 Red Hat, Inc 2006, Alexander Neundorf, License: Apache-2.0 Files: build/cmake/modules/CPackDeb.cmake Copyright: 2007-2009 Kitware, Inc 2007-2009 Mathieu Malaterre License: BSD-3-clause Files: *.cmake src/condor_contrib/plumage/* src/condor_contrib/triggerd/* src/condor_contrib/aviary/* src/condor_contrib/utils/broker_utils.* src/condor_contrib/mgmt/qmf/* src/condor_collector.V6/*CollectorPlugin* src/condor_master.V6/*MasterPlugin* src/condor_startd.V6/*StartdPlugin* src/condor_schedd.V6/*Plugin* src/condor_utils/*Plugin* src/condor_utils/ClassAdReevaluator* src/condor_utils/ConcurrencyLimitUtils.* src/condor_negotiator.V6/*NegotiatorPlugin* src/condor_mail/AssemblyInfo.cpp src/condor_examples/condor_limits_wrapper.sh Copyright: 2008 Red Hat, Inc License: Apache-2.0 Files: debian/* Copyright: 2004, Andreas Hirczy 2004-2006, Peter Troeger 2006, Guillaume Pernot 2010-2012, Michael Hanke License: Apache-2.0 License: Apache-2.0 This file is licensed under the terms of the Apache License Version 2.0 http://www.apache.org/licenses. This notice must appear in modified or not redistributions of this file. . Redistributions of this Software, with or without modification, must reproduce the Apache License in: (1) the Software, or (2) the Documentation or some other similar material which is provided with the Software (if any). . On Debian systems, the full text of the Apache License version 2 can be found in the file `/usr/share/common-licenses/Apache-2.0'. License: BSD-3-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. License: GPL-2+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . On Debian systems, the complete text of the GNU General Public License version 2 can be found in `/usr/share/common-licenses/GPL-2'. debian/README.Debian0000664000000000000000000000521412260517660011240 0ustar HTCondor for Debian =================== The documentation for HTCondor can be found on the World Wide Web at: http://www.cs.wisc.edu/htcondor/manual At that web site, you will find both an on-line version of manual and directions for downloading your own copy in a variety of formats. Package upgrades ---------------- When the HTCondor package is upgraded it will restart the HTCondor daemons. If this happens on the central manager it will result in jobs being killed on execute nodes. To avoid this, it is best to gracefully shutdown the HTCondor pool before upgrading. The Debian package does not perform a graceful shutdown on upgrades, because there is a variety of possible procedures, where subjective appropriateness depends on the configuration and utilization of a particular HTCondor pool. Please see this page for more information on graceful shutdowns: https://htcondor-wiki.cs.wisc.edu/index.cgi/wiki?p=HowToShutDownCondor Checkpoint/Migration support ---------------------------- At this point HTCondor's standard universe is not supported by this package. However, the Debian package comes with built-in support for checkpoint/migration of vanilla universe jobs with DMTCP. This is useful for migrating running jobs between machines of a HTCondor pool without having to relink the respective binaries with HTCondor's standard universe LIBC wrapper. The main advantage of DMTCP over HTCondor's native mechanism is that it also works for scripts (interpreter sessions like Python), and closed-source systems (e.g. Matlab). The necessary shim script (a wrapper around the actual job executable) is available at /usr/lib/condor/shim_dmtcp. The htcondor-doc package comes with example submit files for self-compiled executables and system-wide installed software. A submit configuration for a job with on-demand snapshotting on a Debian cluster could look like this: # DMTCP checkpointing related boilerplate (should be applicable in most cases) universe = vanilla executable = /usr/lib/condor/shim_dmtcp should_transfer_files = YES when_to_transfer_output = ON_EXIT_OR_EVICT kill_sig = 2 output = $(CLUSTER).$(PROCESS).shimout error = $(CLUSTER).$(PROCESS).shimerr log = $(CLUSTER).$(PROCESS).log dmtcp_args = --log $(CLUSTER).$(PROCESS).shimlog --stdout $(CLUSTER).$(PROCESS).out --stderr $(CLUSTER).$(PROCESS).err dmtcp_env = DMTCP_TMPDIR=./;JALIB_STDERR_PATH=/dev/null;DMTCP_PREFIX_ID=$(CLUSTER)_$(PROCESS) # job-specific setup, uses arguments and environment defined above arguments = $(dmtcp_args) some_command some_arg1 some_arg2 environment = $(dmtcp_env) queue 1 -- Michael Hanke Tue, 31 Dez 2013 11:42:01 +0200 debian/htcondor.templates0000664000000000000000000001307712260516721012742 0ustar Template: condor/title Type: title _Description: HTCondor configuration Template: condor/wantdebconf Type: boolean Default: false _Description: Manage initial HTCondor configuration automatically? The setup for HTCondor can be handled automatically, asking a few questions to create an initial configuration appropriate for a machine that is either a member of an existing pool or a fully functional "Personal HTCondor installation". This generated initial configuration can be further extended later on. . Otherwise, HTCondor will be installed with a default configuration that needs to be customized manually. Template: condor/phonehome Type: boolean Default: false _Description: Enable submission of usage statistics? The HTCondor authors politely request that each HTCondor pool sends them periodic updates with basic information about the status of the pool. Updates include only the total number of machines, the number of jobs submitted, the number of machines running jobs, the host name of the central manager, and the name of the pool. These updates help the HTCondor Team see how HTCondor is being used around the world. Template: condor/centralmanager Type: string _Description: Address of the central manager: If this machine is intended to join an existing HTCondor pool, the address of the central manager machine has to be specified. Any address format supported by HTCondor can be used, including macro expressions. . Example: condor-manager.example.org Template: condor/daemons Type: multiselect Choices-C: SCHEDD, STARTD, COLLECTOR:NEGOTIATOR __Choices: Job submission, Job execution, Central manager Default: SCHEDD, STARTD _Description: Role of this machine in the HTCondor pool: Please specify the intended role or roles of this machine, for which the corresponding daemons will be started automatically. . A machine in a HTCondor pool can have multiple roles. In general there is one central manager and multiple nodes that run jobs. Often the central manager is also the machine from which users submit jobs. However, it is also possible to have multiple machines available for job submission. Template: condor/admin Type: string Default: root@localhost _Description: Email address of the local HTCondor administrator: The HTCondor administrator will receive error messages if something goes wrong with HTCondor on this machine. Template: condor/uiddomain Type: string _Description: user directory domain label: This label is a string that HTCondor uses to decide if a submitting machine and an execute machine share the same directory of user accounts (that is, whether UID 1000 on one machine is the same person as UID 1000 on the other). If the labels on the two machines match, HTCondor will run each job under the UID that submitted the job, and send emails about them to user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will run all jobs as user "nobody". Leaving it blank will cause HTCondor to run all jobs on this machine as user "nobody". . Any domain format supported by HTCondor can be used, including macro expressions. Example: $(FULL_HOSTNAME) Template: condor/filesystemdomain Type: string _Description: File system domain label: This label is an arbitrary string that is used to decide if a submitting machine and an execute machine share the same file system. In a dedicated cluster all machines will most likely use a shared file system and hence should use the same label. If left blank, it will automatically be set to the fully qualified hostname of the local machine, which will prevent HTCondor assuming that any two machines share a file system. . Example: my_shared_volume Template: condor/personal Type: boolean Default: true _Description: Perform a "Personal HTCondor installation"? A Personal HTCondor installation is a fully functional HTCondor pool on a single machine. HTCondor will automatically configure and advertise as many slots as it detects CPU cores on this machine. HTCondor daemons will not be available through external network interfaces. . This configuration is not appropriate if this machine is intended to be a member of a pool. Template: condor/reservedmemory Type: string _Description: Amount of physical memory to withhold from HTCondor (in MB): By default, HTCondor considers all the physical memory of a machine as available to be used by HTCondor jobs. If this value is defined, HTCondor subtracts it from the amount of memory it advertises as available. . Example (to reserve 1 GB): 1024 Template: condor/allowwrite Type: string _Description: Machines with write access to this host: All machines that are to participate in the HTCondor pool need to be listed here. This setting can be a plain comma-separated list, a domain with wildcards, or a macro expression. By default only localhost is allowed to access HTCondor daemons on this machine. . Example: *.condor-pool.example.org Template: condor/startpolicy Type: boolean Default: false _Description: Run HTCondor jobs regardless of other machine activity? By default HTCondor only starts jobs when a machine is idle, i.e. no keyboard activity or CPU load for some time. Moreover, it also suspends jobs whenever there is console activity and doesn't continue them until the machine becomes idle again. However, for a dedicated compute node or a Personal HTCondor installation it might be desirable to always start jobs as soon as they are submitted (given that resources are still available), and to run them continuously regardless of other activity on this machine. . If you plan to compose a custom policy it is best to keep HTCondor's default here. debian/libclassad-dev.install0000664000000000000000000000015312260003121013417 0ustar debian/tmp/usr/include/classad usr/include/ debian/tmp/usr/lib/libclass*.a debian/tmp/usr/lib/libclass*.so debian/htcondor-dev.docs0000664000000000000000000000004712260003121012422 0ustar debian/tmp/usr/include/condor/*.README debian/dmtcp/0000775000000000000000000000000012260003121010262 5ustar debian/dmtcp/shim_dmtcp0000775000000000000000000002661112260003121012345 0ustar #! /bin/sh # play safe set -u # TODO # Figure out what happens when a program checkpoints while slowly reading # stdin, does it restart properly? # DEFAULTS, some not sane, some sane # This first one is the default for debian installations... DMTCP_PATH=/usr/bin # This next one is a default for UW-Madison pools. It is the "release_dir". CONDOR_PATH=/unsup/condor-production # These are sane defaults. LOG="/dev/null" STDIN="/dev/null" STDOUT="/dev/null" STDERR="/dev/null" # set default checkpoint interval to zero -- not repeated snapshoting # but on-demand snapshot on vacate command CKPTINT=${DMTCP_CHECKPOINT_INTERVAL:-0} # The version of the shim script. Useful for debugging between groups using # this shim script. VERSION=0.4 SCRIPTNAME=$(basename $0) host=`/bin/hostname | /bin/sed -e 's/\.cs\.wisc\.edu//g'` ############################################################### # cmdline args ############################################################### print_help() { cat << EOT Usage: $SCRIPTNAME [OPTIONS] [] Options: -h,--help Print usage summary and option list. --version Print version information and exit. --with-dmtcp path A path to an installation of DMTCP. If not specified, it defaults to /usr/lib/dmtcp. The current working directory of the shim_script when it executes will always be tested for a DMTCP installation before using whatever is specified with --with-dmtcp regardless of its definition. The default may change in the future. --with-condor path A path to an installation of Condor-aka the "release_dir". If not specified, it defaults to /unsup/condor-production. The condor functionality the shim script utilizes is not required by the shim script, but it'll make debugging certain failures a lot easier. The default may change in the future. --log Logfile name. By default no logfile is created. --stdin File with stdin content for the job. By default no stdin is directed to the job. --stdout File to store stdout of the job. By default no stdout is captured. --stderr File to store stderr of the job. By default no stderr is captured. --ckptint= Checkpointing interval in seconds. $SCRIPTNAME also honors the DMTCP_CHECKPOINT_INTERVAL environment variable. Default: 1800 EOT } print_description() { cat << EOT Shim script for DMTCP-based checkpointing of Condor vanilla universe jobs. EOT } print_version() { cat << EOT $SCRIPTNAME $VERSION This code is under the Apache V2.0 License. It was written by Peter Keller . Additional modifications by: Michael Hanke . EOT } # Parse commandline options # Note that we use `"$@"' to let each command-line parameter expand to a # separate word. The quotes around `$@' are essential! # We need CLOPTS as the `eval set --' would nuke the return value of getopt. CLOPTS=`getopt -o h --long with-condor:,with-dmtcp:,help,version,log:,stdin:,stdout:,stderr:,ckptint: -n "$SCRIPTNAME" -- "$@"` if [ $? != 0 ] ; then echo "Terminating..." >&2 exit 1 fi # Note the quotes around `$CLOPTS': they are essential! eval set -- "$CLOPTS" while true ; do case "$1" in -h|--help) print_description; print_help; exit 0;; --version) print_version; exit 0;; --with-dmtcp) shift; DMTCP_PATH=$1; shift;; --with-condor) shift; CONDOR_PATH=$1; shift;; --log) shift; LOG=$1; shift;; --stdin) shift; STDIN=$1; shift;; --stdout) shift; STDOUT=$1; shift;; --stderr) shift; STDERR=$1; shift;; --ckptint) shift; CKPTINT=$1; shift;; --) shift ; break ;; *) echo "Internal error! ($1)"; exit 1;; esac done if [ ! $# -ge 1 ]; then printf "Need at least one argument.\n\n" print_help exit 1 fi logit() { d=`date +"%D %R:%S %Z"` echo [$host $d]: "$@" >> $LOG } logitnohdr() { echo "$@" >> $LOG } runcmd() { rc_cmd=$@ logit "running command: $rc_cmd" logit "---BEGIN STDOUT/ERR---" $rc_cmd >> $LOG 2>&1 logit "---END STDOUT/ERR---" rc_ret=$? logit "command exited with: $rc_ret" return $rc_ret } die_bad_manifest () { logit "The required DMTCP file is not present: $1" logit "This file must exist for the DMTCP shim to work properly." exit 1 } # This function asserts that all of the files we need for DMTCP are present. assert_dmtcp_manifest () { files="dmtcp_checkpoint dmtcp_coordinator dmtcp_command dmtcp_restart mtcp_restart" # Do not check the libs on Debian -- package dependency make sure they are # present and their location is differen #dmtcphijack.so #libmtcp.so logit "Checking DMTCP manifest. An install in cwd overrides default choice." for file in $files do if [ -f "./$file" ] ; then eval ${file%*.so}="./${file}" elif [ -f "${DMTCP_PATH}/$file" ]; then eval ${file%*.so}="${DMTCP_PATH}/${file}" else die_bad_manifest "$file" fi done logit "Manifest check passed." } # Try to idenitify the machine we are on well enough to debug checkpoint # permutation testing. ckptsignature() { logit "Hostname: $host" if [ -f /etc/issue ] ; then ret=`cat /etc/issue | /usr/bin/head -1` logit "Linux Flavor: $ret" else logit "Linux Flavor: Unknown" fi ret=`/bin/uname -a | /usr/bin/awk '{print $3}'` logit "Kernel: $ret" ret=`/usr/bin/gcc --version | /usr/bin/head -1` logit "GCC revision: $ret" # See if there is a checkpoint platform if [ -x "${CONDOR_PATH}/bin/condor_status" ] ; then ckptsig=`${CONDOR_PATH}/bin/condor_status -l $host 2>&1 | /bin/egrep -i '^checkpointplatform' | /usr/bin/uniq` logit "Checkpoint platform: $ckptsig" else logit "Checkpoint platform: Unknown" fi } delay() { val=${1:-3} logit "sleeping $val seconds" /bin/sleep $val } checkpoint() { logit "Soft kill signal received by $0 [pid=$$]: Starting checkpoint..." runcmd ${dmtcp_command} --quiet --port $port bc delay # when this returns, the checkpointing should be done. logit "what is the coordinator status" runcmd ${dmtcp_command} --quiet --port $port s # kill everything off. logit "killing process hierarchy (coordinator also goes away)" runcmd ${dmtcp_command} --quiet --port $port k delay # tell me if ./dmtcp_restart_script.sh is present, which is written by # the dmtcp_coordinator when I asked for the checkpoint, cause if it isn't # then that is a DMTCP bug (or full file system!) if [ -f "./dmtcp_restart_script.sh" ] ; then logit "Found dmtcp_restart_script.sh. Good!" # if it is a symlink, convert it to a real file if [ -h "./dmtcp_restart_script.sh" ] ; then logit "Converting symlink ./dmtcp_restart_script.sh to real file." if [ -x /usr/bin/readlink ] ; then realfile=`/usr/bin/readlink ./dmtcp_restart_script.sh` else realfile=`/bin/readlink ./dmtcp_restart_script.sh` fi /bin/rm ./dmtcp_restart_script.sh /bin/mv "$realfile" "./dmtcp_restart_script.sh" if [ -f "$realfile" ] ; then logit "Problem: $realfile was not converted to ./dmtcp_restart_script.sh" fi fi logit "Next invocation is restart!" else logit "Didn't find dmtcp_restart_script.sh. Next invocation is initial!" logit "This is bad and means DMTCP failed to write it, or a full fs." fi logit "About to exit 0 in signal handler after sleeping 2 seconds." logit "Checkpointing continuation on $host" logitnohdr " |" logitnohdr " V" logitnohdr " *" /bin/sleep 2 exit 0 } # If we've already checkpointed once, then return true, otherwise, false. is_restart() { if [ -f "./dmtcp_restart_script.sh" ]; then return 1 fi return 0 } ############################################################### # start ############################################################### # This goes to the stdout specified in the job.sub file, since that file # gets truncated every restart, we keep the useful information in a log file # specified to the shim script. echo "Please see the file $LOG for what happened to this job." echo "Shim Script Version: $VERSION" # run or restart the job. is_restart restart=$? # Now what are we tasked to do? if [ $restart -eq 0 ]; then logitnohdr " -" logitnohdr " |" logitnohdr " V" logit "Initial shim script (Version: $VERSION) invocation on $host" else logitnohdr " |" logitnohdr " V" logit "Resumption shim script (Version: $VERSION) invocation on $host" fi logit "Shim script start [pid: $$]" logit "STDIN: $STDIN" logit "STDOUT: $STDOUT" logit "STDERR: $STDERR" # ensure we have everything we need, otherwise bail! assert_dmtcp_manifest # WARNING: # Close the gcb inherited fd which was left open to an unlinked file when the # job executes under a gcb enabled execute node. # DMTCP croaks on it because it can't restore it. FD=`/usr/bin/env | /bin/grep CB_INHERITFILE | /bin/sed -e 's/.*=//'` if [ -n "$FD" ] ; then logit "Closing secretly inherited GCB fd $FD" IFD=`/usr/bin/expr "$FD"` eval "exec $IFD>&-" if [ $? == 1 ] ; then logit "Oops! The close didn't happen properly! Attempting to continue." else logit "GCB fd $FD closed." fi fi # What kind of a checkpoint signature does this machine have? ckptsignature # Each job will have its own dmtcp coordinator that exits when the job finishes. logit "starting the dmtcp_coordinator process" # We start it on an ephemeral port and save it for later. port=`${dmtcp_coordinator} --port 0 --exit-on-last --interval ${CKPTINT} --background 2>&1 | grep "Port:" | /bin/sed -e 's/Port://g' -e 's/[ \t]//g'` if [ $? -eq 0 ]; then logit "started dmtcp_coordinator on port $port with checkpoint interval ${CKPTINT}" else logit "could not start dmtcp_coordinator" fi # see if the port if defined if [ "x$port" = "x" ]; then logit "dmtcp_coordinator port is unknown! Aborting." exit 1 fi # give it time to wake up. delay 2 # catch sigint, checkpoint and exit on vacate. logit "Setting signal trap for SIGINT [2]" trap checkpoint 2 if [ $restart -eq 0 ]; then logit "running application for the first time" # Don't run this with runcmd, since I want the stdout/err of the process to # flow through this shell. # XXX if there are literal spaces in the arguments, this screws up! ${dmtcp_checkpoint} --port $port -j "$@" <$STDIN 1>$STDOUT 2>$STDERR & wait %1 ret=$? logit "wait returned with value $ret!" if [ $ret -gt 128 ] ; then logit "got vacate signal, waiting until signal handler exit" while [ true ] do : done else logit "Removing DMTCP checkpoint files" rm -f dmtcpConTable.${DMTCP_PREFIX_ID}* fi logit "Program terminated." exit $ret else # We inherit DMTCP_PREFIX_ID from the environment logit "Restarting application: " DMTCP_PORT=$port DMTCP_HOST=$host DMTCP_RESTART_DIR=./ # This next line is because the dmtcp_restart_script.sh program expects # to find dmtcp_restart in the path. PATH=.:$PATH export DMTCP_PORT export DMTCP_HOST export DMTCP_RESTART_DIR export PATH logit "PATH=.:$PATH" logit "DMTCP_PORT=$DMTCP_PORT" logit "DMTCP_HOST=$DMTCP_HOST" logit "DMTCP_RESTART_DIR=$DMTCP_RESTART_DIR" logit "./dmtcp_restart_script.sh" ./dmtcp_restart_script.sh & wait %1 ret=$? logit "Application returned: $ret" logit "Removing DMTCP checkpoint files" rm -f ckpt*${DMTCP_PREFIX_ID}*.dmtcp rm -f dmtcp*Table*${DMTCP_PREFIX_ID}* rm -f dmtcp*Map*${DMTCP_PREFIX_ID}* rm -f dmtcp*List*${DMTCP_PREFIX_ID}* rm -f dmtcp_restart_script.sh exit $ret; fi logit "Should never get here!" exit 1; debian/dmtcp/out.template0000664000000000000000000017772712260003121012653 0ustar Dumping stdin: stdin: #include stdin: #include stdin: #include stdin: #include stdin: #include stdin: stdin: int main(int argc, char *argv[]) stdin: { stdin: int delay = 10; stdin: int i; stdin: char line[1024]; stdin: char *file = "./output_file"; stdin: FILE *fout = NULL; stdin: stdin: if (argc == 2) { stdin: delay = atoi(argv[1]); stdin: } stdin: stdin: if (argc == 3) { stdin: delay = atoi(argv[1]); stdin: file = argv[2]; stdin: } stdin: stdin: if (delay < 10) { stdin: printf("Delay has a minimum of 10 seconds\n"); stdin: fflush(NULL); stdin: delay = 10; stdin: } stdin: stdin: fout = fopen(file, "a"); stdin: if (fout == NULL) { stdin: printf("Can't open output file! %d(%s)\n", errno, strerror(errno)); stdin: } stdin: stdin: /* If there is any stdin, copy it to output, then start the work when stdin: stdin closes */ stdin: printf("Dumping stdin:\n"); stdin: fprintf(fout, "Dumping stdin:\n"); stdin: fflush(NULL); stdin: while(fgets(line, 1024, stdin) != NULL) { stdin: printf("stdin: %s", line); stdin: fprintf(fout, "stdin: %s", line); stdin: fflush(NULL); stdin: } stdin: stdin: printf("Doing work for %d seconds\n", delay); stdin: fprintf(fout, "Doing work for %d seconds\n", delay); stdin: fflush(NULL); stdin: stdin: for (i = 0; i < delay; i++) { stdin: printf("i = %d\n", i); stdin: fprintf(fout, "i = %d\n", i); stdin: fflush(NULL); stdin: sleep(1); stdin: } stdin: stdin: printf("Done.\n"); stdin: fprintf(fout, "Done.\n"); stdin: fflush(NULL); stdin: stdin: if (fclose(fout) < 0) { stdin: printf("Failed to close fout? %d(%s)\n", errno, strerror(errno)); stdin: fflush(NULL); stdin: } stdin: stdin: return 0; stdin: } Doing work for 7200 seconds i = 0 i = 1 i = 2 i = 3 i = 4 i = 5 i = 6 i = 7 i = 8 i = 9 i = 10 i = 11 i = 12 i = 13 i = 14 i = 15 i = 16 i = 17 i = 18 i = 19 i = 20 i = 21 i = 22 i = 23 i = 24 i = 25 i = 26 i = 27 i = 28 i = 29 i = 30 i = 31 i = 32 i = 33 i = 34 i = 35 i = 36 i = 37 i = 38 i = 39 i = 40 i = 41 i = 42 i = 43 i = 44 i = 45 i = 46 i = 47 i = 48 i = 49 i = 50 i = 51 i = 52 i = 53 i = 54 i = 55 i = 56 i = 57 i = 58 i = 59 i = 60 i = 61 i = 62 i = 63 i = 64 i = 65 i = 66 i = 67 i = 68 i = 69 i = 70 i = 71 i = 72 i = 73 i = 74 i = 75 i = 76 i = 77 i = 78 i = 79 i = 80 i = 81 i = 82 i = 83 i = 84 i = 85 i = 86 i = 87 i = 88 i = 89 i = 90 i = 91 i = 92 i = 93 i = 94 i = 95 i = 96 i = 97 i = 98 i = 99 i = 100 i = 101 i = 102 i = 103 i = 104 i = 105 i = 106 i = 107 i = 108 i = 109 i = 110 i = 111 i = 112 i = 113 i = 114 i = 115 i = 116 i = 117 i = 118 i = 119 i = 120 i = 121 i = 122 i = 123 i = 124 i = 125 i = 126 i = 127 i = 128 i = 129 i = 130 i = 131 i = 132 i = 133 i = 134 i = 135 i = 136 i = 137 i = 138 i = 139 i = 140 i = 141 i = 142 i = 143 i = 144 i = 145 i = 146 i = 147 i = 148 i = 149 i = 150 i = 151 i = 152 i = 153 i = 154 i = 155 i = 156 i = 157 i = 158 i = 159 i = 160 i = 161 i = 162 i = 163 i = 164 i = 165 i = 166 i = 167 i = 168 i = 169 i = 170 i = 171 i = 172 i = 173 i = 174 i = 175 i = 176 i = 177 i = 178 i = 179 i = 180 i = 181 i = 182 i = 183 i = 184 i = 185 i = 186 i = 187 i = 188 i = 189 i = 190 i = 191 i = 192 i = 193 i = 194 i = 195 i = 196 i = 197 i = 198 i = 199 i = 200 i = 201 i = 202 i = 203 i = 204 i = 205 i = 206 i = 207 i = 208 i = 209 i = 210 i = 211 i = 212 i = 213 i = 214 i = 215 i = 216 i = 217 i = 218 i = 219 i = 220 i = 221 i = 222 i = 223 i = 224 i = 225 i = 226 i = 227 i = 228 i = 229 i = 230 i = 231 i = 232 i = 233 i = 234 i = 235 i = 236 i = 237 i = 238 i = 239 i = 240 i = 241 i = 242 i = 243 i = 244 i = 245 i = 246 i = 247 i = 248 i = 249 i = 250 i = 251 i = 252 i = 253 i = 254 i = 255 i = 256 i = 257 i = 258 i = 259 i = 260 i = 261 i = 262 i = 263 i = 264 i = 265 i = 266 i = 267 i = 268 i = 269 i = 270 i = 271 i = 272 i = 273 i = 274 i = 275 i = 276 i = 277 i = 278 i = 279 i = 280 i = 281 i = 282 i = 283 i = 284 i = 285 i = 286 i = 287 i = 288 i = 289 i = 290 i = 291 i = 292 i = 293 i = 294 i = 295 i = 296 i = 297 i = 298 i = 299 i = 300 i = 301 i = 302 i = 303 i = 304 i = 305 i = 306 i = 307 i = 308 i = 309 i = 310 i = 311 i = 312 i = 313 i = 314 i = 315 i = 316 i = 317 i = 318 i = 319 i = 320 i = 321 i = 322 i = 323 i = 324 i = 325 i = 326 i = 327 i = 328 i = 329 i = 330 i = 331 i = 332 i = 333 i = 334 i = 335 i = 336 i = 337 i = 338 i = 339 i = 340 i = 341 i = 342 i = 343 i = 344 i = 345 i = 346 i = 347 i = 348 i = 349 i = 350 i = 351 i = 352 i = 353 i = 354 i = 355 i = 356 i = 357 i = 358 i = 359 i = 360 i = 361 i = 362 i = 363 i = 364 i = 365 i = 366 i = 367 i = 368 i = 369 i = 370 i = 371 i = 372 i = 373 i = 374 i = 375 i = 376 i = 377 i = 378 i = 379 i = 380 i = 381 i = 382 i = 383 i = 384 i = 385 i = 386 i = 387 i = 388 i = 389 i = 390 i = 391 i = 392 i = 393 i = 394 i = 395 i = 396 i = 397 i = 398 i = 399 i = 400 i = 401 i = 402 i = 403 i = 404 i = 405 i = 406 i = 407 i = 408 i = 409 i = 410 i = 411 i = 412 i = 413 i = 414 i = 415 i = 416 i = 417 i = 418 i = 419 i = 420 i = 421 i = 422 i = 423 i = 424 i = 425 i = 426 i = 427 i = 428 i = 429 i = 430 i = 431 i = 432 i = 433 i = 434 i = 435 i = 436 i = 437 i = 438 i = 439 i = 440 i = 441 i = 442 i = 443 i = 444 i = 445 i = 446 i = 447 i = 448 i = 449 i = 450 i = 451 i = 452 i = 453 i = 454 i = 455 i = 456 i = 457 i = 458 i = 459 i = 460 i = 461 i = 462 i = 463 i = 464 i = 465 i = 466 i = 467 i = 468 i = 469 i = 470 i = 471 i = 472 i = 473 i = 474 i = 475 i = 476 i = 477 i = 478 i = 479 i = 480 i = 481 i = 482 i = 483 i = 484 i = 485 i = 486 i = 487 i = 488 i = 489 i = 490 i = 491 i = 492 i = 493 i = 494 i = 495 i = 496 i = 497 i = 498 i = 499 i = 500 i = 501 i = 502 i = 503 i = 504 i = 505 i = 506 i = 507 i = 508 i = 509 i = 510 i = 511 i = 512 i = 513 i = 514 i = 515 i = 516 i = 517 i = 518 i = 519 i = 520 i = 521 i = 522 i = 523 i = 524 i = 525 i = 526 i = 527 i = 528 i = 529 i = 530 i = 531 i = 532 i = 533 i = 534 i = 535 i = 536 i = 537 i = 538 i = 539 i = 540 i = 541 i = 542 i = 543 i = 544 i = 545 i = 546 i = 547 i = 548 i = 549 i = 550 i = 551 i = 552 i = 553 i = 554 i = 555 i = 556 i = 557 i = 558 i = 559 i = 560 i = 561 i = 562 i = 563 i = 564 i = 565 i = 566 i = 567 i = 568 i = 569 i = 570 i = 571 i = 572 i = 573 i = 574 i = 575 i = 576 i = 577 i = 578 i = 579 i = 580 i = 581 i = 582 i = 583 i = 584 i = 585 i = 586 i = 587 i = 588 i = 589 i = 590 i = 591 i = 592 i = 593 i = 594 i = 595 i = 596 i = 597 i = 598 i = 599 i = 600 i = 601 i = 602 i = 603 i = 604 i = 605 i = 606 i = 607 i = 608 i = 609 i = 610 i = 611 i = 612 i = 613 i = 614 i = 615 i = 616 i = 617 i = 618 i = 619 i = 620 i = 621 i = 622 i = 623 i = 624 i = 625 i = 626 i = 627 i = 628 i = 629 i = 630 i = 631 i = 632 i = 633 i = 634 i = 635 i = 636 i = 637 i = 638 i = 639 i = 640 i = 641 i = 642 i = 643 i = 644 i = 645 i = 646 i = 647 i = 648 i = 649 i = 650 i = 651 i = 652 i = 653 i = 654 i = 655 i = 656 i = 657 i = 658 i = 659 i = 660 i = 661 i = 662 i = 663 i = 664 i = 665 i = 666 i = 667 i = 668 i = 669 i = 670 i = 671 i = 672 i = 673 i = 674 i = 675 i = 676 i = 677 i = 678 i = 679 i = 680 i = 681 i = 682 i = 683 i = 684 i = 685 i = 686 i = 687 i = 688 i = 689 i = 690 i = 691 i = 692 i = 693 i = 694 i = 695 i = 696 i = 697 i = 698 i = 699 i = 700 i = 701 i = 702 i = 703 i = 704 i = 705 i = 706 i = 707 i = 708 i = 709 i = 710 i = 711 i = 712 i = 713 i = 714 i = 715 i = 716 i = 717 i = 718 i = 719 i = 720 i = 721 i = 722 i = 723 i = 724 i = 725 i = 726 i = 727 i = 728 i = 729 i = 730 i = 731 i = 732 i = 733 i = 734 i = 735 i = 736 i = 737 i = 738 i = 739 i = 740 i = 741 i = 742 i = 743 i = 744 i = 745 i = 746 i = 747 i = 748 i = 749 i = 750 i = 751 i = 752 i = 753 i = 754 i = 755 i = 756 i = 757 i = 758 i = 759 i = 760 i = 761 i = 762 i = 763 i = 764 i = 765 i = 766 i = 767 i = 768 i = 769 i = 770 i = 771 i = 772 i = 773 i = 774 i = 775 i = 776 i = 777 i = 778 i = 779 i = 780 i = 781 i = 782 i = 783 i = 784 i = 785 i = 786 i = 787 i = 788 i = 789 i = 790 i = 791 i = 792 i = 793 i = 794 i = 795 i = 796 i = 797 i = 798 i = 799 i = 800 i = 801 i = 802 i = 803 i = 804 i = 805 i = 806 i = 807 i = 808 i = 809 i = 810 i = 811 i = 812 i = 813 i = 814 i = 815 i = 816 i = 817 i = 818 i = 819 i = 820 i = 821 i = 822 i = 823 i = 824 i = 825 i = 826 i = 827 i = 828 i = 829 i = 830 i = 831 i = 832 i = 833 i = 834 i = 835 i = 836 i = 837 i = 838 i = 839 i = 840 i = 841 i = 842 i = 843 i = 844 i = 845 i = 846 i = 847 i = 848 i = 849 i = 850 i = 851 i = 852 i = 853 i = 854 i = 855 i = 856 i = 857 i = 858 i = 859 i = 860 i = 861 i = 862 i = 863 i = 864 i = 865 i = 866 i = 867 i = 868 i = 869 i = 870 i = 871 i = 872 i = 873 i = 874 i = 875 i = 876 i = 877 i = 878 i = 879 i = 880 i = 881 i = 882 i = 883 i = 884 i = 885 i = 886 i = 887 i = 888 i = 889 i = 890 i = 891 i = 892 i = 893 i = 894 i = 895 i = 896 i = 897 i = 898 i = 899 i = 900 i = 901 i = 902 i = 903 i = 904 i = 905 i = 906 i = 907 i = 908 i = 909 i = 910 i = 911 i = 912 i = 913 i = 914 i = 915 i = 916 i = 917 i = 918 i = 919 i = 920 i = 921 i = 922 i = 923 i = 924 i = 925 i = 926 i = 927 i = 928 i = 929 i = 930 i = 931 i = 932 i = 933 i = 934 i = 935 i = 936 i = 937 i = 938 i = 939 i = 940 i = 941 i = 942 i = 943 i = 944 i = 945 i = 946 i = 947 i = 948 i = 949 i = 950 i = 951 i = 952 i = 953 i = 954 i = 955 i = 956 i = 957 i = 958 i = 959 i = 960 i = 961 i = 962 i = 963 i = 964 i = 965 i = 966 i = 967 i = 968 i = 969 i = 970 i = 971 i = 972 i = 973 i = 974 i = 975 i = 976 i = 977 i = 978 i = 979 i = 980 i = 981 i = 982 i = 983 i = 984 i = 985 i = 986 i = 987 i = 988 i = 989 i = 990 i = 991 i = 992 i = 993 i = 994 i = 995 i = 996 i = 997 i = 998 i = 999 i = 1000 i = 1001 i = 1002 i = 1003 i = 1004 i = 1005 i = 1006 i = 1007 i = 1008 i = 1009 i = 1010 i = 1011 i = 1012 i = 1013 i = 1014 i = 1015 i = 1016 i = 1017 i = 1018 i = 1019 i = 1020 i = 1021 i = 1022 i = 1023 i = 1024 i = 1025 i = 1026 i = 1027 i = 1028 i = 1029 i = 1030 i = 1031 i = 1032 i = 1033 i = 1034 i = 1035 i = 1036 i = 1037 i = 1038 i = 1039 i = 1040 i = 1041 i = 1042 i = 1043 i = 1044 i = 1045 i = 1046 i = 1047 i = 1048 i = 1049 i = 1050 i = 1051 i = 1052 i = 1053 i = 1054 i = 1055 i = 1056 i = 1057 i = 1058 i = 1059 i = 1060 i = 1061 i = 1062 i = 1063 i = 1064 i = 1065 i = 1066 i = 1067 i = 1068 i = 1069 i = 1070 i = 1071 i = 1072 i = 1073 i = 1074 i = 1075 i = 1076 i = 1077 i = 1078 i = 1079 i = 1080 i = 1081 i = 1082 i = 1083 i = 1084 i = 1085 i = 1086 i = 1087 i = 1088 i = 1089 i = 1090 i = 1091 i = 1092 i = 1093 i = 1094 i = 1095 i = 1096 i = 1097 i = 1098 i = 1099 i = 1100 i = 1101 i = 1102 i = 1103 i = 1104 i = 1105 i = 1106 i = 1107 i = 1108 i = 1109 i = 1110 i = 1111 i = 1112 i = 1113 i = 1114 i = 1115 i = 1116 i = 1117 i = 1118 i = 1119 i = 1120 i = 1121 i = 1122 i = 1123 i = 1124 i = 1125 i = 1126 i = 1127 i = 1128 i = 1129 i = 1130 i = 1131 i = 1132 i = 1133 i = 1134 i = 1135 i = 1136 i = 1137 i = 1138 i = 1139 i = 1140 i = 1141 i = 1142 i = 1143 i = 1144 i = 1145 i = 1146 i = 1147 i = 1148 i = 1149 i = 1150 i = 1151 i = 1152 i = 1153 i = 1154 i = 1155 i = 1156 i = 1157 i = 1158 i = 1159 i = 1160 i = 1161 i = 1162 i = 1163 i = 1164 i = 1165 i = 1166 i = 1167 i = 1168 i = 1169 i = 1170 i = 1171 i = 1172 i = 1173 i = 1174 i = 1175 i = 1176 i = 1177 i = 1178 i = 1179 i = 1180 i = 1181 i = 1182 i = 1183 i = 1184 i = 1185 i = 1186 i = 1187 i = 1188 i = 1189 i = 1190 i = 1191 i = 1192 i = 1193 i = 1194 i = 1195 i = 1196 i = 1197 i = 1198 i = 1199 i = 1200 i = 1201 i = 1202 i = 1203 i = 1204 i = 1205 i = 1206 i = 1207 i = 1208 i = 1209 i = 1210 i = 1211 i = 1212 i = 1213 i = 1214 i = 1215 i = 1216 i = 1217 i = 1218 i = 1219 i = 1220 i = 1221 i = 1222 i = 1223 i = 1224 i = 1225 i = 1226 i = 1227 i = 1228 i = 1229 i = 1230 i = 1231 i = 1232 i = 1233 i = 1234 i = 1235 i = 1236 i = 1237 i = 1238 i = 1239 i = 1240 i = 1241 i = 1242 i = 1243 i = 1244 i = 1245 i = 1246 i = 1247 i = 1248 i = 1249 i = 1250 i = 1251 i = 1252 i = 1253 i = 1254 i = 1255 i = 1256 i = 1257 i = 1258 i = 1259 i = 1260 i = 1261 i = 1262 i = 1263 i = 1264 i = 1265 i = 1266 i = 1267 i = 1268 i = 1269 i = 1270 i = 1271 i = 1272 i = 1273 i = 1274 i = 1275 i = 1276 i = 1277 i = 1278 i = 1279 i = 1280 i = 1281 i = 1282 i = 1283 i = 1284 i = 1285 i = 1286 i = 1287 i = 1288 i = 1289 i = 1290 i = 1291 i = 1292 i = 1293 i = 1294 i = 1295 i = 1296 i = 1297 i = 1298 i = 1299 i = 1300 i = 1301 i = 1302 i = 1303 i = 1304 i = 1305 i = 1306 i = 1307 i = 1308 i = 1309 i = 1310 i = 1311 i = 1312 i = 1313 i = 1314 i = 1315 i = 1316 i = 1317 i = 1318 i = 1319 i = 1320 i = 1321 i = 1322 i = 1323 i = 1324 i = 1325 i = 1326 i = 1327 i = 1328 i = 1329 i = 1330 i = 1331 i = 1332 i = 1333 i = 1334 i = 1335 i = 1336 i = 1337 i = 1338 i = 1339 i = 1340 i = 1341 i = 1342 i = 1343 i = 1344 i = 1345 i = 1346 i = 1347 i = 1348 i = 1349 i = 1350 i = 1351 i = 1352 i = 1353 i = 1354 i = 1355 i = 1356 i = 1357 i = 1358 i = 1359 i = 1360 i = 1361 i = 1362 i = 1363 i = 1364 i = 1365 i = 1366 i = 1367 i = 1368 i = 1369 i = 1370 i = 1371 i = 1372 i = 1373 i = 1374 i = 1375 i = 1376 i = 1377 i = 1378 i = 1379 i = 1380 i = 1381 i = 1382 i = 1383 i = 1384 i = 1385 i = 1386 i = 1387 i = 1388 i = 1389 i = 1390 i = 1391 i = 1392 i = 1393 i = 1394 i = 1395 i = 1396 i = 1397 i = 1398 i = 1399 i = 1400 i = 1401 i = 1402 i = 1403 i = 1404 i = 1405 i = 1406 i = 1407 i = 1408 i = 1409 i = 1410 i = 1411 i = 1412 i = 1413 i = 1414 i = 1415 i = 1416 i = 1417 i = 1418 i = 1419 i = 1420 i = 1421 i = 1422 i = 1423 i = 1424 i = 1425 i = 1426 i = 1427 i = 1428 i = 1429 i = 1430 i = 1431 i = 1432 i = 1433 i = 1434 i = 1435 i = 1436 i = 1437 i = 1438 i = 1439 i = 1440 i = 1441 i = 1442 i = 1443 i = 1444 i = 1445 i = 1446 i = 1447 i = 1448 i = 1449 i = 1450 i = 1451 i = 1452 i = 1453 i = 1454 i = 1455 i = 1456 i = 1457 i = 1458 i = 1459 i = 1460 i = 1461 i = 1462 i = 1463 i = 1464 i = 1465 i = 1466 i = 1467 i = 1468 i = 1469 i = 1470 i = 1471 i = 1472 i = 1473 i = 1474 i = 1475 i = 1476 i = 1477 i = 1478 i = 1479 i = 1480 i = 1481 i = 1482 i = 1483 i = 1484 i = 1485 i = 1486 i = 1487 i = 1488 i = 1489 i = 1490 i = 1491 i = 1492 i = 1493 i = 1494 i = 1495 i = 1496 i = 1497 i = 1498 i = 1499 i = 1500 i = 1501 i = 1502 i = 1503 i = 1504 i = 1505 i = 1506 i = 1507 i = 1508 i = 1509 i = 1510 i = 1511 i = 1512 i = 1513 i = 1514 i = 1515 i = 1516 i = 1517 i = 1518 i = 1519 i = 1520 i = 1521 i = 1522 i = 1523 i = 1524 i = 1525 i = 1526 i = 1527 i = 1528 i = 1529 i = 1530 i = 1531 i = 1532 i = 1533 i = 1534 i = 1535 i = 1536 i = 1537 i = 1538 i = 1539 i = 1540 i = 1541 i = 1542 i = 1543 i = 1544 i = 1545 i = 1546 i = 1547 i = 1548 i = 1549 i = 1550 i = 1551 i = 1552 i = 1553 i = 1554 i = 1555 i = 1556 i = 1557 i = 1558 i = 1559 i = 1560 i = 1561 i = 1562 i = 1563 i = 1564 i = 1565 i = 1566 i = 1567 i = 1568 i = 1569 i = 1570 i = 1571 i = 1572 i = 1573 i = 1574 i = 1575 i = 1576 i = 1577 i = 1578 i = 1579 i = 1580 i = 1581 i = 1582 i = 1583 i = 1584 i = 1585 i = 1586 i = 1587 i = 1588 i = 1589 i = 1590 i = 1591 i = 1592 i = 1593 i = 1594 i = 1595 i = 1596 i = 1597 i = 1598 i = 1599 i = 1600 i = 1601 i = 1602 i = 1603 i = 1604 i = 1605 i = 1606 i = 1607 i = 1608 i = 1609 i = 1610 i = 1611 i = 1612 i = 1613 i = 1614 i = 1615 i = 1616 i = 1617 i = 1618 i = 1619 i = 1620 i = 1621 i = 1622 i = 1623 i = 1624 i = 1625 i = 1626 i = 1627 i = 1628 i = 1629 i = 1630 i = 1631 i = 1632 i = 1633 i = 1634 i = 1635 i = 1636 i = 1637 i = 1638 i = 1639 i = 1640 i = 1641 i = 1642 i = 1643 i = 1644 i = 1645 i = 1646 i = 1647 i = 1648 i = 1649 i = 1650 i = 1651 i = 1652 i = 1653 i = 1654 i = 1655 i = 1656 i = 1657 i = 1658 i = 1659 i = 1660 i = 1661 i = 1662 i = 1663 i = 1664 i = 1665 i = 1666 i = 1667 i = 1668 i = 1669 i = 1670 i = 1671 i = 1672 i = 1673 i = 1674 i = 1675 i = 1676 i = 1677 i = 1678 i = 1679 i = 1680 i = 1681 i = 1682 i = 1683 i = 1684 i = 1685 i = 1686 i = 1687 i = 1688 i = 1689 i = 1690 i = 1691 i = 1692 i = 1693 i = 1694 i = 1695 i = 1696 i = 1697 i = 1698 i = 1699 i = 1700 i = 1701 i = 1702 i = 1703 i = 1704 i = 1705 i = 1706 i = 1707 i = 1708 i = 1709 i = 1710 i = 1711 i = 1712 i = 1713 i = 1714 i = 1715 i = 1716 i = 1717 i = 1718 i = 1719 i = 1720 i = 1721 i = 1722 i = 1723 i = 1724 i = 1725 i = 1726 i = 1727 i = 1728 i = 1729 i = 1730 i = 1731 i = 1732 i = 1733 i = 1734 i = 1735 i = 1736 i = 1737 i = 1738 i = 1739 i = 1740 i = 1741 i = 1742 i = 1743 i = 1744 i = 1745 i = 1746 i = 1747 i = 1748 i = 1749 i = 1750 i = 1751 i = 1752 i = 1753 i = 1754 i = 1755 i = 1756 i = 1757 i = 1758 i = 1759 i = 1760 i = 1761 i = 1762 i = 1763 i = 1764 i = 1765 i = 1766 i = 1767 i = 1768 i = 1769 i = 1770 i = 1771 i = 1772 i = 1773 i = 1774 i = 1775 i = 1776 i = 1777 i = 1778 i = 1779 i = 1780 i = 1781 i = 1782 i = 1783 i = 1784 i = 1785 i = 1786 i = 1787 i = 1788 i = 1789 i = 1790 i = 1791 i = 1792 i = 1793 i = 1794 i = 1795 i = 1796 i = 1797 i = 1798 i = 1799 i = 1800 i = 1801 i = 1802 i = 1803 i = 1804 i = 1805 i = 1806 i = 1807 i = 1808 i = 1809 i = 1810 i = 1811 i = 1812 i = 1813 i = 1814 i = 1815 i = 1816 i = 1817 i = 1818 i = 1819 i = 1820 i = 1821 i = 1822 i = 1823 i = 1824 i = 1825 i = 1826 i = 1827 i = 1828 i = 1829 i = 1830 i = 1831 i = 1832 i = 1833 i = 1834 i = 1835 i = 1836 i = 1837 i = 1838 i = 1839 i = 1840 i = 1841 i = 1842 i = 1843 i = 1844 i = 1845 i = 1846 i = 1847 i = 1848 i = 1849 i = 1850 i = 1851 i = 1852 i = 1853 i = 1854 i = 1855 i = 1856 i = 1857 i = 1858 i = 1859 i = 1860 i = 1861 i = 1862 i = 1863 i = 1864 i = 1865 i = 1866 i = 1867 i = 1868 i = 1869 i = 1870 i = 1871 i = 1872 i = 1873 i = 1874 i = 1875 i = 1876 i = 1877 i = 1878 i = 1879 i = 1880 i = 1881 i = 1882 i = 1883 i = 1884 i = 1885 i = 1886 i = 1887 i = 1888 i = 1889 i = 1890 i = 1891 i = 1892 i = 1893 i = 1894 i = 1895 i = 1896 i = 1897 i = 1898 i = 1899 i = 1900 i = 1901 i = 1902 i = 1903 i = 1904 i = 1905 i = 1906 i = 1907 i = 1908 i = 1909 i = 1910 i = 1911 i = 1912 i = 1913 i = 1914 i = 1915 i = 1916 i = 1917 i = 1918 i = 1919 i = 1920 i = 1921 i = 1922 i = 1923 i = 1924 i = 1925 i = 1926 i = 1927 i = 1928 i = 1929 i = 1930 i = 1931 i = 1932 i = 1933 i = 1934 i = 1935 i = 1936 i = 1937 i = 1938 i = 1939 i = 1940 i = 1941 i = 1942 i = 1943 i = 1944 i = 1945 i = 1946 i = 1947 i = 1948 i = 1949 i = 1950 i = 1951 i = 1952 i = 1953 i = 1954 i = 1955 i = 1956 i = 1957 i = 1958 i = 1959 i = 1960 i = 1961 i = 1962 i = 1963 i = 1964 i = 1965 i = 1966 i = 1967 i = 1968 i = 1969 i = 1970 i = 1971 i = 1972 i = 1973 i = 1974 i = 1975 i = 1976 i = 1977 i = 1978 i = 1979 i = 1980 i = 1981 i = 1982 i = 1983 i = 1984 i = 1985 i = 1986 i = 1987 i = 1988 i = 1989 i = 1990 i = 1991 i = 1992 i = 1993 i = 1994 i = 1995 i = 1996 i = 1997 i = 1998 i = 1999 i = 2000 i = 2001 i = 2002 i = 2003 i = 2004 i = 2005 i = 2006 i = 2007 i = 2008 i = 2009 i = 2010 i = 2011 i = 2012 i = 2013 i = 2014 i = 2015 i = 2016 i = 2017 i = 2018 i = 2019 i = 2020 i = 2021 i = 2022 i = 2023 i = 2024 i = 2025 i = 2026 i = 2027 i = 2028 i = 2029 i = 2030 i = 2031 i = 2032 i = 2033 i = 2034 i = 2035 i = 2036 i = 2037 i = 2038 i = 2039 i = 2040 i = 2041 i = 2042 i = 2043 i = 2044 i = 2045 i = 2046 i = 2047 i = 2048 i = 2049 i = 2050 i = 2051 i = 2052 i = 2053 i = 2054 i = 2055 i = 2056 i = 2057 i = 2058 i = 2059 i = 2060 i = 2061 i = 2062 i = 2063 i = 2064 i = 2065 i = 2066 i = 2067 i = 2068 i = 2069 i = 2070 i = 2071 i = 2072 i = 2073 i = 2074 i = 2075 i = 2076 i = 2077 i = 2078 i = 2079 i = 2080 i = 2081 i = 2082 i = 2083 i = 2084 i = 2085 i = 2086 i = 2087 i = 2088 i = 2089 i = 2090 i = 2091 i = 2092 i = 2093 i = 2094 i = 2095 i = 2096 i = 2097 i = 2098 i = 2099 i = 2100 i = 2101 i = 2102 i = 2103 i = 2104 i = 2105 i = 2106 i = 2107 i = 2108 i = 2109 i = 2110 i = 2111 i = 2112 i = 2113 i = 2114 i = 2115 i = 2116 i = 2117 i = 2118 i = 2119 i = 2120 i = 2121 i = 2122 i = 2123 i = 2124 i = 2125 i = 2126 i = 2127 i = 2128 i = 2129 i = 2130 i = 2131 i = 2132 i = 2133 i = 2134 i = 2135 i = 2136 i = 2137 i = 2138 i = 2139 i = 2140 i = 2141 i = 2142 i = 2143 i = 2144 i = 2145 i = 2146 i = 2147 i = 2148 i = 2149 i = 2150 i = 2151 i = 2152 i = 2153 i = 2154 i = 2155 i = 2156 i = 2157 i = 2158 i = 2159 i = 2160 i = 2161 i = 2162 i = 2163 i = 2164 i = 2165 i = 2166 i = 2167 i = 2168 i = 2169 i = 2170 i = 2171 i = 2172 i = 2173 i = 2174 i = 2175 i = 2176 i = 2177 i = 2178 i = 2179 i = 2180 i = 2181 i = 2182 i = 2183 i = 2184 i = 2185 i = 2186 i = 2187 i = 2188 i = 2189 i = 2190 i = 2191 i = 2192 i = 2193 i = 2194 i = 2195 i = 2196 i = 2197 i = 2198 i = 2199 i = 2200 i = 2201 i = 2202 i = 2203 i = 2204 i = 2205 i = 2206 i = 2207 i = 2208 i = 2209 i = 2210 i = 2211 i = 2212 i = 2213 i = 2214 i = 2215 i = 2216 i = 2217 i = 2218 i = 2219 i = 2220 i = 2221 i = 2222 i = 2223 i = 2224 i = 2225 i = 2226 i = 2227 i = 2228 i = 2229 i = 2230 i = 2231 i = 2232 i = 2233 i = 2234 i = 2235 i = 2236 i = 2237 i = 2238 i = 2239 i = 2240 i = 2241 i = 2242 i = 2243 i = 2244 i = 2245 i = 2246 i = 2247 i = 2248 i = 2249 i = 2250 i = 2251 i = 2252 i = 2253 i = 2254 i = 2255 i = 2256 i = 2257 i = 2258 i = 2259 i = 2260 i = 2261 i = 2262 i = 2263 i = 2264 i = 2265 i = 2266 i = 2267 i = 2268 i = 2269 i = 2270 i = 2271 i = 2272 i = 2273 i = 2274 i = 2275 i = 2276 i = 2277 i = 2278 i = 2279 i = 2280 i = 2281 i = 2282 i = 2283 i = 2284 i = 2285 i = 2286 i = 2287 i = 2288 i = 2289 i = 2290 i = 2291 i = 2292 i = 2293 i = 2294 i = 2295 i = 2296 i = 2297 i = 2298 i = 2299 i = 2300 i = 2301 i = 2302 i = 2303 i = 2304 i = 2305 i = 2306 i = 2307 i = 2308 i = 2309 i = 2310 i = 2311 i = 2312 i = 2313 i = 2314 i = 2315 i = 2316 i = 2317 i = 2318 i = 2319 i = 2320 i = 2321 i = 2322 i = 2323 i = 2324 i = 2325 i = 2326 i = 2327 i = 2328 i = 2329 i = 2330 i = 2331 i = 2332 i = 2333 i = 2334 i = 2335 i = 2336 i = 2337 i = 2338 i = 2339 i = 2340 i = 2341 i = 2342 i = 2343 i = 2344 i = 2345 i = 2346 i = 2347 i = 2348 i = 2349 i = 2350 i = 2351 i = 2352 i = 2353 i = 2354 i = 2355 i = 2356 i = 2357 i = 2358 i = 2359 i = 2360 i = 2361 i = 2362 i = 2363 i = 2364 i = 2365 i = 2366 i = 2367 i = 2368 i = 2369 i = 2370 i = 2371 i = 2372 i = 2373 i = 2374 i = 2375 i = 2376 i = 2377 i = 2378 i = 2379 i = 2380 i = 2381 i = 2382 i = 2383 i = 2384 i = 2385 i = 2386 i = 2387 i = 2388 i = 2389 i = 2390 i = 2391 i = 2392 i = 2393 i = 2394 i = 2395 i = 2396 i = 2397 i = 2398 i = 2399 i = 2400 i = 2401 i = 2402 i = 2403 i = 2404 i = 2405 i = 2406 i = 2407 i = 2408 i = 2409 i = 2410 i = 2411 i = 2412 i = 2413 i = 2414 i = 2415 i = 2416 i = 2417 i = 2418 i = 2419 i = 2420 i = 2421 i = 2422 i = 2423 i = 2424 i = 2425 i = 2426 i = 2427 i = 2428 i = 2429 i = 2430 i = 2431 i = 2432 i = 2433 i = 2434 i = 2435 i = 2436 i = 2437 i = 2438 i = 2439 i = 2440 i = 2441 i = 2442 i = 2443 i = 2444 i = 2445 i = 2446 i = 2447 i = 2448 i = 2449 i = 2450 i = 2451 i = 2452 i = 2453 i = 2454 i = 2455 i = 2456 i = 2457 i = 2458 i = 2459 i = 2460 i = 2461 i = 2462 i = 2463 i = 2464 i = 2465 i = 2466 i = 2467 i = 2468 i = 2469 i = 2470 i = 2471 i = 2472 i = 2473 i = 2474 i = 2475 i = 2476 i = 2477 i = 2478 i = 2479 i = 2480 i = 2481 i = 2482 i = 2483 i = 2484 i = 2485 i = 2486 i = 2487 i = 2488 i = 2489 i = 2490 i = 2491 i = 2492 i = 2493 i = 2494 i = 2495 i = 2496 i = 2497 i = 2498 i = 2499 i = 2500 i = 2501 i = 2502 i = 2503 i = 2504 i = 2505 i = 2506 i = 2507 i = 2508 i = 2509 i = 2510 i = 2511 i = 2512 i = 2513 i = 2514 i = 2515 i = 2516 i = 2517 i = 2518 i = 2519 i = 2520 i = 2521 i = 2522 i = 2523 i = 2524 i = 2525 i = 2526 i = 2527 i = 2528 i = 2529 i = 2530 i = 2531 i = 2532 i = 2533 i = 2534 i = 2535 i = 2536 i = 2537 i = 2538 i = 2539 i = 2540 i = 2541 i = 2542 i = 2543 i = 2544 i = 2545 i = 2546 i = 2547 i = 2548 i = 2549 i = 2550 i = 2551 i = 2552 i = 2553 i = 2554 i = 2555 i = 2556 i = 2557 i = 2558 i = 2559 i = 2560 i = 2561 i = 2562 i = 2563 i = 2564 i = 2565 i = 2566 i = 2567 i = 2568 i = 2569 i = 2570 i = 2571 i = 2572 i = 2573 i = 2574 i = 2575 i = 2576 i = 2577 i = 2578 i = 2579 i = 2580 i = 2581 i = 2582 i = 2583 i = 2584 i = 2585 i = 2586 i = 2587 i = 2588 i = 2589 i = 2590 i = 2591 i = 2592 i = 2593 i = 2594 i = 2595 i = 2596 i = 2597 i = 2598 i = 2599 i = 2600 i = 2601 i = 2602 i = 2603 i = 2604 i = 2605 i = 2606 i = 2607 i = 2608 i = 2609 i = 2610 i = 2611 i = 2612 i = 2613 i = 2614 i = 2615 i = 2616 i = 2617 i = 2618 i = 2619 i = 2620 i = 2621 i = 2622 i = 2623 i = 2624 i = 2625 i = 2626 i = 2627 i = 2628 i = 2629 i = 2630 i = 2631 i = 2632 i = 2633 i = 2634 i = 2635 i = 2636 i = 2637 i = 2638 i = 2639 i = 2640 i = 2641 i = 2642 i = 2643 i = 2644 i = 2645 i = 2646 i = 2647 i = 2648 i = 2649 i = 2650 i = 2651 i = 2652 i = 2653 i = 2654 i = 2655 i = 2656 i = 2657 i = 2658 i = 2659 i = 2660 i = 2661 i = 2662 i = 2663 i = 2664 i = 2665 i = 2666 i = 2667 i = 2668 i = 2669 i = 2670 i = 2671 i = 2672 i = 2673 i = 2674 i = 2675 i = 2676 i = 2677 i = 2678 i = 2679 i = 2680 i = 2681 i = 2682 i = 2683 i = 2684 i = 2685 i = 2686 i = 2687 i = 2688 i = 2689 i = 2690 i = 2691 i = 2692 i = 2693 i = 2694 i = 2695 i = 2696 i = 2697 i = 2698 i = 2699 i = 2700 i = 2701 i = 2702 i = 2703 i = 2704 i = 2705 i = 2706 i = 2707 i = 2708 i = 2709 i = 2710 i = 2711 i = 2712 i = 2713 i = 2714 i = 2715 i = 2716 i = 2717 i = 2718 i = 2719 i = 2720 i = 2721 i = 2722 i = 2723 i = 2724 i = 2725 i = 2726 i = 2727 i = 2728 i = 2729 i = 2730 i = 2731 i = 2732 i = 2733 i = 2734 i = 2735 i = 2736 i = 2737 i = 2738 i = 2739 i = 2740 i = 2741 i = 2742 i = 2743 i = 2744 i = 2745 i = 2746 i = 2747 i = 2748 i = 2749 i = 2750 i = 2751 i = 2752 i = 2753 i = 2754 i = 2755 i = 2756 i = 2757 i = 2758 i = 2759 i = 2760 i = 2761 i = 2762 i = 2763 i = 2764 i = 2765 i = 2766 i = 2767 i = 2768 i = 2769 i = 2770 i = 2771 i = 2772 i = 2773 i = 2774 i = 2775 i = 2776 i = 2777 i = 2778 i = 2779 i = 2780 i = 2781 i = 2782 i = 2783 i = 2784 i = 2785 i = 2786 i = 2787 i = 2788 i = 2789 i = 2790 i = 2791 i = 2792 i = 2793 i = 2794 i = 2795 i = 2796 i = 2797 i = 2798 i = 2799 i = 2800 i = 2801 i = 2802 i = 2803 i = 2804 i = 2805 i = 2806 i = 2807 i = 2808 i = 2809 i = 2810 i = 2811 i = 2812 i = 2813 i = 2814 i = 2815 i = 2816 i = 2817 i = 2818 i = 2819 i = 2820 i = 2821 i = 2822 i = 2823 i = 2824 i = 2825 i = 2826 i = 2827 i = 2828 i = 2829 i = 2830 i = 2831 i = 2832 i = 2833 i = 2834 i = 2835 i = 2836 i = 2837 i = 2838 i = 2839 i = 2840 i = 2841 i = 2842 i = 2843 i = 2844 i = 2845 i = 2846 i = 2847 i = 2848 i = 2849 i = 2850 i = 2851 i = 2852 i = 2853 i = 2854 i = 2855 i = 2856 i = 2857 i = 2858 i = 2859 i = 2860 i = 2861 i = 2862 i = 2863 i = 2864 i = 2865 i = 2866 i = 2867 i = 2868 i = 2869 i = 2870 i = 2871 i = 2872 i = 2873 i = 2874 i = 2875 i = 2876 i = 2877 i = 2878 i = 2879 i = 2880 i = 2881 i = 2882 i = 2883 i = 2884 i = 2885 i = 2886 i = 2887 i = 2888 i = 2889 i = 2890 i = 2891 i = 2892 i = 2893 i = 2894 i = 2895 i = 2896 i = 2897 i = 2898 i = 2899 i = 2900 i = 2901 i = 2902 i = 2903 i = 2904 i = 2905 i = 2906 i = 2907 i = 2908 i = 2909 i = 2910 i = 2911 i = 2912 i = 2913 i = 2914 i = 2915 i = 2916 i = 2917 i = 2918 i = 2919 i = 2920 i = 2921 i = 2922 i = 2923 i = 2924 i = 2925 i = 2926 i = 2927 i = 2928 i = 2929 i = 2930 i = 2931 i = 2932 i = 2933 i = 2934 i = 2935 i = 2936 i = 2937 i = 2938 i = 2939 i = 2940 i = 2941 i = 2942 i = 2943 i = 2944 i = 2945 i = 2946 i = 2947 i = 2948 i = 2949 i = 2950 i = 2951 i = 2952 i = 2953 i = 2954 i = 2955 i = 2956 i = 2957 i = 2958 i = 2959 i = 2960 i = 2961 i = 2962 i = 2963 i = 2964 i = 2965 i = 2966 i = 2967 i = 2968 i = 2969 i = 2970 i = 2971 i = 2972 i = 2973 i = 2974 i = 2975 i = 2976 i = 2977 i = 2978 i = 2979 i = 2980 i = 2981 i = 2982 i = 2983 i = 2984 i = 2985 i = 2986 i = 2987 i = 2988 i = 2989 i = 2990 i = 2991 i = 2992 i = 2993 i = 2994 i = 2995 i = 2996 i = 2997 i = 2998 i = 2999 i = 3000 i = 3001 i = 3002 i = 3003 i = 3004 i = 3005 i = 3006 i = 3007 i = 3008 i = 3009 i = 3010 i = 3011 i = 3012 i = 3013 i = 3014 i = 3015 i = 3016 i = 3017 i = 3018 i = 3019 i = 3020 i = 3021 i = 3022 i = 3023 i = 3024 i = 3025 i = 3026 i = 3027 i = 3028 i = 3029 i = 3030 i = 3031 i = 3032 i = 3033 i = 3034 i = 3035 i = 3036 i = 3037 i = 3038 i = 3039 i = 3040 i = 3041 i = 3042 i = 3043 i = 3044 i = 3045 i = 3046 i = 3047 i = 3048 i = 3049 i = 3050 i = 3051 i = 3052 i = 3053 i = 3054 i = 3055 i = 3056 i = 3057 i = 3058 i = 3059 i = 3060 i = 3061 i = 3062 i = 3063 i = 3064 i = 3065 i = 3066 i = 3067 i = 3068 i = 3069 i = 3070 i = 3071 i = 3072 i = 3073 i = 3074 i = 3075 i = 3076 i = 3077 i = 3078 i = 3079 i = 3080 i = 3081 i = 3082 i = 3083 i = 3084 i = 3085 i = 3086 i = 3087 i = 3088 i = 3089 i = 3090 i = 3091 i = 3092 i = 3093 i = 3094 i = 3095 i = 3096 i = 3097 i = 3098 i = 3099 i = 3100 i = 3101 i = 3102 i = 3103 i = 3104 i = 3105 i = 3106 i = 3107 i = 3108 i = 3109 i = 3110 i = 3111 i = 3112 i = 3113 i = 3114 i = 3115 i = 3116 i = 3117 i = 3118 i = 3119 i = 3120 i = 3121 i = 3122 i = 3123 i = 3124 i = 3125 i = 3126 i = 3127 i = 3128 i = 3129 i = 3130 i = 3131 i = 3132 i = 3133 i = 3134 i = 3135 i = 3136 i = 3137 i = 3138 i = 3139 i = 3140 i = 3141 i = 3142 i = 3143 i = 3144 i = 3145 i = 3146 i = 3147 i = 3148 i = 3149 i = 3150 i = 3151 i = 3152 i = 3153 i = 3154 i = 3155 i = 3156 i = 3157 i = 3158 i = 3159 i = 3160 i = 3161 i = 3162 i = 3163 i = 3164 i = 3165 i = 3166 i = 3167 i = 3168 i = 3169 i = 3170 i = 3171 i = 3172 i = 3173 i = 3174 i = 3175 i = 3176 i = 3177 i = 3178 i = 3179 i = 3180 i = 3181 i = 3182 i = 3183 i = 3184 i = 3185 i = 3186 i = 3187 i = 3188 i = 3189 i = 3190 i = 3191 i = 3192 i = 3193 i = 3194 i = 3195 i = 3196 i = 3197 i = 3198 i = 3199 i = 3200 i = 3201 i = 3202 i = 3203 i = 3204 i = 3205 i = 3206 i = 3207 i = 3208 i = 3209 i = 3210 i = 3211 i = 3212 i = 3213 i = 3214 i = 3215 i = 3216 i = 3217 i = 3218 i = 3219 i = 3220 i = 3221 i = 3222 i = 3223 i = 3224 i = 3225 i = 3226 i = 3227 i = 3228 i = 3229 i = 3230 i = 3231 i = 3232 i = 3233 i = 3234 i = 3235 i = 3236 i = 3237 i = 3238 i = 3239 i = 3240 i = 3241 i = 3242 i = 3243 i = 3244 i = 3245 i = 3246 i = 3247 i = 3248 i = 3249 i = 3250 i = 3251 i = 3252 i = 3253 i = 3254 i = 3255 i = 3256 i = 3257 i = 3258 i = 3259 i = 3260 i = 3261 i = 3262 i = 3263 i = 3264 i = 3265 i = 3266 i = 3267 i = 3268 i = 3269 i = 3270 i = 3271 i = 3272 i = 3273 i = 3274 i = 3275 i = 3276 i = 3277 i = 3278 i = 3279 i = 3280 i = 3281 i = 3282 i = 3283 i = 3284 i = 3285 i = 3286 i = 3287 i = 3288 i = 3289 i = 3290 i = 3291 i = 3292 i = 3293 i = 3294 i = 3295 i = 3296 i = 3297 i = 3298 i = 3299 i = 3300 i = 3301 i = 3302 i = 3303 i = 3304 i = 3305 i = 3306 i = 3307 i = 3308 i = 3309 i = 3310 i = 3311 i = 3312 i = 3313 i = 3314 i = 3315 i = 3316 i = 3317 i = 3318 i = 3319 i = 3320 i = 3321 i = 3322 i = 3323 i = 3324 i = 3325 i = 3326 i = 3327 i = 3328 i = 3329 i = 3330 i = 3331 i = 3332 i = 3333 i = 3334 i = 3335 i = 3336 i = 3337 i = 3338 i = 3339 i = 3340 i = 3341 i = 3342 i = 3343 i = 3344 i = 3345 i = 3346 i = 3347 i = 3348 i = 3349 i = 3350 i = 3351 i = 3352 i = 3353 i = 3354 i = 3355 i = 3356 i = 3357 i = 3358 i = 3359 i = 3360 i = 3361 i = 3362 i = 3363 i = 3364 i = 3365 i = 3366 i = 3367 i = 3368 i = 3369 i = 3370 i = 3371 i = 3372 i = 3373 i = 3374 i = 3375 i = 3376 i = 3377 i = 3378 i = 3379 i = 3380 i = 3381 i = 3382 i = 3383 i = 3384 i = 3385 i = 3386 i = 3387 i = 3388 i = 3389 i = 3390 i = 3391 i = 3392 i = 3393 i = 3394 i = 3395 i = 3396 i = 3397 i = 3398 i = 3399 i = 3400 i = 3401 i = 3402 i = 3403 i = 3404 i = 3405 i = 3406 i = 3407 i = 3408 i = 3409 i = 3410 i = 3411 i = 3412 i = 3413 i = 3414 i = 3415 i = 3416 i = 3417 i = 3418 i = 3419 i = 3420 i = 3421 i = 3422 i = 3423 i = 3424 i = 3425 i = 3426 i = 3427 i = 3428 i = 3429 i = 3430 i = 3431 i = 3432 i = 3433 i = 3434 i = 3435 i = 3436 i = 3437 i = 3438 i = 3439 i = 3440 i = 3441 i = 3442 i = 3443 i = 3444 i = 3445 i = 3446 i = 3447 i = 3448 i = 3449 i = 3450 i = 3451 i = 3452 i = 3453 i = 3454 i = 3455 i = 3456 i = 3457 i = 3458 i = 3459 i = 3460 i = 3461 i = 3462 i = 3463 i = 3464 i = 3465 i = 3466 i = 3467 i = 3468 i = 3469 i = 3470 i = 3471 i = 3472 i = 3473 i = 3474 i = 3475 i = 3476 i = 3477 i = 3478 i = 3479 i = 3480 i = 3481 i = 3482 i = 3483 i = 3484 i = 3485 i = 3486 i = 3487 i = 3488 i = 3489 i = 3490 i = 3491 i = 3492 i = 3493 i = 3494 i = 3495 i = 3496 i = 3497 i = 3498 i = 3499 i = 3500 i = 3501 i = 3502 i = 3503 i = 3504 i = 3505 i = 3506 i = 3507 i = 3508 i = 3509 i = 3510 i = 3511 i = 3512 i = 3513 i = 3514 i = 3515 i = 3516 i = 3517 i = 3518 i = 3519 i = 3520 i = 3521 i = 3522 i = 3523 i = 3524 i = 3525 i = 3526 i = 3527 i = 3528 i = 3529 i = 3530 i = 3531 i = 3532 i = 3533 i = 3534 i = 3535 i = 3536 i = 3537 i = 3538 i = 3539 i = 3540 i = 3541 i = 3542 i = 3543 i = 3544 i = 3545 i = 3546 i = 3547 i = 3548 i = 3549 i = 3550 i = 3551 i = 3552 i = 3553 i = 3554 i = 3555 i = 3556 i = 3557 i = 3558 i = 3559 i = 3560 i = 3561 i = 3562 i = 3563 i = 3564 i = 3565 i = 3566 i = 3567 i = 3568 i = 3569 i = 3570 i = 3571 i = 3572 i = 3573 i = 3574 i = 3575 i = 3576 i = 3577 i = 3578 i = 3579 i = 3580 i = 3581 i = 3582 i = 3583 i = 3584 i = 3585 i = 3586 i = 3587 i = 3588 i = 3589 i = 3590 i = 3591 i = 3592 i = 3593 i = 3594 i = 3595 i = 3596 i = 3597 i = 3598 i = 3599 i = 3600 i = 3601 i = 3602 i = 3603 i = 3604 i = 3605 i = 3606 i = 3607 i = 3608 i = 3609 i = 3610 i = 3611 i = 3612 i = 3613 i = 3614 i = 3615 i = 3616 i = 3617 i = 3618 i = 3619 i = 3620 i = 3621 i = 3622 i = 3623 i = 3624 i = 3625 i = 3626 i = 3627 i = 3628 i = 3629 i = 3630 i = 3631 i = 3632 i = 3633 i = 3634 i = 3635 i = 3636 i = 3637 i = 3638 i = 3639 i = 3640 i = 3641 i = 3642 i = 3643 i = 3644 i = 3645 i = 3646 i = 3647 i = 3648 i = 3649 i = 3650 i = 3651 i = 3652 i = 3653 i = 3654 i = 3655 i = 3656 i = 3657 i = 3658 i = 3659 i = 3660 i = 3661 i = 3662 i = 3663 i = 3664 i = 3665 i = 3666 i = 3667 i = 3668 i = 3669 i = 3670 i = 3671 i = 3672 i = 3673 i = 3674 i = 3675 i = 3676 i = 3677 i = 3678 i = 3679 i = 3680 i = 3681 i = 3682 i = 3683 i = 3684 i = 3685 i = 3686 i = 3687 i = 3688 i = 3689 i = 3690 i = 3691 i = 3692 i = 3693 i = 3694 i = 3695 i = 3696 i = 3697 i = 3698 i = 3699 i = 3700 i = 3701 i = 3702 i = 3703 i = 3704 i = 3705 i = 3706 i = 3707 i = 3708 i = 3709 i = 3710 i = 3711 i = 3712 i = 3713 i = 3714 i = 3715 i = 3716 i = 3717 i = 3718 i = 3719 i = 3720 i = 3721 i = 3722 i = 3723 i = 3724 i = 3725 i = 3726 i = 3727 i = 3728 i = 3729 i = 3730 i = 3731 i = 3732 i = 3733 i = 3734 i = 3735 i = 3736 i = 3737 i = 3738 i = 3739 i = 3740 i = 3741 i = 3742 i = 3743 i = 3744 i = 3745 i = 3746 i = 3747 i = 3748 i = 3749 i = 3750 i = 3751 i = 3752 i = 3753 i = 3754 i = 3755 i = 3756 i = 3757 i = 3758 i = 3759 i = 3760 i = 3761 i = 3762 i = 3763 i = 3764 i = 3765 i = 3766 i = 3767 i = 3768 i = 3769 i = 3770 i = 3771 i = 3772 i = 3773 i = 3774 i = 3775 i = 3776 i = 3777 i = 3778 i = 3779 i = 3780 i = 3781 i = 3782 i = 3783 i = 3784 i = 3785 i = 3786 i = 3787 i = 3788 i = 3789 i = 3790 i = 3791 i = 3792 i = 3793 i = 3794 i = 3795 i = 3796 i = 3797 i = 3798 i = 3799 i = 3800 i = 3801 i = 3802 i = 3803 i = 3804 i = 3805 i = 3806 i = 3807 i = 3808 i = 3809 i = 3810 i = 3811 i = 3812 i = 3813 i = 3814 i = 3815 i = 3816 i = 3817 i = 3818 i = 3819 i = 3820 i = 3821 i = 3822 i = 3823 i = 3824 i = 3825 i = 3826 i = 3827 i = 3828 i = 3829 i = 3830 i = 3831 i = 3832 i = 3833 i = 3834 i = 3835 i = 3836 i = 3837 i = 3838 i = 3839 i = 3840 i = 3841 i = 3842 i = 3843 i = 3844 i = 3845 i = 3846 i = 3847 i = 3848 i = 3849 i = 3850 i = 3851 i = 3852 i = 3853 i = 3854 i = 3855 i = 3856 i = 3857 i = 3858 i = 3859 i = 3860 i = 3861 i = 3862 i = 3863 i = 3864 i = 3865 i = 3866 i = 3867 i = 3868 i = 3869 i = 3870 i = 3871 i = 3872 i = 3873 i = 3874 i = 3875 i = 3876 i = 3877 i = 3878 i = 3879 i = 3880 i = 3881 i = 3882 i = 3883 i = 3884 i = 3885 i = 3886 i = 3887 i = 3888 i = 3889 i = 3890 i = 3891 i = 3892 i = 3893 i = 3894 i = 3895 i = 3896 i = 3897 i = 3898 i = 3899 i = 3900 i = 3901 i = 3902 i = 3903 i = 3904 i = 3905 i = 3906 i = 3907 i = 3908 i = 3909 i = 3910 i = 3911 i = 3912 i = 3913 i = 3914 i = 3915 i = 3916 i = 3917 i = 3918 i = 3919 i = 3920 i = 3921 i = 3922 i = 3923 i = 3924 i = 3925 i = 3926 i = 3927 i = 3928 i = 3929 i = 3930 i = 3931 i = 3932 i = 3933 i = 3934 i = 3935 i = 3936 i = 3937 i = 3938 i = 3939 i = 3940 i = 3941 i = 3942 i = 3943 i = 3944 i = 3945 i = 3946 i = 3947 i = 3948 i = 3949 i = 3950 i = 3951 i = 3952 i = 3953 i = 3954 i = 3955 i = 3956 i = 3957 i = 3958 i = 3959 i = 3960 i = 3961 i = 3962 i = 3963 i = 3964 i = 3965 i = 3966 i = 3967 i = 3968 i = 3969 i = 3970 i = 3971 i = 3972 i = 3973 i = 3974 i = 3975 i = 3976 i = 3977 i = 3978 i = 3979 i = 3980 i = 3981 i = 3982 i = 3983 i = 3984 i = 3985 i = 3986 i = 3987 i = 3988 i = 3989 i = 3990 i = 3991 i = 3992 i = 3993 i = 3994 i = 3995 i = 3996 i = 3997 i = 3998 i = 3999 i = 4000 i = 4001 i = 4002 i = 4003 i = 4004 i = 4005 i = 4006 i = 4007 i = 4008 i = 4009 i = 4010 i = 4011 i = 4012 i = 4013 i = 4014 i = 4015 i = 4016 i = 4017 i = 4018 i = 4019 i = 4020 i = 4021 i = 4022 i = 4023 i = 4024 i = 4025 i = 4026 i = 4027 i = 4028 i = 4029 i = 4030 i = 4031 i = 4032 i = 4033 i = 4034 i = 4035 i = 4036 i = 4037 i = 4038 i = 4039 i = 4040 i = 4041 i = 4042 i = 4043 i = 4044 i = 4045 i = 4046 i = 4047 i = 4048 i = 4049 i = 4050 i = 4051 i = 4052 i = 4053 i = 4054 i = 4055 i = 4056 i = 4057 i = 4058 i = 4059 i = 4060 i = 4061 i = 4062 i = 4063 i = 4064 i = 4065 i = 4066 i = 4067 i = 4068 i = 4069 i = 4070 i = 4071 i = 4072 i = 4073 i = 4074 i = 4075 i = 4076 i = 4077 i = 4078 i = 4079 i = 4080 i = 4081 i = 4082 i = 4083 i = 4084 i = 4085 i = 4086 i = 4087 i = 4088 i = 4089 i = 4090 i = 4091 i = 4092 i = 4093 i = 4094 i = 4095 i = 4096 i = 4097 i = 4098 i = 4099 i = 4100 i = 4101 i = 4102 i = 4103 i = 4104 i = 4105 i = 4106 i = 4107 i = 4108 i = 4109 i = 4110 i = 4111 i = 4112 i = 4113 i = 4114 i = 4115 i = 4116 i = 4117 i = 4118 i = 4119 i = 4120 i = 4121 i = 4122 i = 4123 i = 4124 i = 4125 i = 4126 i = 4127 i = 4128 i = 4129 i = 4130 i = 4131 i = 4132 i = 4133 i = 4134 i = 4135 i = 4136 i = 4137 i = 4138 i = 4139 i = 4140 i = 4141 i = 4142 i = 4143 i = 4144 i = 4145 i = 4146 i = 4147 i = 4148 i = 4149 i = 4150 i = 4151 i = 4152 i = 4153 i = 4154 i = 4155 i = 4156 i = 4157 i = 4158 i = 4159 i = 4160 i = 4161 i = 4162 i = 4163 i = 4164 i = 4165 i = 4166 i = 4167 i = 4168 i = 4169 i = 4170 i = 4171 i = 4172 i = 4173 i = 4174 i = 4175 i = 4176 i = 4177 i = 4178 i = 4179 i = 4180 i = 4181 i = 4182 i = 4183 i = 4184 i = 4185 i = 4186 i = 4187 i = 4188 i = 4189 i = 4190 i = 4191 i = 4192 i = 4193 i = 4194 i = 4195 i = 4196 i = 4197 i = 4198 i = 4199 i = 4200 i = 4201 i = 4202 i = 4203 i = 4204 i = 4205 i = 4206 i = 4207 i = 4208 i = 4209 i = 4210 i = 4211 i = 4212 i = 4213 i = 4214 i = 4215 i = 4216 i = 4217 i = 4218 i = 4219 i = 4220 i = 4221 i = 4222 i = 4223 i = 4224 i = 4225 i = 4226 i = 4227 i = 4228 i = 4229 i = 4230 i = 4231 i = 4232 i = 4233 i = 4234 i = 4235 i = 4236 i = 4237 i = 4238 i = 4239 i = 4240 i = 4241 i = 4242 i = 4243 i = 4244 i = 4245 i = 4246 i = 4247 i = 4248 i = 4249 i = 4250 i = 4251 i = 4252 i = 4253 i = 4254 i = 4255 i = 4256 i = 4257 i = 4258 i = 4259 i = 4260 i = 4261 i = 4262 i = 4263 i = 4264 i = 4265 i = 4266 i = 4267 i = 4268 i = 4269 i = 4270 i = 4271 i = 4272 i = 4273 i = 4274 i = 4275 i = 4276 i = 4277 i = 4278 i = 4279 i = 4280 i = 4281 i = 4282 i = 4283 i = 4284 i = 4285 i = 4286 i = 4287 i = 4288 i = 4289 i = 4290 i = 4291 i = 4292 i = 4293 i = 4294 i = 4295 i = 4296 i = 4297 i = 4298 i = 4299 i = 4300 i = 4301 i = 4302 i = 4303 i = 4304 i = 4305 i = 4306 i = 4307 i = 4308 i = 4309 i = 4310 i = 4311 i = 4312 i = 4313 i = 4314 i = 4315 i = 4316 i = 4317 i = 4318 i = 4319 i = 4320 i = 4321 i = 4322 i = 4323 i = 4324 i = 4325 i = 4326 i = 4327 i = 4328 i = 4329 i = 4330 i = 4331 i = 4332 i = 4333 i = 4334 i = 4335 i = 4336 i = 4337 i = 4338 i = 4339 i = 4340 i = 4341 i = 4342 i = 4343 i = 4344 i = 4345 i = 4346 i = 4347 i = 4348 i = 4349 i = 4350 i = 4351 i = 4352 i = 4353 i = 4354 i = 4355 i = 4356 i = 4357 i = 4358 i = 4359 i = 4360 i = 4361 i = 4362 i = 4363 i = 4364 i = 4365 i = 4366 i = 4367 i = 4368 i = 4369 i = 4370 i = 4371 i = 4372 i = 4373 i = 4374 i = 4375 i = 4376 i = 4377 i = 4378 i = 4379 i = 4380 i = 4381 i = 4382 i = 4383 i = 4384 i = 4385 i = 4386 i = 4387 i = 4388 i = 4389 i = 4390 i = 4391 i = 4392 i = 4393 i = 4394 i = 4395 i = 4396 i = 4397 i = 4398 i = 4399 i = 4400 i = 4401 i = 4402 i = 4403 i = 4404 i = 4405 i = 4406 i = 4407 i = 4408 i = 4409 i = 4410 i = 4411 i = 4412 i = 4413 i = 4414 i = 4415 i = 4416 i = 4417 i = 4418 i = 4419 i = 4420 i = 4421 i = 4422 i = 4423 i = 4424 i = 4425 i = 4426 i = 4427 i = 4428 i = 4429 i = 4430 i = 4431 i = 4432 i = 4433 i = 4434 i = 4435 i = 4436 i = 4437 i = 4438 i = 4439 i = 4440 i = 4441 i = 4442 i = 4443 i = 4444 i = 4445 i = 4446 i = 4447 i = 4448 i = 4449 i = 4450 i = 4451 i = 4452 i = 4453 i = 4454 i = 4455 i = 4456 i = 4457 i = 4458 i = 4459 i = 4460 i = 4461 i = 4462 i = 4463 i = 4464 i = 4465 i = 4466 i = 4467 i = 4468 i = 4469 i = 4470 i = 4471 i = 4472 i = 4473 i = 4474 i = 4475 i = 4476 i = 4477 i = 4478 i = 4479 i = 4480 i = 4481 i = 4482 i = 4483 i = 4484 i = 4485 i = 4486 i = 4487 i = 4488 i = 4489 i = 4490 i = 4491 i = 4492 i = 4493 i = 4494 i = 4495 i = 4496 i = 4497 i = 4498 i = 4499 i = 4500 i = 4501 i = 4502 i = 4503 i = 4504 i = 4505 i = 4506 i = 4507 i = 4508 i = 4509 i = 4510 i = 4511 i = 4512 i = 4513 i = 4514 i = 4515 i = 4516 i = 4517 i = 4518 i = 4519 i = 4520 i = 4521 i = 4522 i = 4523 i = 4524 i = 4525 i = 4526 i = 4527 i = 4528 i = 4529 i = 4530 i = 4531 i = 4532 i = 4533 i = 4534 i = 4535 i = 4536 i = 4537 i = 4538 i = 4539 i = 4540 i = 4541 i = 4542 i = 4543 i = 4544 i = 4545 i = 4546 i = 4547 i = 4548 i = 4549 i = 4550 i = 4551 i = 4552 i = 4553 i = 4554 i = 4555 i = 4556 i = 4557 i = 4558 i = 4559 i = 4560 i = 4561 i = 4562 i = 4563 i = 4564 i = 4565 i = 4566 i = 4567 i = 4568 i = 4569 i = 4570 i = 4571 i = 4572 i = 4573 i = 4574 i = 4575 i = 4576 i = 4577 i = 4578 i = 4579 i = 4580 i = 4581 i = 4582 i = 4583 i = 4584 i = 4585 i = 4586 i = 4587 i = 4588 i = 4589 i = 4590 i = 4591 i = 4592 i = 4593 i = 4594 i = 4595 i = 4596 i = 4597 i = 4598 i = 4599 i = 4600 i = 4601 i = 4602 i = 4603 i = 4604 i = 4605 i = 4606 i = 4607 i = 4608 i = 4609 i = 4610 i = 4611 i = 4612 i = 4613 i = 4614 i = 4615 i = 4616 i = 4617 i = 4618 i = 4619 i = 4620 i = 4621 i = 4622 i = 4623 i = 4624 i = 4625 i = 4626 i = 4627 i = 4628 i = 4629 i = 4630 i = 4631 i = 4632 i = 4633 i = 4634 i = 4635 i = 4636 i = 4637 i = 4638 i = 4639 i = 4640 i = 4641 i = 4642 i = 4643 i = 4644 i = 4645 i = 4646 i = 4647 i = 4648 i = 4649 i = 4650 i = 4651 i = 4652 i = 4653 i = 4654 i = 4655 i = 4656 i = 4657 i = 4658 i = 4659 i = 4660 i = 4661 i = 4662 i = 4663 i = 4664 i = 4665 i = 4666 i = 4667 i = 4668 i = 4669 i = 4670 i = 4671 i = 4672 i = 4673 i = 4674 i = 4675 i = 4676 i = 4677 i = 4678 i = 4679 i = 4680 i = 4681 i = 4682 i = 4683 i = 4684 i = 4685 i = 4686 i = 4687 i = 4688 i = 4689 i = 4690 i = 4691 i = 4692 i = 4693 i = 4694 i = 4695 i = 4696 i = 4697 i = 4698 i = 4699 i = 4700 i = 4701 i = 4702 i = 4703 i = 4704 i = 4705 i = 4706 i = 4707 i = 4708 i = 4709 i = 4710 i = 4711 i = 4712 i = 4713 i = 4714 i = 4715 i = 4716 i = 4717 i = 4718 i = 4719 i = 4720 i = 4721 i = 4722 i = 4723 i = 4724 i = 4725 i = 4726 i = 4727 i = 4728 i = 4729 i = 4730 i = 4731 i = 4732 i = 4733 i = 4734 i = 4735 i = 4736 i = 4737 i = 4738 i = 4739 i = 4740 i = 4741 i = 4742 i = 4743 i = 4744 i = 4745 i = 4746 i = 4747 i = 4748 i = 4749 i = 4750 i = 4751 i = 4752 i = 4753 i = 4754 i = 4755 i = 4756 i = 4757 i = 4758 i = 4759 i = 4760 i = 4761 i = 4762 i = 4763 i = 4764 i = 4765 i = 4766 i = 4767 i = 4768 i = 4769 i = 4770 i = 4771 i = 4772 i = 4773 i = 4774 i = 4775 i = 4776 i = 4777 i = 4778 i = 4779 i = 4780 i = 4781 i = 4782 i = 4783 i = 4784 i = 4785 i = 4786 i = 4787 i = 4788 i = 4789 i = 4790 i = 4791 i = 4792 i = 4793 i = 4794 i = 4795 i = 4796 i = 4797 i = 4798 i = 4799 i = 4800 i = 4801 i = 4802 i = 4803 i = 4804 i = 4805 i = 4806 i = 4807 i = 4808 i = 4809 i = 4810 i = 4811 i = 4812 i = 4813 i = 4814 i = 4815 i = 4816 i = 4817 i = 4818 i = 4819 i = 4820 i = 4821 i = 4822 i = 4823 i = 4824 i = 4825 i = 4826 i = 4827 i = 4828 i = 4829 i = 4830 i = 4831 i = 4832 i = 4833 i = 4834 i = 4835 i = 4836 i = 4837 i = 4838 i = 4839 i = 4840 i = 4841 i = 4842 i = 4843 i = 4844 i = 4845 i = 4846 i = 4847 i = 4848 i = 4849 i = 4850 i = 4851 i = 4852 i = 4853 i = 4854 i = 4855 i = 4856 i = 4857 i = 4858 i = 4859 i = 4860 i = 4861 i = 4862 i = 4863 i = 4864 i = 4865 i = 4866 i = 4867 i = 4868 i = 4869 i = 4870 i = 4871 i = 4872 i = 4873 i = 4874 i = 4875 i = 4876 i = 4877 i = 4878 i = 4879 i = 4880 i = 4881 i = 4882 i = 4883 i = 4884 i = 4885 i = 4886 i = 4887 i = 4888 i = 4889 i = 4890 i = 4891 i = 4892 i = 4893 i = 4894 i = 4895 i = 4896 i = 4897 i = 4898 i = 4899 i = 4900 i = 4901 i = 4902 i = 4903 i = 4904 i = 4905 i = 4906 i = 4907 i = 4908 i = 4909 i = 4910 i = 4911 i = 4912 i = 4913 i = 4914 i = 4915 i = 4916 i = 4917 i = 4918 i = 4919 i = 4920 i = 4921 i = 4922 i = 4923 i = 4924 i = 4925 i = 4926 i = 4927 i = 4928 i = 4929 i = 4930 i = 4931 i = 4932 i = 4933 i = 4934 i = 4935 i = 4936 i = 4937 i = 4938 i = 4939 i = 4940 i = 4941 i = 4942 i = 4943 i = 4944 i = 4945 i = 4946 i = 4947 i = 4948 i = 4949 i = 4950 i = 4951 i = 4952 i = 4953 i = 4954 i = 4955 i = 4956 i = 4957 i = 4958 i = 4959 i = 4960 i = 4961 i = 4962 i = 4963 i = 4964 i = 4965 i = 4966 i = 4967 i = 4968 i = 4969 i = 4970 i = 4971 i = 4972 i = 4973 i = 4974 i = 4975 i = 4976 i = 4977 i = 4978 i = 4979 i = 4980 i = 4981 i = 4982 i = 4983 i = 4984 i = 4985 i = 4986 i = 4987 i = 4988 i = 4989 i = 4990 i = 4991 i = 4992 i = 4993 i = 4994 i = 4995 i = 4996 i = 4997 i = 4998 i = 4999 i = 5000 i = 5001 i = 5002 i = 5003 i = 5004 i = 5005 i = 5006 i = 5007 i = 5008 i = 5009 i = 5010 i = 5011 i = 5012 i = 5013 i = 5014 i = 5015 i = 5016 i = 5017 i = 5018 i = 5019 i = 5020 i = 5021 i = 5022 i = 5023 i = 5024 i = 5025 i = 5026 i = 5027 i = 5028 i = 5029 i = 5030 i = 5031 i = 5032 i = 5033 i = 5034 i = 5035 i = 5036 i = 5037 i = 5038 i = 5039 i = 5040 i = 5041 i = 5042 i = 5043 i = 5044 i = 5045 i = 5046 i = 5047 i = 5048 i = 5049 i = 5050 i = 5051 i = 5052 i = 5053 i = 5054 i = 5055 i = 5056 i = 5057 i = 5058 i = 5059 i = 5060 i = 5061 i = 5062 i = 5063 i = 5064 i = 5065 i = 5066 i = 5067 i = 5068 i = 5069 i = 5070 i = 5071 i = 5072 i = 5073 i = 5074 i = 5075 i = 5076 i = 5077 i = 5078 i = 5079 i = 5080 i = 5081 i = 5082 i = 5083 i = 5084 i = 5085 i = 5086 i = 5087 i = 5088 i = 5089 i = 5090 i = 5091 i = 5092 i = 5093 i = 5094 i = 5095 i = 5096 i = 5097 i = 5098 i = 5099 i = 5100 i = 5101 i = 5102 i = 5103 i = 5104 i = 5105 i = 5106 i = 5107 i = 5108 i = 5109 i = 5110 i = 5111 i = 5112 i = 5113 i = 5114 i = 5115 i = 5116 i = 5117 i = 5118 i = 5119 i = 5120 i = 5121 i = 5122 i = 5123 i = 5124 i = 5125 i = 5126 i = 5127 i = 5128 i = 5129 i = 5130 i = 5131 i = 5132 i = 5133 i = 5134 i = 5135 i = 5136 i = 5137 i = 5138 i = 5139 i = 5140 i = 5141 i = 5142 i = 5143 i = 5144 i = 5145 i = 5146 i = 5147 i = 5148 i = 5149 i = 5150 i = 5151 i = 5152 i = 5153 i = 5154 i = 5155 i = 5156 i = 5157 i = 5158 i = 5159 i = 5160 i = 5161 i = 5162 i = 5163 i = 5164 i = 5165 i = 5166 i = 5167 i = 5168 i = 5169 i = 5170 i = 5171 i = 5172 i = 5173 i = 5174 i = 5175 i = 5176 i = 5177 i = 5178 i = 5179 i = 5180 i = 5181 i = 5182 i = 5183 i = 5184 i = 5185 i = 5186 i = 5187 i = 5188 i = 5189 i = 5190 i = 5191 i = 5192 i = 5193 i = 5194 i = 5195 i = 5196 i = 5197 i = 5198 i = 5199 i = 5200 i = 5201 i = 5202 i = 5203 i = 5204 i = 5205 i = 5206 i = 5207 i = 5208 i = 5209 i = 5210 i = 5211 i = 5212 i = 5213 i = 5214 i = 5215 i = 5216 i = 5217 i = 5218 i = 5219 i = 5220 i = 5221 i = 5222 i = 5223 i = 5224 i = 5225 i = 5226 i = 5227 i = 5228 i = 5229 i = 5230 i = 5231 i = 5232 i = 5233 i = 5234 i = 5235 i = 5236 i = 5237 i = 5238 i = 5239 i = 5240 i = 5241 i = 5242 i = 5243 i = 5244 i = 5245 i = 5246 i = 5247 i = 5248 i = 5249 i = 5250 i = 5251 i = 5252 i = 5253 i = 5254 i = 5255 i = 5256 i = 5257 i = 5258 i = 5259 i = 5260 i = 5261 i = 5262 i = 5263 i = 5264 i = 5265 i = 5266 i = 5267 i = 5268 i = 5269 i = 5270 i = 5271 i = 5272 i = 5273 i = 5274 i = 5275 i = 5276 i = 5277 i = 5278 i = 5279 i = 5280 i = 5281 i = 5282 i = 5283 i = 5284 i = 5285 i = 5286 i = 5287 i = 5288 i = 5289 i = 5290 i = 5291 i = 5292 i = 5293 i = 5294 i = 5295 i = 5296 i = 5297 i = 5298 i = 5299 i = 5300 i = 5301 i = 5302 i = 5303 i = 5304 i = 5305 i = 5306 i = 5307 i = 5308 i = 5309 i = 5310 i = 5311 i = 5312 i = 5313 i = 5314 i = 5315 i = 5316 i = 5317 i = 5318 i = 5319 i = 5320 i = 5321 i = 5322 i = 5323 i = 5324 i = 5325 i = 5326 i = 5327 i = 5328 i = 5329 i = 5330 i = 5331 i = 5332 i = 5333 i = 5334 i = 5335 i = 5336 i = 5337 i = 5338 i = 5339 i = 5340 i = 5341 i = 5342 i = 5343 i = 5344 i = 5345 i = 5346 i = 5347 i = 5348 i = 5349 i = 5350 i = 5351 i = 5352 i = 5353 i = 5354 i = 5355 i = 5356 i = 5357 i = 5358 i = 5359 i = 5360 i = 5361 i = 5362 i = 5363 i = 5364 i = 5365 i = 5366 i = 5367 i = 5368 i = 5369 i = 5370 i = 5371 i = 5372 i = 5373 i = 5374 i = 5375 i = 5376 i = 5377 i = 5378 i = 5379 i = 5380 i = 5381 i = 5382 i = 5383 i = 5384 i = 5385 i = 5386 i = 5387 i = 5388 i = 5389 i = 5390 i = 5391 i = 5392 i = 5393 i = 5394 i = 5395 i = 5396 i = 5397 i = 5398 i = 5399 i = 5400 i = 5401 i = 5402 i = 5403 i = 5404 i = 5405 i = 5406 i = 5407 i = 5408 i = 5409 i = 5410 i = 5411 i = 5412 i = 5413 i = 5414 i = 5415 i = 5416 i = 5417 i = 5418 i = 5419 i = 5420 i = 5421 i = 5422 i = 5423 i = 5424 i = 5425 i = 5426 i = 5427 i = 5428 i = 5429 i = 5430 i = 5431 i = 5432 i = 5433 i = 5434 i = 5435 i = 5436 i = 5437 i = 5438 i = 5439 i = 5440 i = 5441 i = 5442 i = 5443 i = 5444 i = 5445 i = 5446 i = 5447 i = 5448 i = 5449 i = 5450 i = 5451 i = 5452 i = 5453 i = 5454 i = 5455 i = 5456 i = 5457 i = 5458 i = 5459 i = 5460 i = 5461 i = 5462 i = 5463 i = 5464 i = 5465 i = 5466 i = 5467 i = 5468 i = 5469 i = 5470 i = 5471 i = 5472 i = 5473 i = 5474 i = 5475 i = 5476 i = 5477 i = 5478 i = 5479 i = 5480 i = 5481 i = 5482 i = 5483 i = 5484 i = 5485 i = 5486 i = 5487 i = 5488 i = 5489 i = 5490 i = 5491 i = 5492 i = 5493 i = 5494 i = 5495 i = 5496 i = 5497 i = 5498 i = 5499 i = 5500 i = 5501 i = 5502 i = 5503 i = 5504 i = 5505 i = 5506 i = 5507 i = 5508 i = 5509 i = 5510 i = 5511 i = 5512 i = 5513 i = 5514 i = 5515 i = 5516 i = 5517 i = 5518 i = 5519 i = 5520 i = 5521 i = 5522 i = 5523 i = 5524 i = 5525 i = 5526 i = 5527 i = 5528 i = 5529 i = 5530 i = 5531 i = 5532 i = 5533 i = 5534 i = 5535 i = 5536 i = 5537 i = 5538 i = 5539 i = 5540 i = 5541 i = 5542 i = 5543 i = 5544 i = 5545 i = 5546 i = 5547 i = 5548 i = 5549 i = 5550 i = 5551 i = 5552 i = 5553 i = 5554 i = 5555 i = 5556 i = 5557 i = 5558 i = 5559 i = 5560 i = 5561 i = 5562 i = 5563 i = 5564 i = 5565 i = 5566 i = 5567 i = 5568 i = 5569 i = 5570 i = 5571 i = 5572 i = 5573 i = 5574 i = 5575 i = 5576 i = 5577 i = 5578 i = 5579 i = 5580 i = 5581 i = 5582 i = 5583 i = 5584 i = 5585 i = 5586 i = 5587 i = 5588 i = 5589 i = 5590 i = 5591 i = 5592 i = 5593 i = 5594 i = 5595 i = 5596 i = 5597 i = 5598 i = 5599 i = 5600 i = 5601 i = 5602 i = 5603 i = 5604 i = 5605 i = 5606 i = 5607 i = 5608 i = 5609 i = 5610 i = 5611 i = 5612 i = 5613 i = 5614 i = 5615 i = 5616 i = 5617 i = 5618 i = 5619 i = 5620 i = 5621 i = 5622 i = 5623 i = 5624 i = 5625 i = 5626 i = 5627 i = 5628 i = 5629 i = 5630 i = 5631 i = 5632 i = 5633 i = 5634 i = 5635 i = 5636 i = 5637 i = 5638 i = 5639 i = 5640 i = 5641 i = 5642 i = 5643 i = 5644 i = 5645 i = 5646 i = 5647 i = 5648 i = 5649 i = 5650 i = 5651 i = 5652 i = 5653 i = 5654 i = 5655 i = 5656 i = 5657 i = 5658 i = 5659 i = 5660 i = 5661 i = 5662 i = 5663 i = 5664 i = 5665 i = 5666 i = 5667 i = 5668 i = 5669 i = 5670 i = 5671 i = 5672 i = 5673 i = 5674 i = 5675 i = 5676 i = 5677 i = 5678 i = 5679 i = 5680 i = 5681 i = 5682 i = 5683 i = 5684 i = 5685 i = 5686 i = 5687 i = 5688 i = 5689 i = 5690 i = 5691 i = 5692 i = 5693 i = 5694 i = 5695 i = 5696 i = 5697 i = 5698 i = 5699 i = 5700 i = 5701 i = 5702 i = 5703 i = 5704 i = 5705 i = 5706 i = 5707 i = 5708 i = 5709 i = 5710 i = 5711 i = 5712 i = 5713 i = 5714 i = 5715 i = 5716 i = 5717 i = 5718 i = 5719 i = 5720 i = 5721 i = 5722 i = 5723 i = 5724 i = 5725 i = 5726 i = 5727 i = 5728 i = 5729 i = 5730 i = 5731 i = 5732 i = 5733 i = 5734 i = 5735 i = 5736 i = 5737 i = 5738 i = 5739 i = 5740 i = 5741 i = 5742 i = 5743 i = 5744 i = 5745 i = 5746 i = 5747 i = 5748 i = 5749 i = 5750 i = 5751 i = 5752 i = 5753 i = 5754 i = 5755 i = 5756 i = 5757 i = 5758 i = 5759 i = 5760 i = 5761 i = 5762 i = 5763 i = 5764 i = 5765 i = 5766 i = 5767 i = 5768 i = 5769 i = 5770 i = 5771 i = 5772 i = 5773 i = 5774 i = 5775 i = 5776 i = 5777 i = 5778 i = 5779 i = 5780 i = 5781 i = 5782 i = 5783 i = 5784 i = 5785 i = 5786 i = 5787 i = 5788 i = 5789 i = 5790 i = 5791 i = 5792 i = 5793 i = 5794 i = 5795 i = 5796 i = 5797 i = 5798 i = 5799 i = 5800 i = 5801 i = 5802 i = 5803 i = 5804 i = 5805 i = 5806 i = 5807 i = 5808 i = 5809 i = 5810 i = 5811 i = 5812 i = 5813 i = 5814 i = 5815 i = 5816 i = 5817 i = 5818 i = 5819 i = 5820 i = 5821 i = 5822 i = 5823 i = 5824 i = 5825 i = 5826 i = 5827 i = 5828 i = 5829 i = 5830 i = 5831 i = 5832 i = 5833 i = 5834 i = 5835 i = 5836 i = 5837 i = 5838 i = 5839 i = 5840 i = 5841 i = 5842 i = 5843 i = 5844 i = 5845 i = 5846 i = 5847 i = 5848 i = 5849 i = 5850 i = 5851 i = 5852 i = 5853 i = 5854 i = 5855 i = 5856 i = 5857 i = 5858 i = 5859 i = 5860 i = 5861 i = 5862 i = 5863 i = 5864 i = 5865 i = 5866 i = 5867 i = 5868 i = 5869 i = 5870 i = 5871 i = 5872 i = 5873 i = 5874 i = 5875 i = 5876 i = 5877 i = 5878 i = 5879 i = 5880 i = 5881 i = 5882 i = 5883 i = 5884 i = 5885 i = 5886 i = 5887 i = 5888 i = 5889 i = 5890 i = 5891 i = 5892 i = 5893 i = 5894 i = 5895 i = 5896 i = 5897 i = 5898 i = 5899 i = 5900 i = 5901 i = 5902 i = 5903 i = 5904 i = 5905 i = 5906 i = 5907 i = 5908 i = 5909 i = 5910 i = 5911 i = 5912 i = 5913 i = 5914 i = 5915 i = 5916 i = 5917 i = 5918 i = 5919 i = 5920 i = 5921 i = 5922 i = 5923 i = 5924 i = 5925 i = 5926 i = 5927 i = 5928 i = 5929 i = 5930 i = 5931 i = 5932 i = 5933 i = 5934 i = 5935 i = 5936 i = 5937 i = 5938 i = 5939 i = 5940 i = 5941 i = 5942 i = 5943 i = 5944 i = 5945 i = 5946 i = 5947 i = 5948 i = 5949 i = 5950 i = 5951 i = 5952 i = 5953 i = 5954 i = 5955 i = 5956 i = 5957 i = 5958 i = 5959 i = 5960 i = 5961 i = 5962 i = 5963 i = 5964 i = 5965 i = 5966 i = 5967 i = 5968 i = 5969 i = 5970 i = 5971 i = 5972 i = 5973 i = 5974 i = 5975 i = 5976 i = 5977 i = 5978 i = 5979 i = 5980 i = 5981 i = 5982 i = 5983 i = 5984 i = 5985 i = 5986 i = 5987 i = 5988 i = 5989 i = 5990 i = 5991 i = 5992 i = 5993 i = 5994 i = 5995 i = 5996 i = 5997 i = 5998 i = 5999 i = 6000 i = 6001 i = 6002 i = 6003 i = 6004 i = 6005 i = 6006 i = 6007 i = 6008 i = 6009 i = 6010 i = 6011 i = 6012 i = 6013 i = 6014 i = 6015 i = 6016 i = 6017 i = 6018 i = 6019 i = 6020 i = 6021 i = 6022 i = 6023 i = 6024 i = 6025 i = 6026 i = 6027 i = 6028 i = 6029 i = 6030 i = 6031 i = 6032 i = 6033 i = 6034 i = 6035 i = 6036 i = 6037 i = 6038 i = 6039 i = 6040 i = 6041 i = 6042 i = 6043 i = 6044 i = 6045 i = 6046 i = 6047 i = 6048 i = 6049 i = 6050 i = 6051 i = 6052 i = 6053 i = 6054 i = 6055 i = 6056 i = 6057 i = 6058 i = 6059 i = 6060 i = 6061 i = 6062 i = 6063 i = 6064 i = 6065 i = 6066 i = 6067 i = 6068 i = 6069 i = 6070 i = 6071 i = 6072 i = 6073 i = 6074 i = 6075 i = 6076 i = 6077 i = 6078 i = 6079 i = 6080 i = 6081 i = 6082 i = 6083 i = 6084 i = 6085 i = 6086 i = 6087 i = 6088 i = 6089 i = 6090 i = 6091 i = 6092 i = 6093 i = 6094 i = 6095 i = 6096 i = 6097 i = 6098 i = 6099 i = 6100 i = 6101 i = 6102 i = 6103 i = 6104 i = 6105 i = 6106 i = 6107 i = 6108 i = 6109 i = 6110 i = 6111 i = 6112 i = 6113 i = 6114 i = 6115 i = 6116 i = 6117 i = 6118 i = 6119 i = 6120 i = 6121 i = 6122 i = 6123 i = 6124 i = 6125 i = 6126 i = 6127 i = 6128 i = 6129 i = 6130 i = 6131 i = 6132 i = 6133 i = 6134 i = 6135 i = 6136 i = 6137 i = 6138 i = 6139 i = 6140 i = 6141 i = 6142 i = 6143 i = 6144 i = 6145 i = 6146 i = 6147 i = 6148 i = 6149 i = 6150 i = 6151 i = 6152 i = 6153 i = 6154 i = 6155 i = 6156 i = 6157 i = 6158 i = 6159 i = 6160 i = 6161 i = 6162 i = 6163 i = 6164 i = 6165 i = 6166 i = 6167 i = 6168 i = 6169 i = 6170 i = 6171 i = 6172 i = 6173 i = 6174 i = 6175 i = 6176 i = 6177 i = 6178 i = 6179 i = 6180 i = 6181 i = 6182 i = 6183 i = 6184 i = 6185 i = 6186 i = 6187 i = 6188 i = 6189 i = 6190 i = 6191 i = 6192 i = 6193 i = 6194 i = 6195 i = 6196 i = 6197 i = 6198 i = 6199 i = 6200 i = 6201 i = 6202 i = 6203 i = 6204 i = 6205 i = 6206 i = 6207 i = 6208 i = 6209 i = 6210 i = 6211 i = 6212 i = 6213 i = 6214 i = 6215 i = 6216 i = 6217 i = 6218 i = 6219 i = 6220 i = 6221 i = 6222 i = 6223 i = 6224 i = 6225 i = 6226 i = 6227 i = 6228 i = 6229 i = 6230 i = 6231 i = 6232 i = 6233 i = 6234 i = 6235 i = 6236 i = 6237 i = 6238 i = 6239 i = 6240 i = 6241 i = 6242 i = 6243 i = 6244 i = 6245 i = 6246 i = 6247 i = 6248 i = 6249 i = 6250 i = 6251 i = 6252 i = 6253 i = 6254 i = 6255 i = 6256 i = 6257 i = 6258 i = 6259 i = 6260 i = 6261 i = 6262 i = 6263 i = 6264 i = 6265 i = 6266 i = 6267 i = 6268 i = 6269 i = 6270 i = 6271 i = 6272 i = 6273 i = 6274 i = 6275 i = 6276 i = 6277 i = 6278 i = 6279 i = 6280 i = 6281 i = 6282 i = 6283 i = 6284 i = 6285 i = 6286 i = 6287 i = 6288 i = 6289 i = 6290 i = 6291 i = 6292 i = 6293 i = 6294 i = 6295 i = 6296 i = 6297 i = 6298 i = 6299 i = 6300 i = 6301 i = 6302 i = 6303 i = 6304 i = 6305 i = 6306 i = 6307 i = 6308 i = 6309 i = 6310 i = 6311 i = 6312 i = 6313 i = 6314 i = 6315 i = 6316 i = 6317 i = 6318 i = 6319 i = 6320 i = 6321 i = 6322 i = 6323 i = 6324 i = 6325 i = 6326 i = 6327 i = 6328 i = 6329 i = 6330 i = 6331 i = 6332 i = 6333 i = 6334 i = 6335 i = 6336 i = 6337 i = 6338 i = 6339 i = 6340 i = 6341 i = 6342 i = 6343 i = 6344 i = 6345 i = 6346 i = 6347 i = 6348 i = 6349 i = 6350 i = 6351 i = 6352 i = 6353 i = 6354 i = 6355 i = 6356 i = 6357 i = 6358 i = 6359 i = 6360 i = 6361 i = 6362 i = 6363 i = 6364 i = 6365 i = 6366 i = 6367 i = 6368 i = 6369 i = 6370 i = 6371 i = 6372 i = 6373 i = 6374 i = 6375 i = 6376 i = 6377 i = 6378 i = 6379 i = 6380 i = 6381 i = 6382 i = 6383 i = 6384 i = 6385 i = 6386 i = 6387 i = 6388 i = 6389 i = 6390 i = 6391 i = 6392 i = 6393 i = 6394 i = 6395 i = 6396 i = 6397 i = 6398 i = 6399 i = 6400 i = 6401 i = 6402 i = 6403 i = 6404 i = 6405 i = 6406 i = 6407 i = 6408 i = 6409 i = 6410 i = 6411 i = 6412 i = 6413 i = 6414 i = 6415 i = 6416 i = 6417 i = 6418 i = 6419 i = 6420 i = 6421 i = 6422 i = 6423 i = 6424 i = 6425 i = 6426 i = 6427 i = 6428 i = 6429 i = 6430 i = 6431 i = 6432 i = 6433 i = 6434 i = 6435 i = 6436 i = 6437 i = 6438 i = 6439 i = 6440 i = 6441 i = 6442 i = 6443 i = 6444 i = 6445 i = 6446 i = 6447 i = 6448 i = 6449 i = 6450 i = 6451 i = 6452 i = 6453 i = 6454 i = 6455 i = 6456 i = 6457 i = 6458 i = 6459 i = 6460 i = 6461 i = 6462 i = 6463 i = 6464 i = 6465 i = 6466 i = 6467 i = 6468 i = 6469 i = 6470 i = 6471 i = 6472 i = 6473 i = 6474 i = 6475 i = 6476 i = 6477 i = 6478 i = 6479 i = 6480 i = 6481 i = 6482 i = 6483 i = 6484 i = 6485 i = 6486 i = 6487 i = 6488 i = 6489 i = 6490 i = 6491 i = 6492 i = 6493 i = 6494 i = 6495 i = 6496 i = 6497 i = 6498 i = 6499 i = 6500 i = 6501 i = 6502 i = 6503 i = 6504 i = 6505 i = 6506 i = 6507 i = 6508 i = 6509 i = 6510 i = 6511 i = 6512 i = 6513 i = 6514 i = 6515 i = 6516 i = 6517 i = 6518 i = 6519 i = 6520 i = 6521 i = 6522 i = 6523 i = 6524 i = 6525 i = 6526 i = 6527 i = 6528 i = 6529 i = 6530 i = 6531 i = 6532 i = 6533 i = 6534 i = 6535 i = 6536 i = 6537 i = 6538 i = 6539 i = 6540 i = 6541 i = 6542 i = 6543 i = 6544 i = 6545 i = 6546 i = 6547 i = 6548 i = 6549 i = 6550 i = 6551 i = 6552 i = 6553 i = 6554 i = 6555 i = 6556 i = 6557 i = 6558 i = 6559 i = 6560 i = 6561 i = 6562 i = 6563 i = 6564 i = 6565 i = 6566 i = 6567 i = 6568 i = 6569 i = 6570 i = 6571 i = 6572 i = 6573 i = 6574 i = 6575 i = 6576 i = 6577 i = 6578 i = 6579 i = 6580 i = 6581 i = 6582 i = 6583 i = 6584 i = 6585 i = 6586 i = 6587 i = 6588 i = 6589 i = 6590 i = 6591 i = 6592 i = 6593 i = 6594 i = 6595 i = 6596 i = 6597 i = 6598 i = 6599 i = 6600 i = 6601 i = 6602 i = 6603 i = 6604 i = 6605 i = 6606 i = 6607 i = 6608 i = 6609 i = 6610 i = 6611 i = 6612 i = 6613 i = 6614 i = 6615 i = 6616 i = 6617 i = 6618 i = 6619 i = 6620 i = 6621 i = 6622 i = 6623 i = 6624 i = 6625 i = 6626 i = 6627 i = 6628 i = 6629 i = 6630 i = 6631 i = 6632 i = 6633 i = 6634 i = 6635 i = 6636 i = 6637 i = 6638 i = 6639 i = 6640 i = 6641 i = 6642 i = 6643 i = 6644 i = 6645 i = 6646 i = 6647 i = 6648 i = 6649 i = 6650 i = 6651 i = 6652 i = 6653 i = 6654 i = 6655 i = 6656 i = 6657 i = 6658 i = 6659 i = 6660 i = 6661 i = 6662 i = 6663 i = 6664 i = 6665 i = 6666 i = 6667 i = 6668 i = 6669 i = 6670 i = 6671 i = 6672 i = 6673 i = 6674 i = 6675 i = 6676 i = 6677 i = 6678 i = 6679 i = 6680 i = 6681 i = 6682 i = 6683 i = 6684 i = 6685 i = 6686 i = 6687 i = 6688 i = 6689 i = 6690 i = 6691 i = 6692 i = 6693 i = 6694 i = 6695 i = 6696 i = 6697 i = 6698 i = 6699 i = 6700 i = 6701 i = 6702 i = 6703 i = 6704 i = 6705 i = 6706 i = 6707 i = 6708 i = 6709 i = 6710 i = 6711 i = 6712 i = 6713 i = 6714 i = 6715 i = 6716 i = 6717 i = 6718 i = 6719 i = 6720 i = 6721 i = 6722 i = 6723 i = 6724 i = 6725 i = 6726 i = 6727 i = 6728 i = 6729 i = 6730 i = 6731 i = 6732 i = 6733 i = 6734 i = 6735 i = 6736 i = 6737 i = 6738 i = 6739 i = 6740 i = 6741 i = 6742 i = 6743 i = 6744 i = 6745 i = 6746 i = 6747 i = 6748 i = 6749 i = 6750 i = 6751 i = 6752 i = 6753 i = 6754 i = 6755 i = 6756 i = 6757 i = 6758 i = 6759 i = 6760 i = 6761 i = 6762 i = 6763 i = 6764 i = 6765 i = 6766 i = 6767 i = 6768 i = 6769 i = 6770 i = 6771 i = 6772 i = 6773 i = 6774 i = 6775 i = 6776 i = 6777 i = 6778 i = 6779 i = 6780 i = 6781 i = 6782 i = 6783 i = 6784 i = 6785 i = 6786 i = 6787 i = 6788 i = 6789 i = 6790 i = 6791 i = 6792 i = 6793 i = 6794 i = 6795 i = 6796 i = 6797 i = 6798 i = 6799 i = 6800 i = 6801 i = 6802 i = 6803 i = 6804 i = 6805 i = 6806 i = 6807 i = 6808 i = 6809 i = 6810 i = 6811 i = 6812 i = 6813 i = 6814 i = 6815 i = 6816 i = 6817 i = 6818 i = 6819 i = 6820 i = 6821 i = 6822 i = 6823 i = 6824 i = 6825 i = 6826 i = 6827 i = 6828 i = 6829 i = 6830 i = 6831 i = 6832 i = 6833 i = 6834 i = 6835 i = 6836 i = 6837 i = 6838 i = 6839 i = 6840 i = 6841 i = 6842 i = 6843 i = 6844 i = 6845 i = 6846 i = 6847 i = 6848 i = 6849 i = 6850 i = 6851 i = 6852 i = 6853 i = 6854 i = 6855 i = 6856 i = 6857 i = 6858 i = 6859 i = 6860 i = 6861 i = 6862 i = 6863 i = 6864 i = 6865 i = 6866 i = 6867 i = 6868 i = 6869 i = 6870 i = 6871 i = 6872 i = 6873 i = 6874 i = 6875 i = 6876 i = 6877 i = 6878 i = 6879 i = 6880 i = 6881 i = 6882 i = 6883 i = 6884 i = 6885 i = 6886 i = 6887 i = 6888 i = 6889 i = 6890 i = 6891 i = 6892 i = 6893 i = 6894 i = 6895 i = 6896 i = 6897 i = 6898 i = 6899 i = 6900 i = 6901 i = 6902 i = 6903 i = 6904 i = 6905 i = 6906 i = 6907 i = 6908 i = 6909 i = 6910 i = 6911 i = 6912 i = 6913 i = 6914 i = 6915 i = 6916 i = 6917 i = 6918 i = 6919 i = 6920 i = 6921 i = 6922 i = 6923 i = 6924 i = 6925 i = 6926 i = 6927 i = 6928 i = 6929 i = 6930 i = 6931 i = 6932 i = 6933 i = 6934 i = 6935 i = 6936 i = 6937 i = 6938 i = 6939 i = 6940 i = 6941 i = 6942 i = 6943 i = 6944 i = 6945 i = 6946 i = 6947 i = 6948 i = 6949 i = 6950 i = 6951 i = 6952 i = 6953 i = 6954 i = 6955 i = 6956 i = 6957 i = 6958 i = 6959 i = 6960 i = 6961 i = 6962 i = 6963 i = 6964 i = 6965 i = 6966 i = 6967 i = 6968 i = 6969 i = 6970 i = 6971 i = 6972 i = 6973 i = 6974 i = 6975 i = 6976 i = 6977 i = 6978 i = 6979 i = 6980 i = 6981 i = 6982 i = 6983 i = 6984 i = 6985 i = 6986 i = 6987 i = 6988 i = 6989 i = 6990 i = 6991 i = 6992 i = 6993 i = 6994 i = 6995 i = 6996 i = 6997 i = 6998 i = 6999 i = 7000 i = 7001 i = 7002 i = 7003 i = 7004 i = 7005 i = 7006 i = 7007 i = 7008 i = 7009 i = 7010 i = 7011 i = 7012 i = 7013 i = 7014 i = 7015 i = 7016 i = 7017 i = 7018 i = 7019 i = 7020 i = 7021 i = 7022 i = 7023 i = 7024 i = 7025 i = 7026 i = 7027 i = 7028 i = 7029 i = 7030 i = 7031 i = 7032 i = 7033 i = 7034 i = 7035 i = 7036 i = 7037 i = 7038 i = 7039 i = 7040 i = 7041 i = 7042 i = 7043 i = 7044 i = 7045 i = 7046 i = 7047 i = 7048 i = 7049 i = 7050 i = 7051 i = 7052 i = 7053 i = 7054 i = 7055 i = 7056 i = 7057 i = 7058 i = 7059 i = 7060 i = 7061 i = 7062 i = 7063 i = 7064 i = 7065 i = 7066 i = 7067 i = 7068 i = 7069 i = 7070 i = 7071 i = 7072 i = 7073 i = 7074 i = 7075 i = 7076 i = 7077 i = 7078 i = 7079 i = 7080 i = 7081 i = 7082 i = 7083 i = 7084 i = 7085 i = 7086 i = 7087 i = 7088 i = 7089 i = 7090 i = 7091 i = 7092 i = 7093 i = 7094 i = 7095 i = 7096 i = 7097 i = 7098 i = 7099 i = 7100 i = 7101 i = 7102 i = 7103 i = 7104 i = 7105 i = 7106 i = 7107 i = 7108 i = 7109 i = 7110 i = 7111 i = 7112 i = 7113 i = 7114 i = 7115 i = 7116 i = 7117 i = 7118 i = 7119 i = 7120 i = 7121 i = 7122 i = 7123 i = 7124 i = 7125 i = 7126 i = 7127 i = 7128 i = 7129 i = 7130 i = 7131 i = 7132 i = 7133 i = 7134 i = 7135 i = 7136 i = 7137 i = 7138 i = 7139 i = 7140 i = 7141 i = 7142 i = 7143 i = 7144 i = 7145 i = 7146 i = 7147 i = 7148 i = 7149 i = 7150 i = 7151 i = 7152 i = 7153 i = 7154 i = 7155 i = 7156 i = 7157 i = 7158 i = 7159 i = 7160 i = 7161 i = 7162 i = 7163 i = 7164 i = 7165 i = 7166 i = 7167 i = 7168 i = 7169 i = 7170 i = 7171 i = 7172 i = 7173 i = 7174 i = 7175 i = 7176 i = 7177 i = 7178 i = 7179 i = 7180 i = 7181 i = 7182 i = 7183 i = 7184 i = 7185 i = 7186 i = 7187 i = 7188 i = 7189 i = 7190 i = 7191 i = 7192 i = 7193 i = 7194 i = 7195 i = 7196 i = 7197 i = 7198 i = 7199 Done. debian/dmtcp/Makefile0000664000000000000000000000227512260003121011730 0ustar DMTCP_BIN = /scratch/psilord/local/bin DMTCP_LIB = /scratch/psilord/local/lib/dmtcp DMTCP_FILES = $(DMTCP_BIN)/dmtcp_checkpoint \ $(DMTCP_BIN)/dmtcp_command \ $(DMTCP_BIN)/dmtcp_coordinator \ $(DMTCP_BIN)/dmtcp_restart \ $(DMTCP_LIB)/dmtcphijack.so \ $(DMTCP_LIB)/libmtcp.so \ $(DMTCP_BIN)/mtcp_restart all: refresh foo foo: foo.c gcc -Wall -g foo.c -o foo submit: condor_submit job.sub condor_submit system_job.sub analyze: @echo "Jobs which started from initial state more than once!" @grep -c ' -' shim_dmtcp*log | sed -e 's/:/ /g' | awk '{print $$2 " " $$1}' | sort -n | egrep -v '^1 ' @echo "Which job output files don't match the template?" @for i in `echo output_file.*.out`; do if ! `/usr/bin/cmp $$i out.template`; then echo "$$i corrupt!"; diff $$i out.template; fi; done refresh: $(DMTCP_FILES) cp $(DMTCP_FILES) . touch refresh clean: rm -f *.log *.out *.err *.dmtcp jassertlog.* dmtcpConTable.* foo dmtcp_restart_script.sh dmtcpPid* output_file core.* dmtcp_checkpoint dmtcp_command dmtcp_coordinator dmtcp_restart dmtcphijack.so libmtcp.so mtcp_restart refresh proc-maps* backtrace* dmtcpShmidList* dmtcpShmidMap* dmtcp_restart_script* debian/dmtcp/analyze_log0000775000000000000000000000032612260003121012515 0ustar #! /bin/sh LOG=$1 if [ -z $LOG ] ; then echo "Please specify a shim_dmtcp logfile!" exit 1; fi egrep -e '(Initial|Resumption|Hostname|Checkpoint platform|Linux Flavor|Kernel|GCC revision|\*|Application)' $LOG debian/dmtcp/system_job.sub0000664000000000000000000000567212260003121013165 0ustar # analog to job.sub, but this one assumes a cluster-wide installed dmtcp # and submits a python script, hence snapshotting the python intepreter universe = vanilla executable = shim_dmtcp coresize=-1 ############################################################################### # Testing Various Requirements Expressions # DMTCP sometimes does odd behaviors on slightly different installations # of Linux. This allows me to select different types of machines to narrow # down problems. ############################################################################### # Keep it on the same checkpoint platform and kernel revision. Change to # whatever you need this to be to limit the run of DMTCP jobs to a specific # set of platforms if you discover problems. #Requirements = (CheckpointPlatform == "LINUX INTEL 2.6.x normal 0x40000000" && OSKernelRelease == "2.6.18-128.el5") ############################################################################### # Argument Meaning #------------------ # --log log file name for actions in shim_dmtcp script, if n/a use /dev/null # --stdin stdin file, if n/a use /dev/null # --stdout stdout file, if n/a use /dev/null # --stderr stderr file, if n/a use /dev/null # --ckptint checkpointing interval in seconds # 1 the executable name you should have transferred in # 2+ arguments to the executable ############################################################################### arguments = --log shim_dmtcp.$(CLUSTER).$(PROCESS).log --stdin foo.py --stdout job.$(CLUSTER).$(PROCESS).out --stderr job.$(CLUSTER).$(PROCESS).err --ckptint 1800 ./foo.py 7200 output_file.$(CLUSTER).$(PROCESS).out ############################################################################### # Enable file transfer. Here is where you 'mixin' the user's input and # output fles along with what is needed for DMTCP. Don't forget to transfer # the actual executable along. ############################################################################### should_transfer_files = YES when_to_transfer_output = ON_EXIT_OR_EVICT transfer_input_files = foo.py ############################################################################### # Set up various environment variables. If you need to specify more, mix them # in here. ############################################################################### environment=DMTCP_TMPDIR=./;JALIB_STDERR_PATH=/dev/null;DMTCP_PREFIX_ID=$(CLUSTER)_$(PROCESS) ############################################################################### # SIGINT is our soft checkpointing signal ############################################################################### kill_sig = 2 ############################################################################### # Output andl og files for the shim process which performs the work. ############################################################################### output = shim.$(CLUSTER).$(PROCESS).out error = shim.$(CLUSTER).$(PROCESS).err log = shim.log Notification = Never queue 1 debian/dmtcp/job.sub0000664000000000000000000000564112260003121011555 0ustar universe = vanilla executable = shim_dmtcp coresize=-1 ############################################################################### # Testing Various Requirements Expressions # DMTCP sometimes does odd behaviors on slightly different installations # of Linux. This allows me to select different types of machines to narrow # down problems. ############################################################################### # Keep it on the same checkpoint platform and kernel revision. Change to # whatever you need this to be to limit the run of DMTCP jobs to a specific # set of platforms if you discover problems. #Requirements = (CheckpointPlatform == "LINUX INTEL 2.6.x normal 0x40000000" && OSKernelRelease == "2.6.18-128.el5") ############################################################################### # Argument Meaning #------------------ # --log log file name for actions in shim_dmtcp script, if n/a use /dev/null # --stdin stdin file, if n/a use /dev/null # --stdout stdout file, if n/a use /dev/null # --stderr stderr file, if n/a use /dev/null # --ckptint checkpointing interval in seconds # 1 the executable name you should have transferred in # 2+ arguments to the executable ############################################################################### arguments = --log shim_dmtcp.$(CLUSTER).$(PROCESS).log --stdin foo.c --stdout job.$(CLUSTER).$(PROCESS).out --stderr job.$(CLUSTER).$(PROCESS).err --ckptint 1800 ./foo 7200 output_file.$(CLUSTER).$(PROCESS).out ############################################################################### # Enable file transfer. Here is where you 'mixin' the user's input and # output fles along with what is needed for DMTCP. Don't forget to transfer # the actual executable along. ############################################################################### should_transfer_files = YES when_to_transfer_output = ON_EXIT_OR_EVICT transfer_input_files = foo,foo.c,dmtcp_checkpoint,dmtcp_coordinator,dmtcp_command,dmtcp_restart,dmtcphijack.so,libmtcp.so,mtcp_restart ############################################################################### # Set up various environment variables. If you need to specify more, mix them # in here. ############################################################################### environment=DMTCP_TMPDIR=./;JALIB_STDERR_PATH=/dev/null;DMTCP_PREFIX_ID=$(CLUSTER)_$(PROCESS) ############################################################################### # SIGINT is our soft checkpointing signal ############################################################################### kill_sig = 2 ############################################################################### # Output andl og files for the shim process which performs the work. ############################################################################### output = shim.$(CLUSTER).$(PROCESS).out error = shim.$(CLUSTER).$(PROCESS).err log = shim.log Notification = Never queue 1 debian/dmtcp/foo.py0000775000000000000000000000121512260003121011421 0ustar #!/usr/bin/env python # Python analog to foo.c import sys import time min_delay = 10 runtime = int(sys.argv[1]) if runtime < min_delay: print 'Delay has a minimum of', min_delay, 'seconds' runtime = min_delay outfile = open(sys.argv[2], 'w') print 'Dumping stdin:' outfile.write('Dumping stdin:\n') for line in sys.stdin: print 'stdin: %s' % line, outfile.write('stdin: %s' % line) print 'Doing work for', runtime, 'seconds' outfile.write('Doing work for %i seconds\n' % runtime) for t in xrange(runtime): print 'i = %i' % t outfile.write('i = %i\n' % t) time.sleep(1) print 'Done.' outfile.write('Done.\n') sys.exit(0); debian/dmtcp/foo.c0000664000000000000000000000240712260003121011214 0ustar #include #include #include #include #include int main(int argc, char *argv[]) { int delay = 10; int i; char line[1024]; char *file = "./output_file"; FILE *fout = NULL; if (argc == 2) { delay = atoi(argv[1]); } if (argc == 3) { delay = atoi(argv[1]); file = argv[2]; } if (delay < 10) { printf("Delay has a minimum of 10 seconds\n"); fflush(NULL); delay = 10; } fout = fopen(file, "a"); if (fout == NULL) { printf("Can't open output file! %d(%s)\n", errno, strerror(errno)); } /* If there is any stdin, copy it to output, then start the work when stdin closes */ printf("Dumping stdin:\n"); fprintf(fout, "Dumping stdin:\n"); fflush(NULL); while(fgets(line, 1024, stdin) != NULL) { printf("stdin: %s", line); fprintf(fout, "stdin: %s", line); fflush(NULL); } printf("Doing work for %d seconds\n", delay); fprintf(fout, "Doing work for %d seconds\n", delay); fflush(NULL); for (i = 0; i < delay; i++) { printf("i = %d\n", i); fprintf(fout, "i = %d\n", i); fflush(NULL); sleep(1); } printf("Done.\n"); fprintf(fout, "Done.\n"); fflush(NULL); if (fclose(fout) < 0) { printf("Failed to close fout? %d(%s)\n", errno, strerror(errno)); fflush(NULL); } return 0; } debian/dmtcp/README0000664000000000000000000001137712260003121011153 0ustar DESCRIPTION ----------- This directory contains a means by which a simple job is submitted into Condor under DMTCP. The purpose of this code is to test the initial wrapping of DMTCP into Condor via Condor's pre-built mechanisms. It is also used to test DMTCP across a wide variety of Linux machines which have different kernel/libc/etc revisions. See the INSTRUCTIONS section after the manifest and explanation of the files. This code is under the Apache V2.0 License. It was written by Peter Keller , a member of the Condor Team. Inqueries about the DMTCP/Condor integration software should be sent to condor-admin@cs.wisc.edu. DMTCP ----- Get the latest stable release of DMTCP (1.2.0 or later) from here: http://dmtcp.sourceforge.net/downloads.html Compile and install it somewhere. You don't have to be root. File: Makefile -------------- The Makefile contains 5 targets: all submit foo analyze clean all - run target foo submit - submit job.sub into Condor foo - make the C test executable analyze - after a run is completed, produce a report about what happened. clean - make the system ready for a resubmit but you have to condor_rm yourself refresh - Copy needed libraries and binaries from dmtcp installation to here. NOTE!!! Fix DMTCP_BIN and DMTCP_LIB in the Makefile to point to your installed DMTCP binaries and libraries. THIS IS REQUIRED! File: foo.c ----------- This is a C program which will copy its stdin to a file, then iterate a count into the file for X seconds. The command line arguments are a single integer which represents the number of seconds and lines of counting output the program is supposed to perform. In the Condor job, the stdin is the foo.c file itself. This is the main test job. File: job.sub ------------- This is the Condor job description file. The actual job being submitted is shim_dmtcp, which is called with a pile of arguments including the name of the actual job to run. The important sections of this file are: 1. The arguments line, see the description in the file. 2. The environment line, in order to get DMTCP output in the right place. 3. The kill_sig, which tells shim_dmtcp when to checkpoint. 4. The file transfer lines, which move all of the required DMTCP files in addition to the job executable, and any files the job may require to the execute machine. The intermediate/checkpoint files made by DMTCP are transferred to and from Condor's spool directory and controlled by the ON_EVICT_OR_EXIT setting. 5. The stdout/stderr is handled in that there is a specification for the shim_dmtcp script as defined in the job.sub in addition to files being specified as arguments to shim_dmtcp which represent the stdout/stderr files of the wrapped job running under DMTCP. File: out.template ------------------ This represents the output of the foo program for a correct run given the arguments supplied in the shim_dmtcp script. The make analyze phase uses this to check if the output of a job was correct. File: analyze_log ----------------- This is a simple program to select lines of interest from a shim_dmtcp stdout file. File: shim_dmtcp ---------------- This is the real job submitted into Condor by job.sub and the means by which DMTCP wraps a job. The main part of this script is to handle initial starts, checkpointing, and restarts of the wrapped job in addition to starting the dmtcp coordinator process for exclusive use by the wrapped job. Determination of a restart or an initial start is based upon the presence of the checkpoint file written by the coordinator. When a checkpoint signal arrives from Condor, the checkpoint() function is called which ultimately exits after the checkpoint is effected. The WARNING section in the file is to close an fd that is leaked from Condor to the job. Normally, this doesn't affect anything, but in the case of DMTCP it does since DMTCP doesn't know how to restore it. The script is fairly well commented. ----------------------------------------------------------------------------- INSTRUCTIONS ------------ 0. Build and install DMTCP somewhere. Find DMTCP at: http://dmtcp.sourceforge.net/ 1. Fix the Makefile DMTCP_LIB and DMTCP_BIN paths to point to the installation of DMTCP. 2. An initial make should copy the dmtcp binaries and libraries over and compile foo.c into the executable. 3. A condor_submit of job.sub should put the single test job into Condor. 4. You can use the Requirements expression to control the set of machines upon which the job will be tested. If there is suspected instability in DMTCP, try running it on a homogenous set of machines and do your testing there. 5. Once the test job works, you can edit job.sub, following the directions in that file, to change it to use your job. debian/po/0000775000000000000000000000000012265321754007615 5ustar debian/po/POTFILES.in0000664000000000000000000000005512260521467011370 0ustar [type: gettext/rfc822deb] htcondor.templates debian/po/ja.po0000664000000000000000000003441212260521474010547 0ustar # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the condor package. # victory , 2013. # msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2013-07-22 23:28+0900\n" "Last-Translator: victory \n" "Language-Team: Japanese \n" "Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "HTCondor の設定" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "HTCondor の初期設定を自動的に行いますか?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "HTCondor の準備は自動的に、いくつか質問して既存の連合 (pool) の一員または全機" "能を持つ「Personal HTCondor インストール」用のマシン向けに適切な初期設定を作" "成できます。この生成された初期設定は後でさらに拡張できます。" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "自動設定しない場合 HTCondor はデフォルト設定でインストールされ、手作業により" "調整する必要があります。" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "利用状況の統計の提出を有効にしますか?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "HTCondor 作者は各 HTCondor 連合 (pool) に連合 (pool) の状態についての基本的な" "情報を定期的に更新して送るようにお願いしています。これに含まれるのはマシン総" "数、提出したジョブの数、ジョブを実行しているマシンの数、中央管理マシンのホス" "ト名、poolの名前だけです。この情報を更新することは HTCondor チームが " "HTCondor が世界中でどのように利用されているのかを知る手助けとなります。" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "中央管理マシンのアドレス:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "このマシンを既存の HTCondor 連合 (pool) に参加させる場合は中央管理マシンのア" "ドレスを指定する必要があります。アドレスには HTCondor でサポートしている任意" "の形式をマクロ表現も含めて利用できます。" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "例: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "ジョブ提出" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "ジョブ実行" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "中央管理マシン" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "HTCondor 連合 (pool) でのこのマシンの役割:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "このマシンで予定している役割を指定してください。対応するデーモンは自動的に開" "始します。" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "HTCondor 連合 (pool) のマシンには複数の役割を持たせることができます。一般的に" "は中央管理マシンが1台とジョブを実行するノードが複数存在します。中央管理マシン" "はユーザがジョブを提出するマシンを兼ねることがよくあります。しかし、複数のマ" "シンをジョブ提出用に充てることも可能です。" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "ローカル HTCondor 管理者のメールアドレス:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "この HTCondor 管理者はこのマシンの HTCondor に何か異常があったときにエラー" "メッセージを受け取ります。" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "ユーザディレクトリドメインラベル:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "このラベルは、提出しているマシンと実行マシンがユーザアカウントに同一のディレ" "クトリを共有しているか (言い換えればあるマシンの UID 1000 が他方の UID 1000 " "と同一ユーザかどうか) を HTCondor が判断するのに利用する文字列です。2台のマシ" "ンのラベルが一致した場合、HTCondor は各ジョブをジョブを提出した UID で実行" "し、(このラベルをドメインとして使用して) ユーザ@ドメインにメールを送ります。" "一致しない場合は HTCondor は全ジョブをユーザ「nobody」で実行します。これを空" "白にすると HTCondor はこのマシンの全ジョブをユーザ「nobody」で実行することに" "なります。" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "ドメインには HTCondor でサポートしている任意の形式をマクロ表現も含めて利用で" "きます。例: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "ファイルシステムドメインラベル:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "このラベルは任意の文字列で、提出しているマシンと実行マシンが同一のファイルシ" "ステムを共有しているか判断するのに利用します。専用クラスタでは全マシンがファ" "イルシステムを共有していることが多いため、同一のラベルを使うべきです。これを" "空白にすると自動的にローカルマシンの完全修飾ホスト名をセットし、HTCondor は" "ファイルシステムを共有する2台のマシンだとみなさなくなります。" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "例: my_shared_volume" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "「Personal HTCondor インストール」を実行しますか?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Personal HTCondor インストールは単一のマシン上で全機能を持つ HTCondor 連合 " "(pool) です。HTCondor は自動的に設定してこのマシン上に検出した CPU コアの数を" "通知します。HTCondor デーモンを外部ネットワークインターフェイス経由で利用する" "ことはできません。" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "このマシンを連合 (pool) の一員にする場合この設定は不適切です。" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "HTCondor で使わずに残しておく物理メモリの量 (MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "デフォルトで、HTCondor はそのマシンの物理メモリをすべて利用可能なものだとみな" "し、HTCondor ジョブで利用します。この値が定義されている場合、HTCondor は利用" "可能だと通知されたメモリの量からこの量を差し引きます。" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "例 (1 GB を確保する場合): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "このホストに書き込みできるマシン:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "HTCondor 連合 (pool) に参加するマシンを全てここに列挙する必要があります。この" "設定には単純にコンマで区切った一覧やワイルドカードを使ったドメイン表記、マク" "ロ表現を使えます。デフォルトではローカルホストだけがこのマシンの HTCondor " "デーモンへのアクセスを許可されます。" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "例: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "他のマシンの動作状況を問わず HTCondor ジョブを実行しますか?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "デフォルトで HTCondor はマシンが待機状態、つまりある程度の時間キーボード入力" "や CPU 負荷がなかった場合にのみジョブを開始します。さらに、コンソール入力があ" "ればジョブを停止し、マシンが再び待機状態になるまで再開されません。しかし、専" "用の計算ノードや Personal HTCondor インストールでは常に (利用可能なリソースが" "残っているとして) ジョブが提示され次第開始し、このマシンの他の活動を問わず継" "続的に実行するのが好ましいかもしれません。" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "独自のポリシーを作成する予定であればここでは HTCondor のデフォルトにしておく" "のが最善でしょう。" debian/po/de.po0000664000000000000000000003416112260521473010545 0ustar # GERMAN TRANSLATION OF CONDOR'S DEBCONF QUESTIONS. # Copyright (C) 2012 Erik Pfannenstein # This file is distributed under the same license as the CONDOR package. # Erik Pfannenstein , 2012. msgid "" msgstr "" "Project-Id-Version: condor 7.7.6-dfsg2\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-05-01 10:52+0200\n" "Last-Translator: Erik Pfannenstein \n" "Language-Team: debian-l10n-german@lists.debian.org\n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Virtaal 0.7.1\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "HTCondor-Konfiguration" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "HTCondor-Erstkonfiguration automatisch verwalten?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "Die Einrichtung von HTCondor kann automatisch vorgenommen werden. Dazu " "werden ein paar Fragen gestellt, um eine Erstkonfiguration für eine Maschine " "zu erstellen, die entweder ein Mitglied eines existierenden Pools oder eine " "voll funktionale »Persönliche HTCondor-Installation« ist. Diese " "Erstkonfiguration kann später erweitert werden." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "Andernfalls wird HTCondor mit einer Vorkonfiguration installiert, die per " "Hand angepasst werden muss." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Die Übertragung von Nutzungsstatistiken einschalten?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Die HTCondor-Autoren ersuchen höflich, dass jeder HTCondor-Pool ihnen " "periodische Aktualisierungen mit Grundinformationen über den Zustand des " "Pools zusendet. Die Aktualisierungen enthalten nur die Gesamtzahl der " "Maschinen, die Anzahl der übertragenen Aufträge, die Anzahl der Maschinen, " "die Aufträge ausführt, den Rechnernamen des Zentralverwalters und den Namen " "des Pools. Diese Aktualisierungen verschaffen dem HTCondor-Team eine " "Übersicht, wie HTCondor in aller Welt eingesetzt wird." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Adresse des Zentralverwalters:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Wenn diese Maschine einem existierenden HTCondor-Pool beitreten soll, muss " "die Adresse der zentralen Verwaltungsmaschine angegeben werden. Jedes von " "HTCondor unterstützte Adressformat kann verwendet werden, einschließlich " "Makro-Ausdrücken." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Beispiel: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Auftragsübertragung" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Auftragsausführung" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Zentralverwalter" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Rolle dieser Maschine im HTCondor-Pool:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Bitte geben Sie die Rolle oder Rollen an, die Sie dieser Maschine zuweisen " "wollen, damit die entsprechenden Daemons automatisch gestartet werden." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Eine Maschine in einem HTCondor-Pool kann mehrere Rollen haben. Im " "Allgemeinen gibt es einen Zentralverwalter und mehrere Knoten, die Aufträge " "ausführen. Oft ist der Zentralverwalter auch die Maschine, von der aus die " "Benutzer Aufträge übertragen. Es ist aber auch möglich, mehrere Maschinen " "für die Auftrag-Übertragung einzusetzen." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "E-Mail-Adresse des lokalen HTCondor-Administrators:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "Der HTCondor-Administrator wird Fehlernachrichten bekommen, wenn auf dieser " "Maschine etwas mit HTCondor schief läuft." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "Benutzerverzeichnis-Domain-Bezeichnung:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Diese Bezeichnung ist eine Zeichenkette, welche HTCondor zur Entscheidung " "darüber heranzieht, ob eine Übertragungs- und eine Ausführungs-Maschine das " "selbe Verzeichnis mit Benutzerkonten teilen (ob UID 1000 auf einer Maschine " "die selbe Person ist wie UID 1000 auf der anderen). Wenn die Bezeichnungen " "auf den beiden Maschinen übereinstimmen, wird HTCondor jeden Auftrag unter " "der UID ausführen, die diesen Auftrag übermittelt hat und E-Mails darüber an " "Benutzer@DOMAIN verschicken (wobei diese Bezeichnung als Wert für DOMAIN " "benutzt wird). Falls nicht, wird HTCondor alle Aufträge als Benutzer " "»nobody« ausführen. Wenn Sie die Bezeichnung leer lassen, wird HTCondor alle " "Aufträge auf dieser Maschine als »nobody« ausführen." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Jedes von HTCondor unterstütztes Domain-Format kann verwendet werden, " "einschließlich Makro-Ausdrücken. Beispiel: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Dateisystem-Domain-Bezeichnung:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Diese Bezeichnung ist eine beliebige Zeichenkette, die zur Entscheidung " "herangezogen wird, ob eine Übertragungs-Maschine und eine Ausführungs-" "Maschine das selbe Dateisystem gemeinsam nutzen. In einem dedizierten " "Cluster werden alle Maschinen höchstwahrscheinlich auf ein gemeinsames " "Dateisystem zugreifen und sollten deshalb dieselbe Bezeichnung verwenden. " "Wenn Sie dies leer lassen, wird es automatisch auf den vollständigen " "Rechnernamen der lokalen Maschine gesetzt, weswegen HTCondor nicht annehmen " "wird, dass irgendein Dateisystem von zwei Maschinen gemeinsam genutzt wird." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Beispiel: mein_gemeinsam_genutztes_laufwerk" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "»Persönliche HTCondor-Installation« vornehmen?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Eine Persönliche HTCondor-Installation ist ein voll funktionaler HTCondor-" "Pool auf einer einzelnen Maschine. HTCondor wird automatisch so viele Slots " "konfigurieren und bekanntgeben, wie es CPU-Kerne auf der Maschine vorfinden " "wird. Die HTCondor-Daemons werden nicht durch externe Netzwerkschnittstellen " "erreichbar sein." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Diese Konfiguration ist ungeeignet, wenn diese Maschine Teil eines Pools " "werden soll." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "" "Größe des physischen Speichers, der vor HTCondor freigehalten werden soll " "(in MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "In der Voreinstellung betrachtet HTCondor den gesamten physischen Speicher " "als für HTCondor-Aufträge verfügbar. Wenn dieser Wert definiert wird, zieht " "HTCondor ihn von der Speichermenge ab, den es als verfügbar bekanntgibt." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Beispiel (um ein Gigabyte zu reservieren): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Maschinen mit Schreibzugriff auf diesen Rechner:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Alle Maschinen, die am HTCondor-Pool teilnehmen sollen, müssen hier " "aufgelistet werden. Diese Einstellung kann eine kommaseparierte Liste sein, " "eine Domain mit Platzhaltern oder ein Makro-Ausdruck. In der Voreinstellung " "darf nur Localhost auf die HTCondor-Daemons dieser Maschine zugreifen." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Beispiel: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "" "HTCondor-Aufträge ohne Rücksicht auf andere Aktivitäten der Maschine " "durchführen?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "In der Voreinstellung startet HTCondor Aufträge nur, wenn die Maschine " "leerläuft, d. h. einige Zeit lang keine Tastatureingaben oder CPU-Last " "auftritt. Außerdem setzt es die Aufträge aus, wenn es Aktivitäten auf der " "Konsole gibt und bearbeitet sie erst weiter, wenn die Maschine wieder leer " "läuft. Allerdings kann es für einen dedizierten Rechenknoten oder eine " "Persönliche HTCondor-Installation denkbar sein, Aufträge immer zu starten, " "sobald sie übermittelt wurden (unter der Voraussetzung, dass die Ressourcen " "immer noch verfügbar sind) und sie ohne Rücksicht auf andere Aktivitäten auf " "dieser Maschine zu bearbeiten." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Wenn Sie vorhaben, eine eigene Richtlinie zu erstellen, ist es das Beste, " "hier HTCondors Voreinstellungen zu verwenden." debian/po/es.po0000664000000000000000000003605312260521473010566 0ustar # condor translation to Spanish # Copyright (C) 2012 Software in the Public Interest, SPI Inc. # This file is distributed under the same license as the condor package. # # Changes: # - Initial translation # Fernando C. Estrada , 2012 # # Traductores, si no conoce el formato PO, merece la pena leer la # documentación de gettext, especialmente las secciones dedicadas a este # formato, por ejemplo ejecutando: # info -n '(gettext)PO Files' # info -n '(gettext)Header Entry' # # Equipo de traducción al español, por favor lean antes de traducir # los siguientes documentos: # # - El proyecto de traducción de Debian al español # http://www.debian.org/intl/spanish/ # especialmente las notas y normas de traducción en # http://www.debian.org/intl/spanish/notas # # - La guía de traducción de po's de debconf: # /usr/share/doc/po-debconf/README-trans # o http://www.debian.org/intl/l10n/po-debconf/README-trans # # Si tiene dudas o consultas sobre esta traducción consulte con el último # traductor (campo Last-Translator) y ponga en copia a la lista de # traducción de Debian al español () # msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-07-01 23:35-0500\n" "Last-Translator: Fernando C. Estrada \n" "Language-Team: Debian L10N Spanish \n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Virtaal 0.7.1\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Configuración de condor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "" "¿Desea administrar la configuración inicial de HTCondor en forma automática?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "La configuración de HTCondor se puede realizar en forma automática, " "contestando unas cuantas preguntas para crear una configuración inicial " "apropiada para una máquina que sea miembro de un conjunto («pool») " "existente, o para una instalación personal completa y funcional de HTCondor. " "Esta configuración inicial puede extenderse más adelante." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "De otra forma HTCondor se instalará con la configuración predeterminada que " "necesita ser personalizada en forma manual." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "¿Desea activar el envío de estadísticas de uso?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Los autores de HTCondor solicitan que cada conjunto («pool») de HTCondor " "envíe actualizaciones periódicas con información básica acerca del estado " "del conjunto. Las actualizaciones incluyen únicamente el número total de " "máquinas, el número de trabajos enviados, el número de máquinas ejecutando " "trabajos, el nombre del equipo del administrador central, y el nombre del " "conjunto. Estas actualizaciones ayudan al equipo de HTCondor para ver como " "se utiliza HTCondor alrededor del mundo." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Dirección del administrador central:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Si esta máquina se va a unir a un conjunto («pool») HTCondor existente, debe " "especificar la dirección de la máquina del administrador central. Se puede " "utilizar cualquier formato de dirección aceptada por HTCondor, incluyendo " "expresiones macro." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Ejemplo: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Envío de trabajo" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Ejecución de trabajo" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Administrador central" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Rol de esta máquina en el conjunto («pool») HTCondor:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Especifique el rol o roles para esta máquina, para la cual se habilitarán " "los demonios correspondientes para que se inicien de forma automática." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Una máquina en el conjunto («pool») condor puede tener múltiples roles. En " "general hay un administrador central y múltiples equipos ejecutando " "trabajos. En ocasiones el administrador central es también el equipo desde " "el cual los usuarios envían trabajos. Sin embargo, es posible tener " "múltiples máquinas disponibles para el envío de trabajos." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "Dirección de correo electrónico del administrador local de HTCondor:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "El administrador de HTCondor recibirá mensajes de error si algo va mal con " "HTCondor o con su máquina." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "etiqueta de dominio para el directorio de usuario" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Esta etiqueta es una cadena que HTCondor utiliza para decidir si la máquina " "que envía y la máquina que ejecuta comparten el mismo directorio o cuentas " "de usuario (esto es, cuando UID 1000 en una máquina es la misma persona que " "UID 1000 en la otra). Si las etiquetas en las dos máquinas coinciden " "HTCondor ejecutará cada trabajo bajo el UID que envió el trabajo, y enviará " "correos electrónicos acerca de ellos a user@DOMAIN (utilizando esta etiqueta " "como el valor de DOMAIN). Si no, HTCondor ejecutará todos los trabajos como " "el usuario «nobody». Dejar en blanco causará que HTCondor ejecute todos los " "trabajos en esta máquina como usuario «nobody»." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Puede utilizar cualquier formato de dominio soportado por HTCondor, " "incluyendo expresiones macro. Ejemplo: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Etiqueta de dominio del sistema de archivos:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Esta etiqueta es una cadena arbitraria que se utiliza para decidir si la " "máquina que envía y la máquina que ejecuta comparten el mismo sistema de " "archivos. En un cluster dedicado lo más probable es que todas las máquinas " "utilicen un sistema de archivos compartido y por lo tanto utilicen la misma " "etiqueta. Si se deja en blanco se asignará en forma automática el nombre " "completo calificado de la máquina local, lo que evitará que HTCondor asuma " "que dos máquinas comparten un sistema de archivos." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Ejemplo: mi_volumen_compartido" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "¿Desea realizar una instalación personal de HTCondor?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Una instalación personal de HTCondor es un conjunto («pool») de HTCondor " "completamente funcional en una sola máquina. HTCondor configurará y " "anunciará tantas ranuras como núcleos de CPU detecte en esta máquina. Los " "demonios de HTCondor no estarán disponibles a través de interfaces de red " "externas." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Esta configuración no es apropiada si se planea utilizar esta máquina como " "un miembro del conjunto («pool»)." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Cantidad de memoria física para asignar a HTCondor (en MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "HTCondor considera por defecto toda la memoria física de una máquina como " "disponible para ser utilizada para trabajos de HTCondor. Si este valor se " "define, HTCondor lo restará de la cantidad de memoria indicada como " "disponible." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Ejemplo (para reservar 1 GB): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Máquinas con acceso de escritura a este equipo:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Todas las máquinas que participan en el conjunto («pool») de HTCondor " "necesitan estar listadas aquí. Esta configuración puede ser un archivo " "delimitado por comas, un dominio con comodines, o una expresión macro. En " "forma predeterminada únicamente «localhost» tiene permitido ingresar a los " "demonios de HTCondor en esta máquina." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Ejemplo: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "" "Ejecutar trabajos en HTCondor sin importar la actividad en otras máquinas." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "En forma predeterminada HTCondor únicamente inicia trabajos cuando una " "máquina está inactiva, es decir, cuando no hay actividad del teclado o carga " "en el CPU por algún tiempo. Por otra parte, los trabajos se suspenden cuando " "hay actividad y no los continúa hasta que la máquina está inactiva " "nuevamente, sin embargo, para un nodo de cómputo dedicado o para una " "instalación personal de HTCondor podría ser conveniente comenzar los " "trabajos tan pronto sean enviados (considerando que los recursos estén aún " "disponibles), y ejecutados en forma continua independientemente de otras " "actividades en esta máquina." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Si planea redactar una directiva personalizada es mejor mantener la " "predeterminada por HTCondor aquí." debian/po/da.po0000664000000000000000000003240212260521473010535 0ustar # Danish translation condor. # Copyright (C) 2012 condor & nedenstående oversættere. # This file is distributed under the same license as the condor package. # Joe Hansen , 2012. # msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-05-01 19:21+0100\n" "Last-Translator: Joe Hansen \n" "Language-Team: Danish \n" "Language: da\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Konfiguration af HTCondor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Håndter oprindelig konfiguration af HTCondor automatisk?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "Opsætningen af HTCondor kan håndteres automatisk med et par få spørgsmål for " "at oprette en oprindelig konfiguration egnet for en maskine som hverken er " "medlem af en eksisterende pulje eler en fuld funktionel »Personal HTCondor " "installation«. Denne oprindelige konfiguration kan senere udvides yderligere." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "Ellers vil HTCondor blive installeret med en standardkonfiguration, som skal " "tilpasses manuelt." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Aktiver indsendelse af brugsstatistik?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Forfatterne af HTCondor anmoder venligst om at hver HTCondorpulje sender dem " "periodiske opdateringer med basisinformation om status for puljen. " "Opdateringer inkluderer kun det samlede antal maskiner, antallet af " "indsendte job, antallet af maskiner der kører job, værtsnavnet for den " "centrale håndtering og navnet på puljen. Disse opdateringer hjælper " "HTCondorholdet med at se hvordan HTCondor bliver brugt rundt omkring i " "verden." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Adresse for den centrale håndtering:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Hvis denne maskine skal sluttes til en eksisterende HTCondorpulje, så skal " "adressen for den centrale håndtering angives. Alle adresseformater " "understøttet af HTCondor kan bruges, inklusive makroudtryk." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Eksempel: condor-manager.eksempel.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Jobindsendelse" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Jobkørsel" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Central håndtering" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Rolle for denne maskine i HTCondorpuljen:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Angiv venligst den forventede rolle eller roller for denne maskine, som de " "tilsvarende dæmoner vil blive startet automatisk for." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "En maskine i en HTCondorpulje kan have flere roller. Generelt er der en " "central håndtering og flere knuder som kører job. Ofte er den centrale " "håndtering også maskinen hvorfra brugere indsender job. Det er også muligt " "at have flere maskiner tilgængelige for jobindsendelse." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "E-post-adresse for den lokale HTCondoradministrator:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "HTCondoradministratoren vil modtage fejlbeskeder, hvis noget går galt med " "HTCondor på denne maskine." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "domæneetiket for brugermappe:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Denne etiket er en streng, som HTCondor bruger til at beslutte om en " "indsendelsesmaskine og en kørselsmaskine deler den samme mappe af " "brugerkontoer (det vil sige, hvorvidt UID 1000 på en maskine er den samme " "person som UID 1000 på den anden). Hvis etiketterne på de to maskiner " "matcher, så vil HTCondor køre hvert job under UID'en som indsendte jobbet og " "sende e-post om dem til user@DOMAIN (med brug af etiketten som værdien for " "DOMÆNE). Hvis ikke så vil HTCondor køre alle job som bruger " "»nobody« (ingen). Et tomt felt vil få HTCondor til at køre alle job på denne " "maskine med brugeren »nobody« (ingen)." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Alle domæneformater understøttet af HTCondor kan bruges, inklusiv " "makroudtryk. Eksempel: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Domæneetiket for filsystem:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Denne etiket er en arbitrær streng som HTCondor bruger til at beslutte om en " "indsendelsesmaskine og en kørselsmaskine deler det samme filsystem. I en " "dedikeret klynge vil alle maskiner højst sandsynlig bruge et delt filsystem " "og skal dermed bruge den samme etiket. Hvis efterladt tomt, så vil den " "automatisk blive sat til det fuldt kvalificerede værtsnavn for den lokale " "maskine, som vil forhindre HTCondor i at antage at to maskiner deler et " "filsystem." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Eksempel: min_delte_diskenhed" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Udfør en »Personlig HTCondorinstallation«?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "En personlig HTCondorinstallation er en fuld funktionel HTCondorpulje på en " "enkelt maskine. HTCondor vil automatisk konfigurere og give besked om antal " "pladser, jævnfør det antal CPU-kerner som detekteres på denne maskine. " "HTCondordæmoner vil ikke være tilgængelige via eksterne netværksgrænseflader." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Denne konfiguration er ikke passende hvis denne maskine skal være et medlem " "af en pulje." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "" "Mængden af fysisk hukommelse der skal tilbageholdes fra HTCondor (i MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "Som standard så anser HTCondor al fysisk hukommelse på en maskine som " "tilgængeligt for HTCondorjob. Hvis denne værdi er defineret, så vil HTCondor " "fratrække det fra mængden af hukommelse den anser som tilgængelig." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Eksempel (for at reservere 1 GB): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Maskiner med skriveadgang til denne vært:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Alle maskiner som skal deltage i HTCondorpuljen skal være nævnt her. Denne " "indstilling kan være en ren kommaadskilt liste, et domæne med jokertegn " "eller et makroudtryk. Som standard har kun den lokale vært (localhost) " "adgang til HTCondordæmoner på denne maskine." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Eksempel: *.condor-pool.eksempel.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "Kør HTCondorjob uanset anden maskinaktivitet?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "Som standard starter HTCondor kun job når en maskine er ledig, det vil sige " "ingen tastaturaktivitet eller CPU-belastning i en periode. Derudover så " "suspenderer den også job når der er konsolaktivitet og fortsætter ikke disse " "før maskinen igen bliver ledig. For en dedikeret beregningsknude eller en " "personlig HTCondorinstallation kan det være ønskværdigt altid at starte job " "så snart de er indsendt (hvis ressourcerne stadig er tilgængelige), og at " "køre dem løbende uanset anden aktivitet på denne maskine." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Hvis du planlægger at sammensætte en tilpasset politik, så er det bedst at " "bevare HTCondors standard her." debian/po/ru.po0000664000000000000000000004227412260521474010610 0ustar # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the condor package. # # Yuri Kozlov , 2012. msgid "" msgstr "" "Project-Id-Version: condor 7.7.6~dfsg.1-2\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-05-04 21:32+0400\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 1.2\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Настройка HTCondor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Выполнить начальную настройку HTCondor автоматически?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "Начальная настройка HTCondor для машины, которая может быть членом " "существующего пула или полностью работать в качестве «персональной установки " "HTCondor», может быть выполнена автоматически на основе ответов на несколько " "вопросов. Созданная настройка в дальнейшем может быть расширена." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "В противном случае HTCondor будет установлен с настройкой по умолчанию, " "которую требуется доработать вручную." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Включить отправку статистики по использованию?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Авторы HTCondor вежливо просят, чтобы каждый пул HTCondor периодически " "посылал им обновления с общей информацией о состоянии пула. В обновления " "включается только количество машин, количество отправленных заданий, " "количество машин, выполняющих задания, имя узла центра управления и имя " "пула. Эти обновления помогают команде HTCondor наблюдать как HTCondor " "используется в мире." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Адрес центра управления:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Для того, чтобы данную машину включить в существующей пул HTCondor, " "требуется указать адрес машины центра управления. Может быть использован " "любой формат адреса, поддерживаемый HTCondor, включая выражения с макросами." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Пример: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Отправитель задания" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Исполнитель задания" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Центр управления" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Роль данной машины в пуле HTCondor:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Укажите предназначение данной машины — от этого зависит какие службы будут " "запускаться автоматически." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Машина в пуле HTCondor может иметь несколько ролей. Обычно, есть центр " "управления и несколько узлов, которые выполняют работу. Часто машина центра " "управления также служит для отправки пользовательских заданий. Однако также " "возможно иметь несколько машин для отправки заданий." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "Адрес электронной почты локального администратора HTCondor:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "Администратор HTCondor будет получать сообщения об ошибках, если что-то " "случится с HTCondor на этой машине." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "Ярлык-домен каталога пользователей:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Данный ярлык представляет собой строку, которую HTCondor использует для " "принятия решения о том, имеет ли отправляющая машина и исполняющая машина " "одинаковый каталог пользовательских учётных записей (то есть, принадлежит ли " "UID 1000 на одной машине тому же человеку с UID 1000 на другой). Если ярлыки " "на двух машинах совпадают, то HTCondor будет запускать каждое задание с тем " "же UID, с которым было отправлено задание и посылать электронное сообщение о " "нём пользователю@ДОМЕН (используя данный ярлык в качестве ДОМЕНА). Если " "ярлыки не совпадают, то HTCondor будет выполнять все задания с правами " "пользователя «nobody». Если оставить поле пустым, то HTCondor будет " "выполнять все задания на этой машине с правами пользователя «nobody»." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Можно использовать любой формат, поддерживаемый HTCondor, включая выражения " "с макросами. Пример: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Ярлык-домен файловой системы:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Данный ярлык представляет собой произвольную строку, которая используется " "для принятия решения о том, имеет ли отправляющая машина и исполняющая " "машина общую файловую систему. В выделенных машинных кластерах, вероятнее " "всего, будет использована общая файловая система и поэтому на всех машинах " "должен быть одинаковый ярлык. Если оставить поле пустым, то ему будет " "автоматически присвоено значение полностью определённого доменного имени " "локальной машины, что заставит HTCondor считать, что общая файловая система " "не используется." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Пример: my_shared_volume" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Выполнить «персональную установку HTCondor»?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Персональная установка HTCondor — это полностью работоспособный пул " "HTCondor, состоящий из одной машины. HTCondor будет автоматически настроен и " "объявит количество слотов равным количеству обнаруженных процессорных ядер " "на этой машине. Службы HTCondor будут недоступны на внешних сетевых " "интерфейсах." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "Эта настройка не подходит, если данная машина должна входить в пул." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Количество физической памяти, не занимаемой HTCondor (в МБ):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "По умолчанию, HTCondor считает доступной для заданий всю физическую память " "машины. Указываемое здесь значение будет вычтено HTCondor из количества " "памяти объявляемой как доступная." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Пример (резервируется 1ГБ): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Машины, имеющие право записи на этом узле:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Здесь требуется перечислить все машины, которые входят в пул HTCondor. " "Данная настройка может представлять собой список значений через запятую, " "домен с маской или выражение с макросами. По умолчанию, только localhost " "разрешён доступ к службам HTCondor на этой машине." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Пример: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "Выполнять задания HTCondor независимо от другой активности на машине?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "По умолчанию, HTCondor запускает задания только когда машина простаивает, то " "есть, когда какое-то время нет активности клавиатуры или нагрузки ЦП. Кроме " "этого, он также приостанавливает задания при появлении активности на консоли " "и не продолжает выполнение пока машина снова не станет простаивать. Однако, " "на выделенном вычислительном узле или при персональной установке HTCondor " "может быть желательно всегда запускать задания сразу после их поступления " "(пока есть ресурсы), и выполнять их без перерыва независимо от другой " "нагрузки на машину." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Если вы планируете составить свою собственную политику, лучше оставить " "настройку HTCondor по умолчанию." debian/po/it.po0000664000000000000000000003374412260521474010600 0ustar # Italian translation of condor debconf messages # Copyright (C) 2012, condor package copyright holder # This file is distributed under the same license as the condor package. # Beatrice Torracca , 2012. msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-05-05 17:06+0200\n" "Last-Translator: Beatrice Torracca \n" "Language-Team: Italian \n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Virtaal 0.7.1\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Configurazione di HTCondor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Gestire la configurazione iniziale di HTCondor in modo automatico?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "L'impostazione di HTCondor può essere gestita in modo automatico, ponendo " "alcune domande per creare una configurazione iniziale adatta per una " "macchina che sia un membro di un pool esistente oppure una \"installazione " "di HTCondor Personalizzata\" pienamente funzionante. La configurazione " "iniziale che viene generata può essere successivamente espansa ulteriormente." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "HTCondor viene altrimenti installato con una configurazione predefinita che " "deve essere personalizzata a mano." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Permettere l'invio di statistiche sull'uso?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Agli autori di HTCondor farebbe piacere se ogni pool HTCondor inviasse " "periodicamente degli aggiornamenti con le informazioni di base sullo stato " "del pool. Gli aggiornamenti includono solo il numero totale di macchine, il " "numero di compiti sottoposti, il numero di macchine che eseguono compiti, il " "nome host del gestore centrale e il nome del pool. Questi aggiornamenti " "aiutano il Team HTCondor a capire come HTCondor venga usato in tutto il " "mondo." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Indirizzo del gestore centrale:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Se questa macchina è pensata per essere unita ad un pool HTCondor esistente, " "deve essere specificato l'indirizzo della macchina con il gestore centrale. " "Può essere usato qualsiasi formato di indirizzo gestito da HTCondor, incluse " "le espressioni macro." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Esempio: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Invio di compiti" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Esecuzione di compiti" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Gestore centrale" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Ruolo di questa macchina nel pool HTCondor:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Specificare il ruolo o i ruoli ai quali è destinata questa macchina, e per i " "quali verranno avviati automaticamente i demoni corrispondenti." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Una macchina in un pool HTCondor può avere più ruoli. Generalmente c'è un " "gestore centrale e svariati nodi che eseguono compiti. Spesso il gestore " "centrale è anche la macchina dalla quale gli utenti inviano i compiti. " "Tuttavia è anche possibile avere più macchine a disposizione per l'invio di " "compiti." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "Indirizzo di posta elettronica dell'amministratore locale di HTCondor:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "L'amministratore di HTCondor riceverà i messaggi di errore se qualcosa che " "ha a che fare con HTCondor va storto su questa macchina." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "etichetta di dominio della directory utente:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Questa etichetta è una stringa che HTCondor usa per decidere se una macchina " "che invia compiti e una macchina che li esegue condividono la stessa " "directory di account utente (cioè se l'UID 1000 di una macchina è la stessa " "persona dell'UID 1000 sull'altra). Se le etichette sulle due macchine " "corrispondono, HTCondor eseguirà ciascun compito con l'UID di chi ha inviato " "il compito ed invierà le e-mail relative ad utente@DOMINIO (usando questa " "etichetta come valore per DOMINIO). In caso contrario, HTCondor eseguirà " "tutti i compiti come utente \"nobody\". Se si lascia questo valore in " "bianco, HTCondor eseguirà tutti i compiti su questa macchina come utente " "\"nobody\"." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Può essere usato qualsiasi formato gestito da HTCondor, incluse le " "espressioni macro. Esempio: $(NOMEHOST_COMPLETO)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Etichetta di dominio per il file system:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Questa etichetta è una stringa arbitraria che viene usata per decidere se " "una macchina che invia compiti e una macchina che li esegue condividono lo " "stesso file system. In un cluster dedicato, tutte le macchine useranno molto " "probabilmente un file system condiviso e pertanto dovrebbero usare la stessa " "etichetta. Se si lascia questo valore in bianco, verrà automaticamente " "impostato al nome host pienamente qualificato della macchina locale; ciò " "evita che HTCondor presuma che due macchine qualsiasi condividano un file " "system." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Esempio: mio_volume_condiviso" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Effettuare una \"installazione HTCondor Personalizzata\"?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Un'installazione HTCondor Personalizzata è un pool HTCondor pienamente " "funzionante su una singola macchina. HTCondor configurerà e pubblicizzerà " "automaticamente tanti slot quante CPU rileva sulla macchina. I demoni " "HTCondor non saranno disponibili attraverso le interfacce di rete esterne." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Questa configurazione non è adatta se questa macchina deve essere un membro " "di un pool." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Quantità di memoria fisica da interdire a HTCondor (in MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "In modo predefinito, HTCondor considera tutta la memoria fisica di una " "macchina come disponibile per essere usata per i suoi compiti. Se viene " "definito questo valore, HTCondor lo sottrae alla quantità di memoria che " "pubblicizza come disponibile." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Esempio (per riservare 1 GB): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Macchine con accesso in scrittura su questo host:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Tutte le macchine che devono partecipare al pool HTCondor devono essere " "elencate qui. Questa impostazione può essere un semplice elenco separato da " "virgole, un dominio con metacaratteri o un'espressione macro. In modo " "predefinito solo localhost ha il permesso di accedere ai demoni HTCondor su " "questa macchina." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Esempio: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "" "Eseguire i compiti HTCondor indipendentemente dalle altre attività della " "macchina?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "In modo predefinito, HTCondor avvia i compiti quando una macchina è " "inattiva, cioè quando per un certo periodo non c'è attività della tastiera o " "carico sulla CPU. Inoltre sospende i compiti quando c'è attività della " "tastiera e non li riprende fino a che la macchina non diventa nuovamente " "inattiva. Tuttavia, per un nodo di calcolo dedicato o un'installazione di " "HTCondor Personalizzata può essere desiderabile avviare sempre i compiti non " "appena vengono inviati (ammesso che ci siano ancora risorse disponibili) e " "di eseguirli in modo continuativo indipendentemente dalle altre attività " "sulla macchina." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Se si ha in progetto di creare una propria politica personalizzata è meglio " "mantenere qui il valore predefinito di HTCondor." debian/po/pl.po0000664000000000000000000003357112260521474010575 0ustar # Translation of condor debconf templates to Polish. # Copyright (C) 2012 # This file is distributed under the same license as the condor package. # # Michał Kułach , 2012. msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-05-05 00:47+0200\n" "Last-Translator: Michał Kułach \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 1.2\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Konfiguracja HTCondor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Zarządzać pierwotną konfiguracją HTCondor w sposób automatyczny?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "Ustawienia HTCondor mogą być obsłużone automatycznie, przy czym konieczne " "będzie odpowiedzenie na kilka pytań w celu utworzenia pierwotnej " "konfiguracji odpowiedniej do komputera, który jest już członkiem istniejącej " "puli lub do w pełni funkcjonalnej \"osobistej instalacji HTCondor\". " "Konfiguracja ta może być później poszerzona przez użytkownika." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "W przeciwnym wypadku HTCondor zostanie zainstalowany z domyślną " "konfiguracją, która musi zostać ręcznie dopasowana." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Włączyć wysyłanie statystyk użycia?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Autorzy HTCondor uprzejmie proszą każdą pulę HTCondor o wysyłanie " "regularnych aktualizacji z podstawowymi informacjami o statusie grupy. " "Aktualizacje zawierają wyłącznie całkowitą liczbę komputerów, liczbę " "przetworzonych zadań, liczbę komputerów z uruchomionymi zadaniami, nazwę " "hosta głównego zarządcy i nazwę puli. W ten sposób zespół HTCondor dowiaduje " "się jak HTCondor jest używany na całym świecie." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Adres głównego zarządcy:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Jeśli ten komputer ma dołączyć do istniejącej puli HTCondor, należy podać " "adres głównego komputera zarządzającego. Można go podać w dowolnym formacie " "obsługiwanym przez HTCondor, włącznie z wyrażeniami makr." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Przykład: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Wysyłanie zadań" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Przetwarzanie zadań" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Główny zarządca" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Rola tego komputera w puli HTCondor:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Proszę określić przewidzianą rolę lub role tego komputera, dla których " "zostaną uruchomione automatycznie odpowiednie demony." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Komputer w puli HTCondor może mieć wiele ról. Z reguły jest to jeden " "centralny zarządca i wiele węzłów wykonujących zadania. Zarządca jest często " "również komputerem, z którego użytkownicy pobierają zadania. Można jednak " "również posiadać wiele komputerów wysyłających zadania." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "Adres poczty elektronicznej lokalnego administratora HTCondor:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "Administrator HTCondor będzie otrzymywał wiadomości o błędach, jeśli coś " "pójdzie nie tak z HTCondorem na tym komputerze." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "Etykieta domeny katalogu użytkownika:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Ta etykieta jest łańcuchem, który jest używany przez HTCondor do decydowania " "czy komputer przesyłający i komputer wykonujący dzielą ten sam katalog kont " "użytkownika (tj. czy UID 1000 na jednym komputerze jest tym samym " "użytkownikiem co UID 1000 na innym). Jeśli etykiety na dwóch komputerach " "pasują, to HTCondor wykona każde zadanie używając UID-u, który przesłał " "zadanie i wyśle wiadomość elektroniczną o nich na adres użytkownik@DOMENA " "(używając omawianej etykiety jako wartości DOMENA). Jeśli nie pasują, to " "HTCondor wykona wszystkie zadania jako użytkownik \"nobody\". Pozostawienie " "tego pola pustego, spowoduje wykonywanie przez HTCondor wszystkich zadań na " "tym komputerze jako użytkownik \"nobody\"." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Można użyć dowolnego formatu domen obsługiwanego przez HTCondor, włącznie z " "wyrażeniami makr. Przykład: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Etykieta domeny systemu plików" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Ta etykieta jest dowolnym łańcuchem używanym do określenia, czy komputer " "wysyłający i wykonujący dzielą ten sam system plików. W dedykowanym " "klastrze, najprawdopodobniej wszystkie komputery będą używały " "współdzielonego systemu plików i w związku z tym, powinny używać tej samej " "etykiety. Jeśli pole pozostanie puste, to zostanie automatycznie ustawione " "na pełną nazwę hosta lokalnego komputera, co zapobiegnie przyjęciu przez " "HTCondor założenia, że jakiekolwiek dwa komputery dzielą ten sam system " "plików." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Przykład: my_shared_volume" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Wykonać \"osobistą instalację HTCondor\"?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Osobista instalacja HTCondor jest w pełni działającą pulą HTCondor na jednym " "komputerze. HTCondor automatycznie skonfiguruje i rozgłosi tyle slotów, ile " "rdzeni wykryje w procesorze na tym komputerze. Demony HTCondor nie będą " "dostępne przez zewnętrzne interfejsy sieciowe." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Ta konfiguracja nie jest właściwa, jeśli komputer ma być członkiem puli." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Ilość pamięci fizycznej ukrytej przed HTCondorem (w MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "Domyślnie, HTCondor będzie mógł skorzystać z całej pamięci fizycznej na tym " "komputerze do zadań HTCondor. Jeśli zdefiniuje się tę wartość, HTCondor " "odejmie ją od ilości pamięci jaką uważa za dostępną." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Przykład (aby zarezerwować 1 GB): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Komputery z prawem dostępu do tego komputera:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Wszystkie komputery będące częścią puli HTCondor muszą tu zostać wymienione. " "To ustawienie może być prostą listą oddzieloną przecinkami, domeną z " "wildcardami (wieloznacznikami) lub wyrażeniami makr. Domyślnie, tylko " "localhost może mieć dostęp do demonów HTCondor na tym komputerze." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Przykład: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "" "Uruchamiać zadania HTCondor niezależnie od innej aktywności na komputerze?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "Domyślnie, HTCondor uruchamia zadania wyłącznie gdy komputer jest bezczynny " "tzn. nie wykazuje aktywności klawiatury i obciążenia procesora przez jakiś " "czas. Co więcej, zawiesza wykonywania zadań, gdy tylko wystąpi aktywność w " "konsoli i nie kontynuuje ich, dopóki komputer nie stanie się z powrotem " "bezczynny. Jednak przy dedykowanym węźle obliczeniowym lub osobistej " "instalacji HTCondor, pożądane może być uruchamianie zadań zaraz po ich " "wysłaniu (zakładając, że zasoby są wciąż dostępne) i wykonywanie ich w " "sposób ciągły, niezależnie od innej aktywności na tym komputerze." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Jeśli planuje się utworzenie dostosowanych zasad, najlepiej pozostawić tutaj " "wartość domyślną HTCondor." debian/po/cs.po0000664000000000000000000003216012260521473010557 0ustar # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the condor package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-06-25 12:08+0200\n" "Last-Translator: Martin Sin \n" "Language-Team: Czech \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Nastavení HTCondoru" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Provést automatické počáteční nastavení HTCondoru?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "Nastavení HTCondoru je možno provést automaticky za pomoci několika málo " "otázek a nastavit jej tak, aby počítač fungoval buď jako člen stávající " "skupiny nebo jako plně funkční \"Osobní instalace HTCondoru\". Toto výchozí " "nastavení je možné později libovolně rozšiřovat." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "Jinou možností je instalace HTCondoru spolu s výchozím nastavením, které je " "nutné upravit ručně." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Povolit odesílání statistik využití?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Tvůrci HTCondoru jsou rádi za pravidelně zasílané informace o stavu skupin " "HTCondoru. Tyto informace obsahují pouze celkový počet počítačů, počet " "odeslaných úloh, počet počítačů s běžícími úkoly, jméno počítače centrálního " "správce a jméno pole. Obsažené informace pomáhají týmu HTCondor sledovat " "použití aplikace HTCondor po celém světě." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Adresa centrálního správce:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Pokud chcete, aby se tento počítač přidal do stávající skupiny HTCondor, je " "potřeba zde zadat adresu centrálního počítače. Přitom můžete použít " "libovolný formát adresy včetně makro-výrazů." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Příklad: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Zadávání úloh" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Vykonávání úloh" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Hlavní správce" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Role počítače ve skupině HTCondor:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Zadejte prosím vybranou roli tohoto počítače, pro tuto roli budou později " "spuštěny odpovídající daemony." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Počítač může mít v poli HTCondor více rolí. Obecně řečeno bývá součástí pole " "jeden centrální správce a spousta uzlů se spuštěnými úlohami. Centrální " "počítač bývá také tím počítačem, který rozesílá úlohy. Samozřejmě, že je " "také možné mít více počítačů rozesílající úlohy." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "Emailová adresa správce HTCondor:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "Pokud se něco pokazí, dostane tento správce HTCondoru zprávu s chybou." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "Označení domény adresáře uživatelů:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Toto označení používá HTCondor ke zjištění zda je odesílatel i vykonavatel " "úloh součástí stejného adresáře uživatelských účtů (v případ, že je UID 1000 " "jednoho počítače stejnou osobou jako UID 1000 jiného počítače). Pokud " "označení dvou počítačů souhlasí, HTCondor spustí všechny úlohy pod UID " "odesílajícího uživatele a pošle o něm informace na adresu uživatel@DOMÉNA " "(toto označení použije jako hodnotu DOMÉNY). V opačném případě HTCondor " "spustí úlohu pod uživatelem \"nobody\". Necháte-li políčko prázdné, budou " "všechny úlohy spouštěné pod uživatelem \"nobody\"." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Můžete použít libovolný podporovaný formát včetně makro-výrazů. Např. " "$(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Označení domény souborového systému:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Toto označení je libovolný text, který se používá k rozhodnutí zda je " "odesílatel a vykonavatel součástí stejného souborového systému. V " "dedikovaném clusteru všechny počítače pravděpodobně používají sdílený " "souborový systém a tak by měli používat také stejné označení. Necháte-li " "políčko prázdné, bude automaticky nastaveno na plně kvalifikovaný název " "místního počítače, což HTCondoru zabrání v tom, aby dva počítače sdílely " "nějaký souborový systém." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Příklad: můj_sdílený_prostor" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Provést \"Instalaci soukromé verze HTCondoru\"?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Soukromá (osobní) verze HTCondoru je plně funkční instalací HTCondoru pro " "jeden počítač. HTCondor přitom automaticky nastaví a zpřístupní všechna " "jádra procesoru. Daemony HTCondoru budou k dispozici na vnějších síťových " "rozhraních." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Toto nastavení se nepoužívá pokud chcete použít počítač jako součást pole." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Množství blokované fyzické paměti (v MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "Ve výchozím nastavení použije HTCondor všechnu fyzickou paměť, která je k " "dispozici. Pokud určíte tuto hodnotu, nebude toto množství paměti HTCondoru " "přístupné." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Příklad (pro rezervaci 1 GB) : 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Počítače s právem zápisu na tento počítač:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Zde je potřeba vyjmenovat všechny počítače, které budou součástí skupiny " "HTCondoru. Toto nastavení může obsahovat seznam počítačů oddělených čárkami, " "doménou se zástupnými znaky nebo makro-výrazem. Ve výchozím nastavení může k " "daemonům HTCondoru přistupovat pouze tento počítač." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Příklad: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "Používat HTCondor bez ohledu na zatížení počítače?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "Ve výchozím nastavení spustí HTCondor úlohy pouze pokud počítač nic nedělá, " "např. není žádná odezva z klávesnice nebo zatížení CPU. Mimo to, také umí " "uspat procesy jakmile dojde k nějaké aktivitě a později je opět spustit " "jakmile nemá znovu co dělat. Na druhou stranu ovšem bývá často potřebnější " "spustit úlohy co nejdříve (jakmile jsou poslány) a případně také současně " "bez ohledu na zatížení konkrétního počítače." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Pokud chcete provést vlastní nastavení HTCondoru, pak je lepší nechat v " "tomto kroku výchozí volby." debian/po/fr.po0000664000000000000000000003455612260521474010575 0ustar # Translation of HTCondor debconf template to French # Copyright (C) 2012 Debian French l10n team # This file is distributed under the same license as the condor package. # Translator: # Steve Petruzzello , 2012 # msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-05-10 09:44+0200\n" "Last-Translator: Steve Petruzzello \n" "Language-Team: French \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Configuration de HTCondor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Faut-il gérer la configuration initiale de HTCondor automatiquement ?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "La mise en place de HTCondor peut être gérée automatiquement en répondant à " "quelques questions afin de créer une configuration initiale appropriée pour " "une machine qui est soit membre d'un groupement (« pool ») existant, soit " "une « installation personnelle de HTCondor » complètement fonctionnelle. " "Cette configuration initiale générée peut être par la suite modifiée." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "Dans le cas contraire, HTCondor sera installé avec une configuration par " "défaut qu'il est conseillé d'adapter manuellement." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Faut-il activer l'inscription des statistiques d'utilisation ?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Les auteurs de HTCondor suggèrent que chaque groupement de HTCondor leur " "envoie régulièrement des informations basiques à propos de l'état du " "groupement. Ces informations incluent le nombre total de machines, le nombre " "de travaux soumis, le nombre de machines exécutant des travaux, le nom " "d'hôte du gestionnaire central et le nom du groupement. Elles permettent à " "l'équipe de HTCondor de savoir comment leur logiciel est utilisé à travers " "le monde." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Adresse du gestionnaire central :" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Si cette machine doit rejoindre un groupement HTCondor existant, il est " "alors nécessaire d'indiquer l'adresse de la machine faisant office de " "gestionnaire central. Tout format d'adresse géré par HTCondor peut être " "utilisé en incluant des macros." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Exemple : condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Soumission de travail" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Exécution de travail" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Gestionnaire central" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Rôle de cette machine au sein du groupement HTCondor :" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Veuillez indiquer le(s) rôle(s) prévu(s) pour cette machine afin que les " "démons correspondant soient démarrés automatiquement." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Une machine dans un groupement HTCondor peut avoir différents rôles. En " "général, il y a un gestionnaire central et plusieurs nœuds qui exécutent des " "travaux. Il arrive souvent que le gestionnaire central soit aussi la machine " "depuis laquelle les utilisateurs soumettent leurs travaux. Toutefois, il est " "aussi possible d'avoir plusieurs machines disponibles pour la soumission de " "travaux." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "Adresse électronique de l'administrateur local de HTCondor :" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "L'administrateur de HTCondor recevra les messages d'erreur en cas de " "problème avec HTCondor sur cette machine." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "Étiquette de domaine du répertoire utilisateur :" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Cette étiquette est une chaîne de caractères que HTCondor utilise pour " "décider si une machine qui soumet un travail et une machine qui exécute le " "travail partagent le même répertoire d'un compte utilisateur (c'est-à-dire " "si l'UID 1000 d'une machine est la même personne que l'UID 1000 d'une autre " "machine). Si les étiquettes des deux machines correspondent, HTCondor " "exécutera chaque travail sous l'UID qui a soumis le travail et enverra un " "message électronique à l'adresse utilisateur@DOMAINE (en utilisant " "l'étiquette comme valeur pour DOMAINE). Dans le cas contraire, HTCondor " "exécutera tous les travaux en tant qu'utilisateur « nobody ». Si vous " "laissez ce champ vide, HTCondor exécutera tous les travaux en tant " "qu'utilisateur « nobody »." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Tout format de domaine géré par HTCondor peut être utilisé en incluant des " "macros. Exemple : $(NOM_DHOTE_COMPLET)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Étiquette de domaine du système de fichiers :" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Cette étiquette est une chaîne de caractères aléatoire qui est utilisée pour " "décider si une machine qui soumet un travail et une machine qui exécute un " "travail partagent un même système de fichiers. Dans une grappe dédiée de " "machines, il est fort probable que toutes les machines utilisent un système " "de fichiers partagé et par conséquent elles devraient utiliser la même " "étiquette. Si vous laissez ce champ vide, le nom d'hôte complètement " "qualifié de la machine locale sera utilisé, ce qui empêchera HTCondor de " "supposer que des machines prises deux à deux partagent le même système de " "fichiers." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Exemple : mon_volume_partagé" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Faut-il effectuer une « installation personnelle de HTCondor » ?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Une « installation personnelle de HTCondor » est un groupement de HTCondor " "autonome sur une seule machine. HTCondor configurera et annoncera " "automatiquement autant de créneaux (« slots ») que de cœurs CPU détectés sur " "cette machine. Les démons de HTCondor ne seront pas disponibles pour des " "interfaces réseau externes." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Cette configuration n'est pas adaptée si cette machine est prévue pour être " "membre d'un groupement." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Quantité de mémoire physique à retenir pour HTCondor (en Mo) :" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "HTCondor considère par défaut que toute la mémoire physique d'une machine " "est disponible pour les travaux HTCondor. Si cette valeur est définie, elle " "sera soustraite à la quantité de mémoire annoncée comme étant disponible." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Exemple pour réserver 1 Go : 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Machines ayant un accès en écriture sur cet hôte :" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Toutes les machines qui feront partie d'un groupement HTCondor doivent être " "indiquées ici. Ce paramétrage peut être une liste simple séparée par des " "virgules, un domaine avec des caractères génériques (« wildcards ») ou une " "macro. Par défaut seul l'hôte local a la permission d'accéder aux démons " "HTCondor de cette machine." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Exemple : *.groupement-condor.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "" "Faut-il exécuter les travaux de HTCondor malgré l'activité des autres " "machines ?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "Par défaut, HTCondor ne démarre des travaux que si une machine est " "inoccupée, c'est à dire qu'il n'y a aucune activité du clavier ou de charge " "du CPU pendant un certain temps. De plus, il suspend un travail quand il " "détecte de l'activité sur une console et ne continue que quand la machine " "redevient inoccupée. Toutefois, pour un nœud dédié ou une « installation " "personnelle de HTCondor  », il peut être souhaitable de toujours débuter un " "travail dès que soumis (en supposant que les ressources soient encore " "disponibles) et de l'exécuter en continu indifféremment d'autres activités " "sur cette machine." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Si vous prévoyez de créer une politique personnalisée, il est préférable de " "conserver la politique par défaut de HTCondor ici." debian/po/sv.po0000664000000000000000000003762312260521474010614 0ustar # Translation of condor debconf template to Swedish # Copyright (C) 2012 Martin Bagge # This file is distributed under the same license as the condor package. # # Martin Bagge , 2012 msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-06-10 19:11+0100\n" "Last-Translator: Martin Bagge / brother \n" "Language-Team: Swedish \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Swedish\n" "X-Poedit-Country: Sweden\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Inställningar för HTCondor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Ska initiell inställning av HTCondor utföras automatiskt?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "Inställningarna för HTCondor kan hanteras automatiskt genom att några frågor " "ställs för att skapa en initiell konfiguration för en maskin som antingen är " "medlem i en existerande pool eller fungerar som en \"Personlig HTCondor-" "installation\". Den initiella konfiguraitonen kan utökas ytterligare " "framöver." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "Annars kommer HTCondor att intalleras med en standardkonfiguration som måste " "justeras manuellt." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Aktivera sändande av användningsstatistik?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "HTCondors upphovsmän ber vänligast om att varje HTCondor-pool skickar " "periodiska uppdateringar med grundläggande information om status för poolen. " "Uppdateringarna innehåller bara totalt antal maskiner, antal jobb skickade, " "antal maskiner som kör jobb, värdnamnet på den centrala övervakaren och " "namnet för poolen. Dessa uppdateringar hjälper utvecklarna bakom HTCondor " "att se hur HTCondor används." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Adress till den centrala resursen:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Om denna maskin ska anslutas till en existerande HTCondor-pool måste " "adressen till maskinen med den centrala övervakaren anges. Ett adressformat " "som stöds av HTCondor kan användas, inklusive macro-uttryck." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Exempel: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Jobb-avsändare" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Jobb-utförare" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Central resurs" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Roll för den här maskinen i HTCondor-poolen:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Ange den eller de roller som den här maskinen kommer att ha, motsvarande " "tjänster kommer att startas automatiskt." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "En maskin i en HTCondor-pool kan ha flera roller. Generellt sett finns det " "en central övervakare och flera noder som kör jobb. Ofta är den centrala " "övervakaren också maskinen som används för att skicka jobb. Det är dock " "möjligt att ha flera maskiner för att skicka ut jobb." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "E-post-adress till den lokala HTCondor-administratören:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "HTCondor-administratören kommer att få felmeddelanden när något går fel med " "HTCondor på den här maskinen." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "användarkatalogens domänettikett:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Denna ettikett är en sträng som HTCondor använder för att bedöma om en " "skickande och en utförande maskin delar samma katalog med användarkonton " "(alltså att UID 1000 på en maskin är samma person som UID 1000 på en annan). " "Om ettiketterna på de två maskinerna stämmer överrens kommer HTCondor att " "köra jobben som det UID som skickade jobbet och skicka e-post-meddelanden " "till användare@DOMÄN (den här ettiketten används som värde för DOMÄN). Om " "inte kommer HTCondor att köra alla jobb som användaren \"nobody\". Lämnas " "fältet tomt kommer HTCondor att köra alla jobb på den här maskinen som " "användaren \"nobody\"." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Domänformat som HTCondor stöder kan användas, inklusive macro-uttryck. " "Exempel: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Domänettikett för filsystemet:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Denna ettikett är en sträng som används för att bedöma om en skickande " "maskin och en utförande maskin delar samma filsystem. I ett dedikerat " "kluster kommer troligen alla maskiner att dela filsystem och ska då ha samma " "ettikett. Om du lämnar detta värde tomt kommer HTCondor automatiskt att " "sätta det till komplett kvalificerat värdnamn för den lokala maskinen och " "därmed anse att två maskiner aldrig delar filsystem." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Exempel: min_delade_volym" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Ska en \"Personlig HTCondor-intallation\" genomföras?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "En personlig condor-installation är en komplett fungerande HTCondor-pool på " "en ensam maskin. HTCondor kommer automatiskt att ställa in och avisera antal " "utrymmen när den läser av processorkärnor på den här maskinen. HTCondor-" "tjänster kommer inte att vara tillgängliga via externa nätverksgränssnitt." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Denna inställning är inte önskvärd om den här maskinen ska vara medlem i en " "pool." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Mängd fysiskt minne att reserveras utanför HTCondor (i MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "Som standard anser HTCondor att allt fysiskt minne är tillgängligt för " "HTCondor-jobb. Om detta värde är definierat subtraherar HTCondor det från " "det tillgängliga minnet som annonseras som tillgängligt." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Exempel (för att reservera 1GB): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Maskiner med skrivrättighet för den här värden:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Alla maskiner som ska vara med i HTCondor-poolen behöver vara listade här. " "Denna inställning kan vara en kommaseparerad lista, en domän med jokertecken " "eller ett macro-uttryck. Som standard är bara lokal värd tillåten att komma " "åt tjänster på denna maskin." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Exempel: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "Ska HTCondor-jobb utföras oberoende av annan aktivitet på maskinen?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "Som standard startar HTCondor bara jobb när maskinen är sysslolös, ex. ingen " "interaktion på tangentbord eller processoranvänding på ett tag. Dessutom " "stoppas jobb när maskinen börjar användas och fortsätter dem inte innan " "maskinen blir sysslolös igen. För en dedikerad beräkningsnod eller en " "Personlig HTCondor-installation kan det vara önskvärt att alltid starta jobb " "när de skickats (givet att det fortfarande finns resurser till det) och att " "köra dem oberoende övrig aktivitet på maskinen." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Om en anpassad policy är planerad i dess ställe är det rekomenderat att " "behålla HTCondors standardvärde här." #~ msgid "" #~ "This package can create an appropriate initial configuration for a " #~ "machine that shall join an existing HTCondor pool, or configure a fully " #~ "functional \"personal condor\" installation by asking a few questions. " #~ "The generated initial configuration can be further extended later on. If " #~ "this configuration helper is undesired, HTCondor will be installed with a " #~ "default configuration that needs to be customized manually." #~ msgstr "" #~ "Detta paket kan utföra en initiell inställning för en maskin ska anslutas " #~ "till en existerande HTCondor-pool eller ställas in för en komplett " #~ "fungerande \"personlig condor\"-installation genom att ställa några " #~ "frågor. Den skapade initiella inställningen kan sedan utökas. Om denna " #~ "inställningshjälpreda är oönskad kommer HTCondor att installeras med " #~ "standardinställningar som sedan behöver justeras manuellt." #~ msgid "User id domain:" #~ msgstr "Domän för användare:" #~ msgid "" #~ "HTCondor uses this label to decide under which user account to run a " #~ "particular job. If the UID domain on the submitting machine is different " #~ "than the UID domain on the machine that runs your job, then HTCondor will " #~ "automatically run the job as a user 'nobody'. If the UID domain is " #~ "identical, HTCondor will run a job as the user that submitted the job. " #~ "The UID domain needs to be a real domain name. When HTCondor sends e-mail " #~ "about a job, it sends the e-mail to user@UID_DOMAIN. If this is left " #~ "blank HTCondor will run all job on this machine as 'nobody'." #~ msgstr "" #~ "HTCondor använder denna ettikett för att avgöra vilket konto ett jobb ska " #~ "köras under. Om UID-domänen på den sändande maskinen är annat än UID-" #~ "domän för den maskin som kör ditt jobb så kommer HTCondor automatiskt att " #~ "använda användaren \"nobody\". Om UID-domänen är identisk kommer HTCondor " #~ "att köra jobbet som användaren som skickade jobbet. UID-domänen behöver " #~ "vara ett riktigt domännamn. När HTCondor skickar e-post om jobb skickas " #~ "dessa till användare @UID_DOMAIN. Om denna lämnas tom kommer HTCondor " #~ "köra alla jobb på den här maskonen som \"nobody\"." #~ msgid "" #~ "If this machine is supposed to join an existing pool or a new pool with " #~ "more than one machine shall be created, a personal installation is not " #~ "desired." #~ msgstr "" #~ "Om denna maskin är tänkt att ansluta till en existerande pool eller om en " #~ "ny pool med mer än en maskin ska skapas ska en personlig installation " #~ "undvikas." debian/po/templates.pot0000664000000000000000000002030212260521473012327 0ustar # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" debian/po/pt.po0000664000000000000000000003307312260521474010602 0ustar # condor's portuguese debconf messages # Copyright (C) 2012 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the condor package. # Pedro Ribeiro , 2012 # msgid "" msgstr "" "Project-Id-Version: condor\n" "Report-Msgid-Bugs-To: condor@packages.debian.org\n" "POT-Creation-Date: 2013-12-31 11:58+0100\n" "PO-Revision-Date: 2012-05-28 21:36+0100\n" "Last-Translator: Pedro Ribeiro \n" "Language-Team: Portuguese \n" "Language: Portuguese\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. Type: title #. Description #: ../htcondor.templates:1001 msgid "HTCondor configuration" msgstr "Configuração do HTCondor" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "Manage initial HTCondor configuration automatically?" msgstr "Tratar automaticamente da configuração inicial do HTCondor?" #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "The setup for HTCondor can be handled automatically, asking a few questions " "to create an initial configuration appropriate for a machine that is either " "a member of an existing pool or a fully functional \"Personal HTCondor " "installation\". This generated initial configuration can be further extended " "later on." msgstr "" "A configuração do HTCondor pode ser tratada automaticamente, através de " "algumas perguntas para criação de uma configuração inicial apropriada a uma " "máquina que ou é membro de um conjunto já existente ou uma \"Instalação " "Pessoal do HTCondor\" totalmente funcional. Esta configuração inicial pode " "ser ajustada posteriormente." #. Type: boolean #. Description #: ../htcondor.templates:2001 msgid "" "Otherwise, HTCondor will be installed with a default configuration that " "needs to be customized manually." msgstr "" "Caso contrário, o HTCondor será instalado com uma configuração predefinida " "que necessita de ser ajustada manualmente." #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "Enable submission of usage statistics?" msgstr "Activar o envio de estatísticas de utilização?" #. Type: boolean #. Description #: ../htcondor.templates:3001 msgid "" "The HTCondor authors politely request that each HTCondor pool sends them " "periodic updates with basic information about the status of the pool. " "Updates include only the total number of machines, the number of jobs " "submitted, the number of machines running jobs, the host name of the central " "manager, and the name of the pool. These updates help the HTCondor Team see " "how HTCondor is being used around the world." msgstr "" "Os autores do HTCondor pedem educadamente que cada pool de HTCondor lhes " "envie periodicamente estatísticas de utilização com informação básica sobre " "o estado da pool. As actualizações incluem apenas o número total de " "máquinas, o número de trabalhos submetidos, o nome da máquina central e o " "nome da pool. Estas actualizações ajudam a Equipa HTCondor a verificar como " "o HTCondor é usado." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Address of the central manager:" msgstr "Endereço do gestor central:" #. Type: string #. Description #: ../htcondor.templates:4001 msgid "" "If this machine is intended to join an existing HTCondor pool, the address " "of the central manager machine has to be specified. Any address format " "supported by HTCondor can be used, including macro expressions." msgstr "" "Se esta máquina é destinada a juntar-se a uma pool HTCondor existente, o " "endereço da máquina gestora central tem que ser indicado. Qualquer formato " "de endereço suportado pelo HTCondor pode ser usado, incluindo macros." #. Type: string #. Description #: ../htcondor.templates:4001 msgid "Example: condor-manager.example.org" msgstr "Exemplo: condor-manager.example.org" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job submission" msgstr "Submissão de trabalho" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Job execution" msgstr "Execução de trabalho" #. Type: multiselect #. Choices #: ../htcondor.templates:5001 msgid "Central manager" msgstr "Gestor central" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "Role of this machine in the HTCondor pool:" msgstr "Papel desta máquina na pool HTCondor:" #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "Please specify the intended role or roles of this machine, for which the " "corresponding daemons will be started automatically." msgstr "" "Indique por favor o papel ou papéis destinados a esta máquina, de modo a que " "os daemons necessários sejam iniciados automaticamente." #. Type: multiselect #. Description #: ../htcondor.templates:5002 msgid "" "A machine in a HTCondor pool can have multiple roles. In general there is " "one central manager and multiple nodes that run jobs. Often the central " "manager is also the machine from which users submit jobs. However, it is " "also possible to have multiple machines available for job submission." msgstr "" "Uma máquina numa pool HTCondor pode ter vários papéis. Geralmente existe um " "gestor central e vários nós que executam trabalhos. Muitas vezes o gestor " "central é também a máquina na qual os utilizadores submetem os trabalhos. No " "entanto, também é possível ter várias máquinas disponíveis para a submissão " "de trabalhos." #. Type: string #. Description #: ../htcondor.templates:6001 msgid "Email address of the local HTCondor administrator:" msgstr "Endereço de email do administrador local de HTCondor:" #. Type: string #. Description #: ../htcondor.templates:6001 msgid "" "The HTCondor administrator will receive error messages if something goes " "wrong with HTCondor on this machine." msgstr "" "O administrador do HTCondor receberá as mensagens de erro no caso de alguma " "coisa correr mal com o HTCondor nesta máquina." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "user directory domain label:" msgstr "etiqueta de domínio de directório de utilizador:" #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "This label is a string that HTCondor uses to decide if a submitting machine " "and an execute machine share the same directory of user accounts (that is, " "whether UID 1000 on one machine is the same person as UID 1000 on the " "other). If the labels on the two machines match, HTCondor will run each job " "under the UID that submitted the job, and send emails about them to " "user@DOMAIN (using this label as the value of DOMAIN). If not, HTCondor will " "run all jobs as user \"nobody\". Leaving it blank will cause HTCondor to run " "all jobs on this machine as user \"nobody\"." msgstr "" "Esta etiqueta é uma frase que o HTCondor usa para decidir se uma máquina que " "submete um trabalho e a que o executa partilham o mesmo directório de contas " "de utilizador (ou seja, se o UID 1000 numa máquina é o mesmo que na outra). " "Se as etiquetas nas duas máquinas forem correspondentes, o HTCondor irá " "correr cada trabalho sob o UID que o submeteu, e envia emails sobre ele para " "o utilizador@DOMINIO (usando a etiqueta como valor para o DOMINIO). Se não, " "o HTCondor irá correr todos os trabalhos sob o utilizador \"nobody\". Se " "ficar em branco, o HTCondor irá correr todos os trabalhos nesta máquina sob " "o utilizador \"nobody\"." #. Type: string #. Description #: ../htcondor.templates:7001 msgid "" "Any domain format supported by HTCondor can be used, including macro " "expressions. Example: $(FULL_HOSTNAME)" msgstr "" "Qualquer formato de domínio suportado pelo HTCondor pode ser usado, " "incluindo expressões de macro. Exemplo: $(FULL_HOSTNAME)" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "File system domain label:" msgstr "Etiqueta de domínio do sistema de ficheiros:" #. Type: string #. Description #: ../htcondor.templates:8001 msgid "" "This label is an arbitrary string that is used to decide if a submitting " "machine and an execute machine share the same file system. In a dedicated " "cluster all machines will most likely use a shared file system and hence " "should use the same label. If left blank, it will automatically be set to " "the fully qualified hostname of the local machine, which will prevent " "HTCondor assuming that any two machines share a file system." msgstr "" "Esta etiqueta é uma frase arbitrária que é usada para decidir se uma máquina " "que submete um trabalho e a máquina que o executa partilham o mesmo sistema " "de ficheiros. Num cluster dedicado, a maior parte das máquinas usará um " "sistema de ficheiros partilhado, e portanto, deve usar a mesma etiqueta. Se " "for deixada em branco, será automaticamente usado o nome completo " "qualificado da máquina local, o que evitará que o HTCondor assuma que haja " "máquinas a partilhar sistemas de ficheiros." #. Type: string #. Description #: ../htcondor.templates:8001 msgid "Example: my_shared_volume" msgstr "Exemplo: volume_partilhado" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "Perform a \"Personal HTCondor installation\"?" msgstr "Executar uma \"Instalação Pessoal do HTCondor\"?" #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "A Personal HTCondor installation is a fully functional HTCondor pool on a " "single machine. HTCondor will automatically configure and advertise as many " "slots as it detects CPU cores on this machine. HTCondor daemons will not be " "available through external network interfaces." msgstr "" "Uma instalação pessoal do HTCondor é uma pool completamente funcional do " "HTCondor numa única máquina. O HTCondor irá configurar e anunciar " "automaticamente tantos slots como cores de CPU detectados na máquina. Os " "daemons HTCondor não estarão disponíveis para as interfaces externas de rede." #. Type: boolean #. Description #: ../htcondor.templates:9001 msgid "" "This configuration is not appropriate if this machine is intended to be a " "member of a pool." msgstr "" "Esta configuração não é apropriada se se quiser que esta máquina seja membro " "de uma pool." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Amount of physical memory to withhold from HTCondor (in MB):" msgstr "Quantidade de memória física a esconder do HTCondor (em MB):" #. Type: string #. Description #: ../htcondor.templates:10001 msgid "" "By default, HTCondor considers all the physical memory of a machine as " "available to be used by HTCondor jobs. If this value is defined, HTCondor " "subtracts it from the amount of memory it advertises as available." msgstr "" "Por predefinição, o HTCondor considera disponível toda a memória física da " "máquina para usar para os trabalhos. Se este valor estiver definido, o " "HTCondor subtrai-o do total de memória disponível." #. Type: string #. Description #: ../htcondor.templates:10001 msgid "Example (to reserve 1 GB): 1024" msgstr "Exemplo (para reservar 1 GB): 1024" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Machines with write access to this host:" msgstr "Máquinas com acesso de escrita a este servidor:" #. Type: string #. Description #: ../htcondor.templates:11001 msgid "" "All machines that are to participate in the HTCondor pool need to be listed " "here. This setting can be a plain comma-separated list, a domain with " "wildcards, or a macro expression. By default only localhost is allowed to " "access HTCondor daemons on this machine." msgstr "" "Todas as máquinas que participam numa pool HTCondor necessitas de estar " "neste ficheiro. Esta definição pode ser uma lista separada por vírgulas, um " "domínio com caracteres especiais, ou uma expressão de macro. Por " "predefinição, apenas o localhost tem permissão para aceder aos daemons " "HTCondor nesta máquina." #. Type: string #. Description #: ../htcondor.templates:11001 msgid "Example: *.condor-pool.example.org" msgstr "Exemplo: *.condor-pool.example.org" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "Run HTCondor jobs regardless of other machine activity?" msgstr "Correr trabalhos HTCondor independentemente da actividade da máquina?" #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "By default HTCondor only starts jobs when a machine is idle, i.e. no " "keyboard activity or CPU load for some time. Moreover, it also suspends jobs " "whenever there is console activity and doesn't continue them until the " "machine becomes idle again. However, for a dedicated compute node or a " "Personal HTCondor installation it might be desirable to always start jobs as " "soon as they are submitted (given that resources are still available), and " "to run them continuously regardless of other activity on this machine." msgstr "" "Normalmente o HTCondor só inicia trabalhos quando a máquina está com pouca " "carga, i.e., sem actividade do teclado ou sem carga no CPU. Além do mais " "suspende os trabalhos assim que houver actividade na consola e não os " "recupera até que a máquina fique novamente sem carga. No entanto, para um nó " "dedicado à computação ou uma instalação Pessoal do HTCondor, pode ser " "desejável iniciar sempre os trabalhos assim que são submetidos (se houver " "recursos), e corrê-los continuamente sem olhar ao resto da actividade da " "máquina." #. Type: boolean #. Description #: ../htcondor.templates:12001 msgid "" "If you plan to compose a custom policy it is best to keep HTCondor's default " "here." msgstr "" "Se planeia criar uma política personalizada é melhor manter aqui as " "predefinições do HTCondor." debian/libclassad5.install0000664000000000000000000000004412260003121012727 0ustar debian/tmp/usr/lib/libclassad*.so.* debian/htcondor-dev.install0000664000000000000000000000013412260003121013135 0ustar debian/tmp/usr/include/condor/*.h usr/include/condor debian/tmp/usr/lib/condor/*.a usr/lib/ debian/changelog0000664000000000000000000005432612265317751011065 0ustar condor (8.0.5~dfsg.1-1ubuntu1) trusty; urgency=low * Add missing lib to link, resolving FTBFS. -- Daniel T Chen Tue, 14 Jan 2014 15:36:41 -0500 condor (8.0.5~dfsg.1-1) unstable; urgency=low [ Michael Hanke ] * Acknowledge NMU, thanks Mattias Ellert. * New upstream version (Closes: #714364). This is the first packaged version of an 8.x release with many improvements and fixes. * Rename all relevant binary packages to reflect the new upstream name HTCondor. The source package name is kept as 'condor'. * Bump debhelper compat level to 9 to enabled hardening and python helper support. * Enable Python bindings (only for the default Python version for now). New build-dependencies libboost-python-dev, python-support and python-dev added. * Enable automatic updating of autotools infrastructure via dh_autoreconf. New build-dependencies dh-autoreconf and autotools-dev added. * Fix for CVE-2013-4255 is contained since 8.0.3 (Closes: #721693). * Remove Debian-specific condor_qsub script which has been integrated upstream and is now shipped in an improved form. * Add patch to source LSB init function in Condor's init script. * Add patch to replace sprintf wrapper call without a format string argument with the corresponding non-formating function call. * Add upstream patch to prevent schedd crash (Ticket #38936). [ Brian Lin ] * Add Debconf template translations: - Japanese -- courtesy of victory . (Closes: #718923) * Add patch campus_factory_syntax to fix a syntax error the campus_factory script. * Bumped Standards-version to 3.9.4; no changes necessary. * Add new dependency on libboost-test-dev. * Disable installation of obsolete Pearl modules. * Fix DEP5 syntax error in debian/copyright. -- Michael Hanke Tue, 31 Dec 2013 10:22:08 +0100 condor (7.8.8~dfsg.1-2.1) unstable; urgency=medium * Non-maintainer upload. * Adapt to multiarch globus installation (Closes: #731246). -- Mattias Ellert Mon, 16 Dec 2013 16:40:36 +0100 condor (7.8.8~dfsg.1-2) unstable; urgency=low * Fix corrupted Russian and French debconf template translations. Thanks to David Prévot for the fixes (Closes: #671510, #673138). -- Michael Hanke Sun, 21 Jul 2013 09:23:43 +0200 condor (7.8.8~dfsg.1-1) unstable; urgency=low [ Brian Lin ] * New upstream bug fix release. - Fixed a bug in condor_advertise that could cause failure to publish ClassAds to condor_collector daemons other than the first one in the list of condor_collector daemons (Ticket #3404). - Fixed a bug that could cause HTCondor daemons to abort on condor_reconfig when the value of configuration variable STATISTICS_WINDOW_SECONDS was reduced. (Ticket #3443). - If condor_shared_port was using a dynamic port and the condor_master was using the shared port, then if condor_shared_port died, all subsequent attempts to restart it on a different port failed. (Ticket #3478). - Reduced the likelihood of a problem that caused the condor_master to restart some of its children after a recent reconfiguration, because the condor_master incorrectly concluded that the children were hung. (Ticket #3510) - Now installs the condor_kbdd daemon. - Does no longer provide condor_glidein - Fix a number of bashisms (Closes: #690640) * Added patch to automatically retry glexec operations if they exit with an error code likely caused by a transient error (Ticket 2415). [ Michael Hanke ] * Add Brian Lin as a maintainer. * Adjust code to determine Condor's upstream version in debian/rules' get-orig-source target. * Add citation information in debian/upstream. Thanks to Andreas Tille. * Add explicit note to README.Debian that the standard universe is not supported at this point (Closes: #717357). -- Michael Hanke Sat, 20 Jul 2013 12:51:53 +0200 condor (7.8.7~dfsg.1-1) experimental; urgency=low * New upstream bug fix release. - Fixed a bug wherein running the condor_suspend command on a scheduler universe job would cause the schedd to crash (Ticket 3259). - Jobs that were submitted with condor_submit -spool and failed during submission were left indefinitely in the queue in the Hold state (Ticket 3200). - When using privilege separation, jobs would be put on hold after they finished running if the working directory contained links to files that were not globally readable (Ticket 2904). - condor_master would sometimes crash on reconfiguration when the High Availability configuration had changed (Ticket 3292). * Condor is now officially called HTCondor. The Debian package will keep the name 'condor' for now and change when switching to the 7.9 or 8.0 series. -- Michael Hanke Thu, 10 Jan 2013 16:47:47 +0100 condor (7.8.6~dfsg.1-1) experimental; urgency=low * New upstream bug fix release (skipped 7.8.5). - Avoid rare crashes of condor_schedd in association with jobs that have 'noop_job = true' (Ticket 3156). - Fix condor_startd crash when failing to match a partitionable slot after the application of configuration variables of the MODIFY_REQUEST_EXPR_ category (Ticket 3260). - Prevent removal of scheduler universe jobs from the job queue when they should have been requeued, according to policy. This caused condor_dagman jobs to fail to restart. This bug exists in all Condor versions 7.8.0 through 7.8.4. Upon upgrading from these Condor versions, users will need to intervene in order to restart their dagman jobs (Ticket 3207). -- Michael Hanke Tue, 06 Nov 2012 08:22:29 +0100 condor (7.8.4~dfsg.1-1) experimental; urgency=low * New upstream bug fix release (missed 7.8.3). This release addresses four security-related issues, as well as numerous other bug fixes (Closes: #688210): - Security Item: Some code that was no longer used was removed. The presence of this code could expose information which would allow an attacker to control another user's job. (CVE-2012-3493) - Security Item: Some code that was no longer used was removed. The presence of this code could have lead to a Denial-of-Service attack which would allow an attacker to remove another user's idle job. (CVE-2012-3491) - Security Item: Filesystem (FS) authentication was improved to check the UNIX permissions of the directory used for authentication. Without this, an attacker may have been able to impersonate another submitter on the same submit machine. (CVE-2012-3492) - Security Item: Although not user-visible, there were multiple updates to remove places in the code where potential buffer overruns could occur, thus removing potential attacks. None were known to be exploitable. - Security Item: Although not user-visible, there were updates to the code to improve error checking of system calls, removing some potential security threats. None were known to be exploitable. - The full changelog listing numerous additional bugs is available at http://research.cs.wisc.edu/condor/manual/v7.8/9_3Stable_Release.html * Added patch to fix a FTBFS on alpha, due to missing getpid syscall. Courtesy of Michael Cree (Closes: #685892). -- Michael Hanke Fri, 21 Sep 2012 20:56:32 +0200 condor (7.8.2~dfsg.1-2) experimental; urgency=low * Make postinst script more robust against missing config variables (Closes: #684667). Patch is courtesy of Tim Cartwright. * Disable Condor's file transfer mechanism for jobs submitted via condor_qsub, because a shared filesystem is assumed for these jobs (Closes: #684879). * This time really remove dangling symlink /usr/sbin/condor -> ../bin/condor. This file no longer exists (Closes: #678425). * Support deployment scenario where the administrative 'condor' user is not a local system user, but is shared (e.g. through LDAP) by all machines in a Condor pool (see installation manual section 3.2). The condor package will accept to run under an existing non-system user account named 'condor', but only when that account is locked, i.e. not login is possible (Closes: #684463). -- Michael Hanke Sun, 12 Aug 2012 19:20:35 +0200 condor (7.8.2~dfsg.1-1) unstable; urgency=high * Upstream security release. Prevent an attacker who is manipulating reverse-DNS entries and is able to connect to a Condor daemon to gain access to a Condor pool that is using DNS/hostname host-based authentication (only). CVE-2012-3416 -- Michael Hanke Thu, 16 Aug 2012 08:32:49 +0200 condor (7.8.1~dfsg.1-2) unstable; urgency=low * Remove dangling symlink /usr/sbin/condor -> ../bin/condor. This file no longer exists (Closes: #678425). * Add Debconf template translations: - Czech -- courtesy of Martin Å Ãn (Closes: #678952) - Spanish -- courtesy of Fernando C. Estrada (Closes: #680201) * Only issue 'condor_restart' command in postinst, when condor_master is actually running. If that is not the case, for example when daemon startup is prevented by system policy, package installation would fail otherwise. Thanks to Andreas Beckmann for the report. (Closes: #681144) -- Michael Hanke Thu, 21 Jun 2012 18:40:11 +0200 condor (7.8.1~dfsg.1-1) unstable; urgency=low * New upstream bugfix release: - Fixed a bug in the condor init script that would cause the init script to hang if condor wasn't running (Ticket 2872) - Fixed a bug that caused Parallel Universe jobs using Parallel Scheduling Groups to occasionally stay idle even when there were available machines to run them (Ticket 3017) - Fixed a bug that caused the Condor GridManager to crash when attempting to submit jobs to a local PBS/LSF/SGI cluster (Ticket 3014) - Fixed a bug in the handling of local universe jobs which caused the Condor SCHEDD to log a spurious ERROR message every time a local universe job exited, and then further caused the statistics for local universe jobs to be incorrectly computed (Ticket 3008) - Fixed a bug when Condor runs under the PrivSep model, in which if a job created a hard link from one file to another, Condor was unable to transfer the files back to the submit side, and the job was put on hold. (Ticket 2987) - When configuration variables MaxJobRetirementTime or MachineMaxVacateTime were very large, estimates of machine draining badput and completion time were sometimes nonsensical because of integer overflow (Ticket 3001) - Fixed a bug where per-job sub-directories and their contents in the SPOOL directory would not be removed when the associated job left the queue (Ticket 2942). Closes: #663031 * Updated Swedish Debconf translation (Closes: #676943). -- Michael Hanke Wed, 06 Jun 2012 10:39:35 +0200 condor (7.8.0~dfsg.1-2) unstable; urgency=low * Actually include the Russian, Italian, and Polish translations. * Add Debconf template translations: - Swedish -- courtesy of Martin Bagge (Closes: #673877) - French -- courtesy of Steve Petruzzello (Closes: #673138) - Portuguese -- courtesy of Pedro Ribeiro (Closes: #674943) * Add explicit dependency on Python (for condor_router_history). * Remove word duplication from package description. * Fix typos in debian/copyright. -- Michael Hanke Mon, 04 Jun 2012 08:49:07 +0200 condor (7.8.0~dfsg.1-1) unstable; urgency=low * New upstream release (Closes: #670304). This is the first release of the new 7.8 stable series. Patches introduced to prevent FTBFS on mips, ia64 and s390x are merged/obsolete. * Add Debconf template translations (Closes: #670487): - German -- courtesy of Erik Pfannenstein (Closes: #671394) - Russian -- courtesy of Yuri Kozlov (Closes: #671510) - Italian -- courtesy of Beatrice Torracca (Closes: #671641) - Polish -- courtesy of Michał Kułach (Closes: #671547) -- Michael Hanke Wed, 09 May 2012 11:35:19 +0200 condor (7.7.6~dfsg.1-3) experimental; urgency=low * Temporarily drop cgroups dependency and, consequently, support for cgroups in Condor. The cgroups package is not in the condition to migrate into wheezy, hence blocking Condor's migration as well. cgroups maintainer suggests to drop this dependency for now. http://lists.debian.org/debian-devel/2012/04/msg00617.html * Improved Debconf templates after review by debian-l10n-english. Thanks to Justin B. Rye and Christian Perrier. * Add Debconf template translations: - Danish -- courtesy of Joe Dalton (Closes: #671090). -- Michael Hanke Wed, 02 May 2012 08:13:55 +0200 condor (7.7.6~dfsg.1-2) unstable; urgency=low * Add upstream patch to address FTBFS on ia64 and s390x (Closes: #670393). -- Michael Hanke Wed, 25 Apr 2012 18:18:08 +0200 condor (7.7.6~dfsg.1-1) unstable; urgency=low * New upstream development release. Last one before the 7.8 stable series. * Majority of patches has been merged upstream or have been made obsolete. * Stop supporting alternative LOCAL_DIR settings via Debconf. In addition the pre/postrm scripts no longer support non-standard (aka /var) LOCAL_DIR settings. This was done to be able to keep runtime data (logs, etc.) when the package gets removed, but not purged (Closes: #668088). Previously the package relied on Condor's own configuration facilities to deduce LOCAL_DIR, which is impossible to perform in 'postrm'. * Do not remove the condor user during package purge (Closes: #667533). Along the lines of the discussion in #621833 the user is kept in a locked state (condor user has login disabled by default). * Simplify logic of adding the condor system user in maintainer scripts. * Change daemon restart behavior on package upgrade -- confirmed with upstream. Condor is now kept running during package upgrade (was unconditionally stopped in prerm before). Upon finishing installtion of the new version, Condor is just started (if not already running) and a 'condor_restart' command is issued. Before a complete stop-start cycle was performed. The new behavior should allow for a more graceful upgrade of Condor pools, by safely shutting down all running jobs and jobs submitted from the localhost. * Add patch to allow building on MIPS. Rename variable name 'mips' to 'mips_' to avoid name clash (Closes: #669689). * Fix a bug in the debconf script that caused the default start policy setting for a personal Condor installation to have no effect, i.e. it would not run jobs regardless of machine activity by default. -- Michael Hanke Tue, 24 Apr 2012 20:15:31 +0200 condor (7.7.5~dfsg.1-2) experimental; urgency=low * New primary Debian maintainer contact is Condor upstream. Previous maintainer remains uploader. * Guard against failure due to missing directories in pre-removal script (Closes: #662739). Thanks to Andreas Beckmann for detecting the bug. * Fix DMTCP integration for version 1.2.4 and later -- file location tests became invalid. * Set default DMTCP snapshotting interval to zero -- no regular snapshotting, but on-demand snapshots on vacate command. In addition the shim script now honors DMTCP_CHECKPOINT_INTERVAL. * Call dmtcp_command with option --quiet in shim_dmtcp to achieve more readable logs, by suppressing DMTCP's license and author boilerplate output. * Added patch to ignore PIDs from a stale PID file when trying to stop condor. This could otherwise prevent package removal/upgrade (Closes: #663033). The patch has been forwarded upstream. * Cherry-pick upstream patch that let's Condor build on all Debian-derived distributions identically. This patch allows the unmodified Debian package to build on Ubuntu. * Cherry-pick upstream patch to bump the libclassad SO version from 2 to 3 -- fixed an overlooked and somewhat hidden change of API. Should now be stable for the 7.8 series. Also changed associated package name and dependencies accordingly. * Let DMTCP perform a blocking checkpointing operation, to avoid Condor killing DMTCP before a checkpoint file is written completely (Closes: #663078). * Make an attempt to let shim_dmtcp remove DMTCP checkpoint output files from a job's EXEC_DIR upon job termination. This is experimental. * Improve README.Debian regarding DMTCP checkpointing setup. * Bumped Standards-version to 3.9.3; no changes necessary. * Added homepage and VCS information to control file. -- Michael Hanke Fri, 09 Mar 2012 13:20:25 +0100 condor (7.7.5~dfsg.1-1) UNRELEASED; urgency=low * New upstream release. Feature freeze for upcoming 7.8 stable series. - better statistics for monitoring a Condor pool, - better support for absent ads in the collector - fast claiming of partitionable slots - support for some newer Linux kernel features to better support process isolation. * Remove 'disable_java_gt4X' patch -- corresponding upstream code has been removed. * Remove 'debian_dynamic_run' patch -- merged upstream. -- Michael Hanke Thu, 01 Mar 2012 08:47:40 +0100 condor (7.7.4+git3-gd7ce75b~dfsg.1-1) experimental; urgency=low * Initial upload to Debian experimental (Closes: #233482). After acceptance into Debian an upload to unstable is expected to happen once a build-time test suite is operational. * Drop NeuroDebian team as maintainer, upstream will eventually become the primary maintainer, with Michael Hanke being the uploader for the time being. * Merge commits from 7.7.4 maintenance branch. * Enable GSOAP support. -- Michael Hanke Fri, 24 Feb 2012 08:37:32 +0100 condor (7.7.4-2) UNRELEASED; urgency=low * Forcing runtime dependency on libcgroup1 (>= 0.37~), as otherwise Condor's procd refuses to start. * Fix problem in the Debconf setup that caused the initially provided settings to be overwritten during installation on a clean system (without and existing Condor installation). * Modify condor_qsub to always execute submitted scripts via the configured shell and not directly (expecting them to be executable). The seems to be the behavior of SGE's qsub. -- Michael Hanke Tue, 17 Jan 2012 14:01:27 +0100 condor (7.7.4-1) UNRELEASED; urgency=low * New upstream release. RPATH setup now officially supported. * Added emulator for SGE-style qsub calls (condor_qsub; incl. manpage). * Update DMCTP shim script to version 0.4. * Added dependency to libdate-manip-perl for condor_gather_info. * Remove patch to disable scimark in favor of proper configuration default. -- Michael Hanke Thu, 22 Dec 2011 16:19:00 +0100 condor (7.7.1+git837-g37b7fa3-1) UNRELEASED; urgency=low * New upstream code. Support for dynamic linking against system libraries. Condor's internal libs have been merged into a single library. * Fix build-deps on BOOST. * Bumped Standards-version to 3.9.2; no changes necessary. * Build using embedded classad library -- upstream will (or did) stop releasing it separately. libclassad binary packages are now built from the Condor source package. * Drop shared library, sysapi and postgres patches -- merged or obsolete. * Adjust rules for now included doc source code. * Add sanity checks into maintainer script to avoid creating bogus directories and installation errors. Thanks to Mats Rynge for reporting. * Add Python as runtime dependency. * Add patch to make condor_run work with Condor's new file transfer behavior. Courtesy of Jaime Frey. * Stop building a PDF version of the manual (takes long, and segfaults ghostscript at the moment). Keep HTML version. * Add patch to provide a sane default configuration for ssh_to_job and install condor_ssh_to_job_sshd_config_template as a conffile in /etc/condor/. * Added condor-dev package, containing headers files and static versions of Condor libraries. * Add build-dep on libldap-dev to ensure nordugrid_gahp being built. * Added DMTCP integration for snapshotting of vanilla universe jobs. -- Michael Hanke Tue, 11 Oct 2011 08:42:35 +0200 condor (7.6.1-1) UNRELEASED; urgency=low * New upstream release. * Adjust shared library patch. -- Michael Hanke Sat, 04 Jun 2011 20:36:29 -0400 condor (7.6.0-1) UNRELEASED; urgency=low * New upstream stable release. * Adjusted patches. * Added missing debhelper dependencies. * Added missing sysv-style init script symlinks. * Fixed various typos. * Prevent local classad header files from being used, in favor of system-wide libclassad installations. -- Michael Hanke Mon, 18 Apr 2011 22:07:08 -0400 condor (7.5.5+git995-ga9a0d2a-1) UNRELEASED; urgency=low * New upstream code from V7.6 branch. Updated various patches, removed some merged ones. * No longer compile the 'contrib' parts -- upstream recommended it due to lack of stability. * Added patch to create /var/run/condor upon daemon startup with proper permissions. That helps to conform to the FHS that declares /var/run as volatile and to be cleaned upon boot. Moreover, some systems have /var/run mounted as tmpfs. -- Michael Hanke Tue, 15 Mar 2011 16:37:56 -0400 condor (7.5.4+git567-gb10f6b4-2) UNRELEASED; urgency=low * Applied patch to allow adding submit specs in condor_run calls. Thanks to Matthew Farrellee . * Improved configuration for a "Personal Condor". Bind network traffic to the loopback interface. Better documentation in the generated configuration file. -- Michael Hanke Thu, 06 Jan 2011 17:28:59 -0500 condor (7.5.4+git567-gb10f6b4-1) UNRELEASED; urgency=low * Initial packaging. -- Michael Hanke Sun, 26 Dec 2010 10:10:19 -0500 debian/htcondor.dirs0000664000000000000000000000000012260003121011644 0ustar debian/htcondor.config0000775000000000000000000000646312260003121012176 0ustar #!/bin/bash set -e # shortcut to query condors configuration without interpreting its # macros ccv() { condor_config_val -dump |grep "^${1}\s=" | sed -e "s/^${1}\s=\s//" } . /usr/share/debconf/confmodule db_version 2.0 db_capb backup db_settitle condor/title # if we have a working condor config query it to charge debconf # hmmm '&> /dev/null' would ruin the logic ... strange if condor_config_val -config 1> /dev/null 2> /dev/null; then if [ "$(ccv CONDOR_DEVELOPERS)" = "NONE" ]; then db_set condor/phonehome false else db_set condor/phonehome true fi if [ "$(ccv START)" = "TRUE" ]; then db_set condor/startpolicy true else db_set condor/startpolicy false fi db_set condor/reservedmemory "$(ccv RESERVED_MEMORY)" db_set condor/admin "$(ccv CONDOR_ADMIN)" db_set condor/filesystemdomain "$(ccv FILESYSTEM_DOMAIN)" db_set condor/uiddomain "$(ccv UID_DOMAIN)" db_set condor/centralmanager "$(ccv CONDOR_HOST)" db_set condor/allowwrite "$(ccv ALLOW_WRITE)" # figure out roles condor_daemons=$(ccv DAEMON_LIST) [[ "$condor_daemons" =~ "COLLECTOR" ]] \ && condor_roles+="${condor_roles:+, }COLLECTOR:NEGOTIATOR" [[ "$condor_daemons" =~ "SCHEDD" ]] \ && condor_roles+="${condor_roles:+, }SCHEDD" [[ "$condor_daemons" =~ "STARTD" ]] \ && condor_roles+="${condor_roles:+, }STARTD" db_set condor/daemons "$condor_roles" fi # initial check whether our service is wanted # stop here if not db_input high condor/wantdebconf || true db_go # need to run once to get db_get to work db_get condor/wantdebconf if [ "$RET" = "false" ]; then exit 0 fi # This implements a simple state machine so the back button can be handled. # taken from debconf demo example MAX_STATE=6 STATE=1 while [ "$STATE" != 0 -a "$STATE" != "$MAX_STATE" ]; do case $STATE in 1) db_input high condor/personal || true ;; 2) db_beginblock db_input low condor/startpolicy || true db_input low condor/reservedmemory || true db_input low condor/admin || true db_input low condor/phonehome || true db_endblock ;; 3) db_get condor/personal if [ "$RET" = "true" ]; then # for the initial configuration of a personal condor, we want # all jobs to start right away, regardless of machine activity # (but only force this setting if the user never had the chance # to indicate something else) db_fget condor/startpolicy seen if [ "$RET" = "false" ]; then db_set condor/startpolicy true fi # skip over all other questions STATE=$MAX_STATE continue fi db_input high condor/daemons || true ;; 4) db_beginblock db_input high condor/filesystemdomain || true db_input high condor/uiddomain || true db_input high condor/centralmanager || true db_endblock ;; 5) db_input critical condor/allowwrite || true ;; esac if db_go; then STATE=$(($STATE + 1)) else STATE=$(($STATE - 1)) fi done db_stop debian/htcondor.postrm0000775000000000000000000000306212260003121012245 0ustar #! /bin/sh # postrm script for condor set -e condor_user=condor condor_local_cfg=/etc/condor/condor_config.local condor_debconf_cfg=/etc/condor/config.d/00debconf remove_condor_dirs() { # make an attempt to remove runtime data from the "standard" location # this cannot deal with non-standard LOCALDIR settings for dlabel in lib/condor spool/condor lock/condor log/condor run/condor; do dname="/var/$dlabel" if [ -d "$dname" ]; then rm -rf $dname fi done } case "$1" in remove|abort-install|disappear) ;; purge) # wipe out runtime data (logs, ...) remove_condor_dirs [ -f $condor_debconf_cfg ] && rm $condor_debconf_cfg # unless the file has any non-comment purge it too [ -f $condor_local_cfg ] \ && [ "$(grep -v '^[#]' < $condor_local_cfg | wc -w)" = "0" ] \ && rm $condor_local_cfg # not removing the condor system user; see http://bugs.debian.org/621833 # for a discussion. also not trying to lock the condor user as it was # configured with --disabled-login --disabled-password already ;; upgrade|failed-upgrade|abort-upgrade) ;; *) echo "postrm called with unknown argument \`$1'" >&2 exit 1 ;; esac case "$1" in purge|remove|abort-install|disappear) # and remove links from rc?.d update-rc.d condor remove >/dev/null || exit 0 ;; esac # End automatically added section # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/htcondor-doc.install0000664000000000000000000000035512260003121013131 0ustar debian/tmp/usr/share/doc/condor/etc/examples/* usr/share/doc/condor/examples/etc/ debian/tmp/usr/share/doc/condor/examples/* usr/share/doc/condor/examples/ debian/dmtcp usr/share/doc/condor/examples/ doc/build/html usr/share/doc/condor/ debian/patches/0000775000000000000000000000000012265321671010624 5ustar debian/patches/campus_factory_syntax.patch0000664000000000000000000000113612260003121016251 0ustar diff --git a/src/condor_contrib/campus_factory/bin/campus_factory b/src/condor_contrib/campus_factory/bin/campus_factory index d6a312d..9953080 100755 --- a/src/condor_contrib/campus_factory/bin/campus_factory +++ b/src/condor_contrib/campus_factory/bin/campus_factory @@ -19,7 +19,7 @@ prog="Campus Factory" if [ -e $script_location/../etc/campus_factory.conf ]; then config=$script_location/../etc/campus_factory.conf -elif [ -e `condor_config_val ETC`/campus_factory.conf +elif [ -e `condor_config_val ETC`/campus_factory.conf ]; then config=`condor_config_val ETC`/campus_factory.conf fi debian/patches/as-needed-libs-ftbfs.patch0000664000000000000000000000102012265321671015514 0ustar Index: condor-8.0.5~dfsg.1/src/condor_shadow.V6.1/CMakeLists.txt =================================================================== --- condor-8.0.5~dfsg.1.orig/src/condor_shadow.V6.1/CMakeLists.txt 2013-12-29 06:24:37.000000000 -0500 +++ condor-8.0.5~dfsg.1/src/condor_shadow.V6.1/CMakeLists.txt 2014-01-14 15:53:03.408347075 -0500 @@ -26,3 +26,4 @@ endif(NOT PROPER AND (LINUX OR DARWIN)) condor_daemon( shadow "${shadowRmvElements}" "${CONDOR_LIBS_FOR_SHADOW}" "${C_SBIN}" OFF ) +TARGET_LINK_LIBRARIES(condor_shadow dl) debian/patches/backport_disable_gsoap0000664000000000000000000000200312260003121015201 0ustar diff --git a/debian/control b/debian/control index b13f72f..32d5253 100644 --- a/debian/control +++ b/debian/control @@ -12,7 +12,7 @@ Build-Depends: debhelper (>= 7.0.50~), po-debconf, cmake, libpq-dev, libboost-system-dev, libboost-regex-dev, libboost-filesystem-dev, libexpat1-dev, libxml2-dev, libvirt-dev, zlib1g-dev, gcj-jdk | java-compiler, uuid-dev, chrpath, libldap2-dev | libldap-dev, - help2man, gsoap (>= 2.7.17-1~) + help2man Standards-Version: 3.9.3 Homepage: http://research.cs.wisc.edu/condor Vcs-Browser: http://git.debian.org/?p=pkg-exppsy/condor.git diff --git a/debian/rules b/debian/rules index 133172c..f9f327a 100755 --- a/debian/rules +++ b/debian/rules @@ -25,7 +25,7 @@ override_dh_auto_configure: -DBUILDID:STRING="Debian-$(debver)"\ -DFORCE_PRE_RELEASE:STRING="Debian-$(debver)"\ -DCMAKE_INSTALL_RPATH:STRING="/usr/lib/condor" \ - -DHAVE_EXT_GSOAP:BOOL=ON \ + -DHAVE_EXT_GSOAP:BOOL=OFF \ -DHAVE_EXT_CURL:BOOL=ON \ -DHAVE_EXT_OPENSSL:BOOL=ON \ -DHAVE_EXT_BOOST:BOOL=ON \ debian/patches/squeeze-dsc-patch0000777000000000000000000000000012260003121020451 2backport_disable_gsoapustar debian/patches/noformat_arg0000664000000000000000000000107512260331303013214 0ustar diff --git a/src/condor_starter.V6.1/glexec_privsep_helper.linux.cpp b/src/condor_starter.V6.1/glexec_privsep_helper.linux.cpp index 9f1c005..0ba4791 100644 --- a/src/condor_starter.V6.1/glexec_privsep_helper.linux.cpp +++ b/src/condor_starter.V6.1/glexec_privsep_helper.linux.cpp @@ -417,7 +417,7 @@ GLExecPrivSepHelper::create_process(const char* path, if( !retry ) { // return the most recent glexec error output if( error_msg ) { - error_msg->formatstr_cat(glexec_error_msg.Value()); + *error_msg += glexec_error_msg.Value(); } return 0; } debian/patches/gsoap_symbols0000664000000000000000000001552612260003121013417 0ustar gsoap IPv6 support changes the layout struct of soap, breaking builds. This patch is a combination of patches from the following tickets: https://htcondor-wiki.cs.wisc.edu/index.cgi/tktview?tn=3698 https://htcondor-wiki.cs.wisc.edu/index.cgi/tktview?tn=3740 diff --git a/build/cmake/macros/CondorDaemon.cmake b/build/cmake/macros/CondorDaemon.cmake index e55fea25ddea300bd625a0994525fd8decfe1296..9eda18e674a5695c2e5409dbe94993e2b58b9e57 100644 --- a/build/cmake/macros/CondorDaemon.cmake +++ b/build/cmake/macros/CondorDaemon.cmake @@ -44,7 +45,11 @@ MACRO (CONDOR_DAEMON _CNDR_TARGET _REMOVE_ELEMENTS _LINK_LIBS _INSTALL_LOC _GEN_ add_dependencies(condor_${_CNDR_TARGET} gen_${_CNDR_TARGET}_soapfiles) # Do not export gsoap symbols - they may break loadable modules. if ( LINUX ) - set_target_properties( condor_${_CNDR_TARGET} PROPERTIES LINK_FLAGS "-Wl,--exclude-libs=libgsoapssl++.a -Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../condor_daemon_core.V6/daemon.version") + if ( PROPER ) + set_target_properties( condor_${_CNDR_TARGET} PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../condor_daemon_core.V6/daemon.version.proper") + else() + set_target_properties( condor_${_CNDR_TARGET} PROPERTIES LINK_FLAGS "-Wl,--exclude-libs=libgsoapssl++.a -Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../condor_daemon_core.V6/daemon.version") + endif() endif() endif() diff --git a/src/condor_daemon_core.V6/daemon.version.proper b/src/condor_daemon_core.V6/daemon.version.proper new file mode 100644 index 0000000000000000000000000000000000000000..3264a0d1ff0a00ab60f7932cd9af305684322e0c --- /dev/null +++ b/src/condor_daemon_core.V6/daemon.version.proper @@ -0,0 +1,13 @@ +# This is a linker script for Linux +# This prevents the condor daemons from exporting gsoap symbols. +# +# Note we globally export dc_soap_*. This is because no-op +# stubs are available as weak symbols in libcondor_utils. So, +# without global strong symbols in this daemon, libcondor_utils will +# prefer the ones that do not function. +# +condor_daemon { + # Note the C++ mangling here. + global: _Z14dc_soap_acceptP4SockPK4soap; _Z13dc_soap_serveP4soap; _Z12dc_soap_freeP4soap; _Z12dc_soap_initRP4soap; soap_putheader; soap_serializeheader; soap_faultstring; soap_faultsubcode; soap_faultcode; soap_getheader; soap_getfault; namespaces; soap_faultdetail; soap_putfault; soap_serializefault; soap_check_faultdetail; soap_markelement; soap_check_faultsubcode; soap_getelement; soap_putelement; + local: *; +}; diff --git a/src/condor_daemon_core.V6/soap_core.cpp b/src/condor_daemon_core.V6/soap_core.cpp index ee4c35ae018874d346cef66a6194a5e07226c52e..9f7d47a94026df9ba740fae9ce8725bd7cdda613 100644 --- a/src/condor_daemon_core.V6/soap_core.cpp +++ b/src/condor_daemon_core.V6/soap_core.cpp @@ -65,7 +65,19 @@ dc_soap_accept(Sock *socket, const struct soap *soap) // 3. increase size of send and receive buffers // 4. set SO_KEEPALIVE [done automatically by CEDAR accept()] cursoap->socket = socket->get_file_desc(); - cursoap->peer = socket->peer_addr().to_sin(); + // If you use Fedora's IPv6 patch for gsoap, peer is sockaddr_storage. + // Upstream has peer of type sockaddr_in. + // This trickery is done to keep the code compatible with both. + if (sizeof(cursoap->peer) == sizeof(sockaddr_storage)) + { + sockaddr_storage store = socket->peer_addr().to_storage(); + memcpy(&cursoap->peer, &store, sizeof(cursoap->peer)); + } + else + { + sockaddr_in store = socket->peer_addr().to_sin(); + memcpy(&cursoap->peer, &store, sizeof(cursoap->peer)); + } cursoap->recvfd = soap->socket; cursoap->sendfd = soap->socket; if ( cursoap->recv_timeout > 0 ) { diff --git a/src/condor_includes/condor_sockaddr.h b/src/condor_includes/condor_sockaddr.h index 0be7fcb9df92acf3812494ace2c0e2a3fb25d6ff..2744de42968a934c4c3b9427ed78ea4d2b814ecd 100644 --- a/src/condor_includes/condor_sockaddr.h +++ b/src/condor_includes/condor_sockaddr.h @@ -53,6 +53,7 @@ public: condor_sockaddr(const sockaddr* saddr); condor_sockaddr(const sockaddr_in* sin) ; condor_sockaddr(const sockaddr_in6* sin6); + condor_sockaddr(const sockaddr_storage* sin); private: void init(uint32_t ip, unsigned port); diff --git a/src/condor_utils/condor_sockaddr.cpp b/src/condor_utils/condor_sockaddr.cpp index 3669d5c4568fa9dea3e6e406076b68016ad2d6ff..52c94b7c8e2164a37dd44ec253a58f580c14d888 100644 --- a/src/condor_utils/condor_sockaddr.cpp +++ b/src/condor_utils/condor_sockaddr.cpp @@ -65,6 +65,11 @@ condor_sockaddr::condor_sockaddr(const sockaddr* sa) } } +condor_sockaddr::condor_sockaddr(const sockaddr_storage *sa) +{ + condor_sockaddr(reinterpret_cast(sa)); +} + condor_sockaddr::condor_sockaddr(const sockaddr_in* sin) { init(sin->sin_addr.s_addr, sin->sin_port); @@ -85,6 +90,20 @@ sockaddr_in6 condor_sockaddr::to_sin6() const return v6; } +sockaddr_storage condor_sockaddr::to_storage() const +{ + sockaddr_storage tmp; + if (is_ipv4()) + { + memcpy(&tmp, &v4, sizeof(v4)); + } + else + { + memcpy(&tmp, &v6, sizeof(v6)); + } + return tmp; +} + bool condor_sockaddr::is_ipv4() const { return v4.sin_family == AF_INET; diff --git a/externals/bundles/gsoap/2.7.10-p5/CMakeLists.txt b/externals/bundles/gsoap/2.7.10-p5/CMakeLists.txt index 21d1588250aec9db5e219ddb0ee0cf51a9b56146..05f67f5f5b17444d7bfbb3c691add016a13ceb8c 100644 --- a/externals/bundles/gsoap/2.7.10-p5/CMakeLists.txt +++ b/externals/bundles/gsoap/2.7.10-p5/CMakeLists.txt @@ -45,9 +45,9 @@ if (WITH_GSOAP) patch -N --binary -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/nmi_prereq_hack.patch && patch -N --binary -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/openssl_1_0.patch) if(DARWIN AND cxx_11) - set (GSOAP_CONFIGURE ./configure --prefix=${GSOAP_INSTALL_LOC} --disable-dependency-tracking "CPPFLAGS=-I${OPENSSL_INSTALL_LOC}/include/" "CXXFLAGS=-std=c++11 -stdlib=libc++" ) + set (GSOAP_CONFIGURE ./configure --prefix=${GSOAP_INSTALL_LOC} --disable-dependency-tracking "CPPFLAGS=-I${OPENSSL_INSTALL_LOC}/include/ -DWITH_IPV6" "CXXFLAGS=-std=c++11 -stdlib=libc++ -DWITH_IPV6" "CFLAGS=-DWITH_IPV6" ) else() - set (GSOAP_CONFIGURE ./configure --prefix=${GSOAP_INSTALL_LOC} --disable-dependency-tracking "CPPFLAGS=-I${OPENSSL_INSTALL_LOC}/include/" ) + set (GSOAP_CONFIGURE ./configure --prefix=${GSOAP_INSTALL_LOC} --disable-dependency-tracking "CPPFLAGS=-I${OPENSSL_INSTALL_LOC}/include/ -DWITH_IPV6" "CXXFLAGS=-DWITH_IPV6" "CFLAGS=-DWITH_IPV6" ) endif() set (GSOAP_MAKE make ) set (GSOAP_INSTALL make install ) @@ -158,6 +158,9 @@ if (WITH_GSOAP) set( SOAPCPP2 ${SOAPCPP2} PARENT_SCOPE ) set( GSOAP_SHARE ${GSOAP_SHARE} PARENT_SCOPE ) set( HAVE_EXT_GSOAP ON PARENT_SCOPE ) + # TODO: use pkg-config to detect the correct flags on proper + # builds + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DWITH_IPV6" PARENT_SCOPE ) message ( STATUS "external configured (GSOAP_FOUND=${GSOAP_FOUND})" ) debian/patches/fix_condor_run0000664000000000000000000000212212260003121013540 0ustar From: Jaime Frey Subject: condor_run file transfer problem fix The problem is that condor_run assumes you have a shared filesystem and it's being run in a directory on that shared filesystem. It doesn't set should_transfer_files, so the assumption is that Condor on the execute machine can chdir to the same directory and access the job's files there, with no file transfer required. When I tried running condor_run in /tmp, I saw the same behavior as you. When I logged into the execute machine afterwards, I saw .condor_out.## and .condor_err.## in /tmp. The stderr file contained an error message about not being able to find the executable. --- a/src/condor_scripts/condor_run +++ b/src/condor_scripts/condor_run @@ -150,6 +150,8 @@ print JDF "output = .condor_out.$$\n"; print JDF "error = .condor_error.$$\n"; print JDF "getenv = True\n"; +print JDF "should_transfer_files = YES\n"; +print JDF "when_to_transfer_output = ON_EXIT\n"; print JDF "requirements = ", $requirements, "\n" if (defined($requirements)); foreach my $append (@appends) { print JDF $append . "\n"; debian/patches/lucid-dsc-patch0000664000000000000000000000324212260003121013472 0ustar diff --git a/debian/control b/debian/control index b13f72f..b7222ab 100644 --- a/debian/control +++ b/debian/control @@ -4,14 +4,13 @@ Maintainer: NeuroDebian team Maintainer: Condor Developers Uploaders: Michael Hanke , Brian Lin Build-Depends: debhelper (>= 7.0.50~), po-debconf, cmake, libpq-dev, - libcurl4-openssl-dev, zlib1g-dev, libglobus-gss-assist-dev, - libglobus-gram-protocol-dev, libglobus-gram-client-dev, - libglobus-gass-server-ez-dev, libglobus-ftp-client-dev, latex2html, transfig, + libcurl4-openssl-dev, zlib1g-dev, + latex2html, transfig, libpcre3-dev, libboost-thread-dev, libboost-program-options-dev, libboost-system-dev, libboost-regex-dev, libboost-filesystem-dev, libexpat1-dev, libxml2-dev, libvirt-dev, zlib1g-dev, gcj-jdk | java-compiler, uuid-dev, chrpath, libldap2-dev | libldap-dev, - help2man, gsoap (>= 2.7.17-1~) + help2man Standards-Version: 3.9.3 Homepage: http://research.cs.wisc.edu/condor Vcs-Browser: http://git.debian.org/?p=pkg-exppsy/condor.git diff --git a/debian/rules b/debian/rules index 133172c..13829c4 100755 --- a/debian/rules +++ b/debian/rules @@ -25,11 +25,11 @@ override_dh_auto_configure: -DBUILDID:STRING="Debian-$(debver)"\ -DFORCE_PRE_RELEASE:STRING="Debian-$(debver)"\ -DCMAKE_INSTALL_RPATH:STRING="/usr/lib/condor" \ - -DHAVE_EXT_GSOAP:BOOL=ON \ + -DHAVE_EXT_GSOAP:BOOL=OFF \ -DHAVE_EXT_CURL:BOOL=ON \ -DHAVE_EXT_OPENSSL:BOOL=ON \ -DHAVE_EXT_BOOST:BOOL=ON \ - -DHAVE_EXT_GLOBUS:BOOL=ON \ + -DHAVE_EXT_GLOBUS:BOOL=OFF \ -DHAVE_EXT_KRB5:BOOL=ON \ -DHAVE_EXT_LIBVIRT:BOOL=ON \ -DHAVE_EXT_LIBXML2:BOOL=ON \ debian/patches/prevent_schedd_crash0000664000000000000000000000246412261056050014722 0ustar From: Subject: Fix crashes on F19 with optimization an USE_CLONE Compiler optimization was defeating our detection of the direction of stack growth. Given that there's no truely portable way to do this, and the clone man page tells us the only architecture where stack grows up is HP-PA, and we are unlikely to ever run on linux on hppa, just hardcode this as stack_grows_down. Origin: upstream, https://htcondor-wiki.cs.wisc.edu/index.cgi/chngview?cn=38936 diff --git a/src/condor_daemon_core.V6/daemon_core.cpp b/src/condor_daemon_core.V6/daemon_core.cpp index 9d546f564b11eca635d8f1603b772998baa82da5..f80972d7aa7abef3c8cfb581aa855ff681ba79c0 100644 --- a/src/condor_daemon_core.V6/daemon_core.cpp +++ b/src/condor_daemon_core.V6/daemon_core.cpp @@ -5407,12 +5407,13 @@ enum { }; #if HAVE_CLONE -static int stack_direction(volatile int *ptr=NULL) { - volatile int location; - if(!ptr) return stack_direction(&location); - if (ptr < &location) { - return STACK_GROWS_UP; - } +static int stack_direction() { + +// We used to try to be clever about figuring this out +// but compiler optimizations kept tripping up this code +// The clone(2) man page says "stack grown down on all +// Linux supported architectures except HP-PA. +// So just hardcode STACK_GROWS_DOWN... return STACK_GROWS_DOWN; } debian/patches/series0000664000000000000000000000051612265320021012027 0ustar # in order of upstream compatibility and invasiveness debian_init no_java_for_now enable_pythonbindings no_compress globus-multi-arch gsoap_symbols campus_factory_syntax.patch # should be obsolete in condor 7.7.6+, but cannot confirm fix_condor_run #alpha-fix-getpid.patch noformat_arg prevent_schedd_crash as-needed-libs-ftbfs.patch debian/patches/enable_pythonbindings0000664000000000000000000000254512260502205015107 0ustar Description: Adjust inclusion condition for python bindings to work on Debian Issue was the absence of a Boost_PYTHON_LIBRARY variable. Author: Michael Hanke Last-Update: 2013-12-31 diff --git a/src/python-bindings/CMakeLists.txt b/src/python-bindings/CMakeLists.txt index a804992..3c9e8a0 100644 --- a/src/python-bindings/CMakeLists.txt +++ b/src/python-bindings/CMakeLists.txt @@ -1,6 +1,5 @@ - -if ( WITH_PYTHON_BINDINGS AND PYTHONLIBS_FOUND AND Boost_PYTHON_LIBRARY AND NOT SOLARIS ) +if ( WITH_PYTHON_BINDINGS AND PYTHONLIBS_FOUND AND (Boost_PYTHON_LIBRARY OR Boost_PYTHON_LIBRARY_DEBUG OR Boost_PYTHON_LIBRARY_RELEASE) AND NOT SOLARIS ) configure_file ( "${PROJECT_SOURCE_DIR}/src/python-bindings/test_driver.in" "${CMAKE_CURRENT_BINARY_DIR}/test_driver" @@ -65,4 +64,5 @@ if ( WITH_PYTHON_BINDINGS AND PYTHONLIBS_FOUND AND Boost_PYTHON_LIBRARY AND NOT add_test(python_htcondor_test test_driver tests/htcondor_tests.py TestConfig TestVersion) endif ( LINUX ) endif (BUILD_TESTING) -endif ( WITH_PYTHON_BINDINGS AND PYTHONLIBS_FOUND AND Boost_PYTHON_LIBRARY AND NOT SOLARIS ) + #endif ( WITH_PYTHON_BINDINGS AND PYTHONLIBS_FOUND AND Boost_PYTHON_LIBRARY AND NOT SOLARIS ) +endif ( WITH_PYTHON_BINDINGS AND PYTHONLIBS_FOUND AND (Boost_PYTHON_LIBRARY OR Boost_PYTHON_LIBRARY_DEBUG OR Boost_PYTHON_LIBRARY_RELEASE) AND NOT SOLARIS ) debian/patches/no_java_for_now0000664000000000000000000000377312260003121013705 0ustar Description: Upstream changes introduced in version 7.7.1+git436-g81fc261-1 This patch has been created by dpkg-source during the package build. Here's the last changelog entry, hopefully it gives details on why those changes were made: . condor (7.7.1+git436-g81fc261-1) UNRELEASED; urgency=low . * New upstream code. Support for dynamic linking against system libraries. . The person named in the Author field signed this changelog entry. Author: Michael Hanke --- The information above should follow the Patch Tagging Guidelines, please checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here are templates for supplementary fields that you might want to add: Origin: , Bug: Bug-Debian: http://bugs.debian.org/ Bug-Ubuntu: https://launchpad.net/bugs/ Forwarded: Reviewed-By: Last-Update: --- a/src/condor_chirp/CMakeLists.txt +++ b/src/condor_chirp/CMakeLists.txt @@ -27,7 +27,7 @@ condor_exe( condor_chirp "condor_chirp.cpp" ${C_LIBEXEC} "chirp_client;${CONDOR_TOOL_LIBS}" OFF ) -install ( FILES Chirp.jar DESTINATION ${C_LIB} ) +#install ( FILES Chirp.jar DESTINATION ${C_LIB} ) if (WANT_FULL_DEPLOYMENT) install ( FILES chirp_client.h DESTINATION ${C_INCLUDE}) --- a/src/condor_starter.V6.1/CMakeLists.txt +++ b/src/condor_starter.V6.1/CMakeLists.txt @@ -26,7 +26,7 @@ endif() # need to add all the other install targets for libexec. -install ( FILES scimark2lib.jar CondorJavaWrapper.class CondorJavaInfo.class DESTINATION ${C_LIB} ) +#install ( FILES scimark2lib.jar CondorJavaWrapper.class CondorJavaInfo.class DESTINATION ${C_LIB} ) if(LINUX AND WANT_GLEXEC) install (FILES condor_glexec_setup condor_glexec_run condor_glexec_cleanup condor_glexec_kill condor_glexec_update_proxy DESTINATION ${C_LIBEXEC} PERMISSIONS ${CONDOR_SCRIPT_PERMS} ) debian/patches/debian_init0000664000000000000000000000062012260331667013013 0ustar --- a/src/condor_examples/condor.boot.rpm +++ b/src/condor_examples/condor.boot.rpm @@ -61,7 +61,9 @@ ## There are no settings beyond this point. ###################################################################### - +# Source LSB init function. This will allow for, e.g., systemd to smoothly +# redirect init script calls to systemctl +. /lib/lsb/init-functions # help & usage myusage() { debian/patches/no_compress0000664000000000000000000000201412260003121013051 0ustar From: Michael Hanke Subject: Disable unnecessary 'compress' calls to shrink build-deps. --- a/doc/Makefile +++ b/doc/Makefile @@ -65,7 +65,7 @@ release-ps: ref.ps $(TARGETDIR) cp ref.ps $(TARGETDIR)/ref.ps cp $(TARGETDIR)/ref.ps $(TARGETDIR)/condor-$(SUBVER)-Manual.ps - compress $(TARGETDIR)/condor-$(SUBVER)-Manual.ps + #compress $(TARGETDIR)/condor-$(SUBVER)-Manual.ps cp $(TARGETDIR)/ref.ps $(TARGETDIR)/condor-$(SUBVER)-Manual.ps gzip $(TARGETDIR)/condor-$(SUBVER)-Manual.ps mv $(TARGETDIR)/ref.ps $(TARGETDIR)/condor-$(SUBVER)-Manual.ps @@ -93,10 +93,10 @@ tar cvf condor-$(SUBVER)-Manual.tar condor-$(SUBVER)-Manual gzip -c condor-$(SUBVER)-Manual.tar > condor-$(SUBVER)-Manual.tar.gz - compress condor-$(SUBVER)-Manual.tar + #compress condor-$(SUBVER)-Manual.tar mv condor-$(SUBVER)-Manual.tar.gz condor-$(SUBVER)-Manual - mv condor-$(SUBVER)-Manual.tar.Z condor-$(SUBVER)-Manual + #mv condor-$(SUBVER)-Manual.tar.Z condor-$(SUBVER)-Manual mv condor-$(SUBVER)-Manual ref.new debian/patches/globus-multi-arch0000664000000000000000000000233512260330402014073 0ustar Description: Enable CMAKE to find Debian's multiarch Globus Origin: vendor, http://bugs.debian.org/731246 Bug-Debian: http://bugs.debian.org/731246 Author: Mattias Ellert --- a/externals/bundles/globus/5.2.1/CMakeLists.txt +++ b/externals/bundles/globus/5.2.1/CMakeLists.txt @@ -227,7 +227,16 @@ find_multiple( "globus_gass_transfer;globus_gram_client;globus_gram_protocol" GLOBUS_GRID_UNIVERSE_GT2 ) find_multiple( "globus_ftp_control" GLOBUS_GRID_UNIVERSE_NORDUGRID) if (GLOBUS_FOUND) - append_var (CONDOR_EXTERNAL_INCLUDE_DIRS "/usr/include/globus;/usr/lib64/globus/include;/usr/lib/globus/include;/usr/local/globus/include/globus") + find_program(DPKG_ARCHITECTURE dpkg-architecture) + if (DPKG_ARCHITECTURE) + execute_process( + COMMAND ${DPKG_ARCHITECTURE} -qDEB_HOST_MULTIARCH + OUTPUT_VARIABLE DEB_HOST_MULTIARCH + OUTPUT_STRIP_TRAILING_WHITESPACE) + else() + set (DEB_HOST_MULTIARCH no-deb-multiarch) + endif() + append_var (CONDOR_EXTERNAL_INCLUDE_DIRS "/usr/include/globus;/usr/lib64/globus/include;/usr/lib/globus/include;/usr/include/${DEB_HOST_MULTIARCH}/globus;/usr/local/globus/include/globus") endif(GLOBUS_FOUND) endif(NOT PROPER) debian/patches/alpha-fix-getpid.patch0000664000000000000000000000210112260003121014740 0ustar From: Michael Cree Subject: condor FTBFS on Alpha: patch to fix getpid syscall Alpha Linux provides the getxpid syscall (to be compatible with OSF/1). Bug-Debian: http://bugs.debian.org/685892 --- condor-7.8.2~dfsg.1/src/condor_daemon_core.V6/daemon_core.cpp 2012-08-16 18:19:43.000000000 +1200 +++ condor-7.8.2~dfsg.1-new/src/condor_daemon_core.V6/daemon_core.cpp 2012-08-26 13:43:06.000000000 +1200 @@ -5323,7 +5323,11 @@ // the pid of the parent process (presumably due to internal // caching in libc). Therefore, use the syscall to get // the answer directly. +#ifdef __alpha__ + return syscall(SYS_getxpid); +#else return syscall(SYS_getpid); +#endif #else return ::getpid(); #endif @@ -5332,7 +5336,14 @@ #if HAVE_CLONE // See above comment for clone_safe_getpid() for explanation of // why we need to do this. +#if defined(__alpha__) && defined(__GNUC__) + pid_t ppid; + syscall(SYS_getxpid); + __asm__("mov $20, %0" : "=r"(ppid) : :); + return ppid; +#else return syscall(SYS_getppid); +#endif #else return ::getppid(); #endif debian/htcondor.postinst0000775000000000000000000002005612260520327012622 0ustar #!/bin/bash # postinst script for condor set -e . /usr/share/debconf/confmodule db_version 2.0 condor_user=condor condor_gecos="HTCondor Daemons" # make this one fixed because 'condor_config_val -tilde' relies on the user # home dir to exist condor_home=/var/lib/condor condor_local_cfg=/etc/condor/condor_config.local condor_debconf_cfg=/etc/condor/config.d/00debconf condor_make_homedir() { for dlabel in LOCAL_UNIV_EXECUTE CRED_STORE_DIR EXECUTE LOCK LOG SPOOL; do if dname=$(condor_config_val $dlabel 2>/dev/null); then mkdir -p $dname chown -R $condor_user: $dname else echo "HTCondor's configuration doesn't define $dlabel. This might be an indication of a problem." fi done # why should this be world writable? #for dlabel in EXECUTE CRED_STORE_DIR; do # chmod 1777 $(condor_config_val $dlabel) #done } condor_local_cfg_template() { if [ ! -e $condor_local_cfg ]; then cat > $condor_local_cfg << EOT # HTCondor configuration file # # Configuration placed into this file extends/overwrites the settings in the # main HTCondor configuration at /etc/condor/condor_config. # It may be advantagous to leave the main configuration file pristine and put # local configuration here to ease configuration updates during upgrades of the # HTCondor Debian package. Alternatively, it is also possible to place additional # configuration files into /etc/condor/config.d that will take precedence over # both the main configuration file and this local configuration. Note that # DebConf-generated configuration will overwrite settings in this file. EOT fi } condor_put_debconf_cfg() { # exit early if debconf is undesired db_get condor/wantdebconf if [ "$RET" = "false" ]; then # remove any previous debconf settings of no longer wanted [ -f "$condor_debconf_cfg" ] && rm -f $condor_debconf_cfg || true return fi # get settings from debconf db_get condor/personal ccfg_personal="$RET" db_get condor/reservedmemory ccfg_reservedmemory="$RET" db_get condor/admin ccfg_admin="$RET" db_get condor/phonehome ccfg_phonehome="$RET" db_get condor/daemons ccfg_daemons="$RET" db_get condor/filesystemdomain ccfg_filesystemdomain="$RET" db_get condor/uiddomain ccfg_uiddomain="$RET" db_get condor/centralmanager ccfg_centralmanager="$RET" db_get condor/allowwrite ccfg_allowwrite="$RET" db_get condor/startpolicy ccfg_startpolicy="$RET" # assemble configuration for a personal condor (if requested) if [ "$ccfg_personal" = "true" ]; then ccfg_daemons="STARTD, SCHEDD, COLLECTOR, NEGOTIATOR" ccfg_filesystemdomain='$(FULL_HOSTNAME)' ccfg_uiddomain='$(FULL_HOSTNAME)' ccfg_centralmanager='127.0.0.1' ccfg_allowwrite='127.0.0.1' else # do little replacement, otherwise take as is ccfg_daemons=${ccfg_daemons/:/, } fi # we always need the master daemon ccfg_daemons+="${ccfg_daemons:+, }MASTER" # header cat > $condor_debconf_cfg << EOT # This is the DebConf-generated configuration for HTCondor # # DO NOT edit this file, as changes will be overwritten during package # upgrades. Instead place custom configuration into either # /etc/condor/condor_config.local or another file in /etc/condor/config.d Use # the latter location if you need to overwrite/complement settings in the # DebConf-generated configuration. # which HTCondor daemons to run on this machine DAEMON_LIST = $ccfg_daemons # who receives emails when something goes wrong CONDOR_ADMIN = $ccfg_admin # how much memory should NOT be available to HTCondor RESERVED_MEMORY = $ccfg_reservedmemory # label to identify the local filesystem in a HTCondor pool FILESYSTEM_DOMAIN = $ccfg_filesystemdomain # label to identify the user id of the system in a HTCondor pool # (this need to be a fully qualified domain name) UID_DOMAIN = $ccfg_uiddomain # which machine is the central manager of this HTCondor pool CONDOR_HOST = $ccfg_centralmanager # what machines can access HTCondor daemons on this machine ALLOW_WRITE = $ccfg_allowwrite EOT # handle phone home settings individually, and only if necessary if [ "$ccfg_phonehome" = "true" ]; then cat >> $condor_debconf_cfg << EOT # contact information where HTCondor sends usage statistics CONDOR_DEVELOPERS = htcondor-admin@cs.wisc.edu CONDOR_DEVELOPERS_COLLECTOR = condor.cs.wisc.edu EOT fi # now add a few more setting that allow the personal condor to work out of # the box in a safe way if [ "$ccfg_personal" = "true" ]; then cat >> $condor_debconf_cfg << EOT # the following settings will restrict HTCondor's network access to the internal # network BIND_ALL_INTERFACES = FALSE NETWORK_INTERFACE = 127.0.0.1 # make HTCondor ignore UID domain name mismatch on systems without a fully # qualified domain name (safe because the personal HTCondor does not allow # remote access TRUST_UID_DOMAIN = TRUE EOT fi # now add a few more setting that allow the personal condor to work out of # the box in a safe way if [ "$ccfg_startpolicy" = "true" ]; then cat >> $condor_debconf_cfg << EOT # allow HTCondor jobs to run with the same priority as any other machine activity # always start jobs once they are submitted START = TRUE # never suspend jobs SUSPEND = FALSE # always continue jobs CONTINUE = TRUE # never preempt PREEMPT = FALSE # never kill KILL = FALSE EOT fi } case "$1" in configure) # according to http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=621833#119 # this should always work if ! adduser --system --group --gecos "$condor_gecos" --home $condor_home \ --disabled-password --disabled-login $condor_user --quiet 2>/dev/null; then # the only time where it would fail, is when there is an existing # non-system 'condor' user. This could happen e.g. in a heterogenous # HTCondor pool (various OSes) where the adminstrative HTCondor user # comes from LDAP and the home dir is shared across machines. This # is a supported deployment scenario for HTCondor (see installation # manual section 3.2) # the only problem is the possibility to conflict with an actual # "human" user with the same name, so only proceed when the # respective user is locked down SH=$(getent passwd | egrep '^condor:'| cut -d : -f 7) if [ "$SH" = "/bin/false" -o "$SH" = "/usr/sbin/nologin" ]; then echo "WARNING: HTCondor will be running under an existing non-system user account 'condor'." else echo "ERROR: HTCondor cannot run under unlocked non-system account 'condor'" 1>&2 exit 1 fi fi # make sure the config and home dir are complete condor_local_cfg_template condor_put_debconf_cfg condor_make_homedir # take care of starting condor if it is not yet running -- if it is # already running this command should have no effect if [ -x "/etc/init.d/condor" ]; then if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then invoke-rc.d condor start || exit $? else /etc/init.d/condor start || exit $? fi update-rc.d condor defaults 30 70 >/dev/null || exit 0 fi # send the restart command to condor, as we know that the installation # is finished. condor_master should figure this out on its own within # 5 minutes, but there is no need to wait # check for a running condor master first, as otherwise the restart # command fails and consequently package installation fails condor_status -master 2> /dev/null && condor_restart || true ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac db_stop # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/upstream0000664000000000000000000000046112260003121010737 0ustar Reference: Author: Michael Litzkow and Miron Livny and Matt Mutka Title: "Condor - A Hunter of Idle Workstations" Journal: Proceedings of the 8th International Conference of Distributed Computing Systems Year: 1988 Pages: 104-111 eprint: http://research.cs.wisc.edu/htcondor/doc/icdcs1988.pdf debian/control0000664000000000000000000001677712265317576010633 0ustar Source: condor Section: science Priority: extra Maintainer: Ubuntu Developers XSBC-Original-Maintainer: HTCondor Developers Uploaders: Michael Hanke , Brian Lin Build-Depends: debhelper (>= 9~), po-debconf, cmake, autotools-dev, dh-autoreconf, python-support, python-dev, libpq-dev, libcurl4-openssl-dev, zlib1g-dev, libglobus-gss-assist-dev, libglobus-gram-protocol-dev, libglobus-gram-client-dev, libglobus-gass-server-ez-dev, libglobus-ftp-client-dev, latex2html, transfig, libpcre3-dev, libboost-thread-dev, libboost-program-options-dev, libboost-system-dev, libboost-regex-dev, libboost-filesystem-dev, libexpat1-dev, libxml2-dev, libvirt-dev, zlib1g-dev, gcj-jdk | java-compiler, uuid-dev, chrpath, libldap2-dev | libldap-dev, help2man, gsoap (>= 2.7.17-1~), libboost-test-dev, libboost-python-dev Standards-Version: 3.9.4 Homepage: http://research.cs.wisc.edu/htcondor Vcs-Browser: http://git.debian.org/?p=pkg-exppsy/condor.git Vcs-Git: git://git.debian.org/git/pkg-exppsy/condor.git Package: htcondor Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends}, ${python:Depends}, python, ${perl:Depends}, debconf (>= 0.5) | debconf-2.0, adduser, libdate-manip-perl Recommends: dmtcp Suggests: coop-computing-tools Conflicts: condor Replaces: condor Description: distributed workload management system Like other full-featured batch systems, HTCondor provides a job queueing mechanism, scheduling policy, priority scheme, resource monitoring, and resource management. Users submit their serial or parallel jobs to HTCondor; HTCondor places them into a queue. It chooses when and where to run the jobs based upon a policy, carefully monitors their progress, and ultimately informs the user upon completion. . Unlike more traditional batch queueing systems, HTCondor can also effectively harness wasted CPU power from otherwise idle desktop workstations. HTCondor does not require a shared file system across machines - if no shared file system is available, HTCondor can transfer the job's data files on behalf of the user. . This package can set up an appropriate initial configuration at install time for a machine intended either as a member of an existing HTCondor pool or as a "Personal" (single machine) HTCondor pool. #Package: condor-tests #Architecture: any #Depends: ${misc:Depends}, ${shlibs:Depends} #Description: distributed workload management system - test suite # Like other full-featured batch systems, HTCondor provides a job queueing # mechanism, scheduling policy, priority scheme, resource monitoring, and # resource management. Users submit their serial or parallel jobs to HTCondor; # HTCondor places them into a queue. It chooses when and where to run the jobs # based upon a policy, carefully monitors their progress, and ultimately # informs the user upon completion. # . # Unlike more traditional batch queueing systems, HTCondor can also effectively # harness wasted CPU power from otherwise idle desktop workstations. HTCondor # does not require a shared file system across machines - if no shared file # system is available, HTCondor can transfer the job's data files on behalf of # the user. # . # This package provides HTCondor's test-suite, which can be used to verify # proper functioning of a HTCondor installation. Package: htcondor-dev Section: devel Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends} Conflicts: condor-dev Replaces: condor-dev Description: distributed workload management system - development files Like other full-featured batch systems, HTCondor provides a job queueing mechanism, scheduling policy, priority scheme, resource monitoring, and resource management. Users submit their serial or parallel jobs to HTCondor; HTCondor places them into a queue. It chooses when and where to run the jobs based upon a policy, carefully monitors their progress, and ultimately informs the user upon completion. . Unlike more traditional batch queueing systems, HTCondor can also effectively harness wasted CPU power from otherwise idle desktop workstations. HTCondor does not require a shared file system across machines - if no shared file system is available, HTCondor can transfer the job's data files on behalf of the user. . This package provides headers and libraries for development of HTCondor add-ons. Package: htcondor-doc Section: doc Architecture: all Depends: ${misc:Depends} Conflicts: condor-doc Replaces: condor-doc Description: distributed workload management system - documentation Like other full-featured batch systems, HTCondor provides a job queueing mechanism, scheduling policy, priority scheme, resource monitoring, and resource management. Users submit their serial or parallel jobs to HTCondor; HTCondor places them into a queue. It chooses when and where to run the jobs based upon a policy, carefully monitors their progress, and ultimately informs the user upon completion. . Unlike more traditional batch queueing systems, HTCondor can also effectively harness wasted CPU power from otherwise idle desktop workstations. HTCondor does not require a shared file system across machines - if no shared file system is available, HTCondor can transfer the job's data files on behalf of the user. . This package provides HTCondor's documentation in HTML and PDF format, as well as configuration and other examples. Package: htcondor-dbg Section: debug Architecture: any Depends: ${misc:Depends}, htcondor (= ${binary:Version}) Conflicts: condor-dbg Replaces: condor-dbg Description: distributed workload management system - debugging symbols Like other full-featured batch systems, HTCondor provides a job queueing mechanism, scheduling policy, priority scheme, resource monitoring, and resource management. Users submit their serial or parallel jobs to HTCondor; HTCondor places them into a queue. It chooses when and where to run the jobs based upon a policy, carefully monitors their progress, and ultimately informs the user upon completion. . Unlike more traditional batch queueing systems, HTCondor can also effectively harness wasted CPU power from otherwise idle desktop workstations. HTCondor does not require a shared file system across machines - if no shared file system is available, HTCondor can transfer the job's data files on behalf of the user. . This package provides the debugging symbols for HTCondor. Package: libclassad-dev Replaces: libclassad0-dev Conflicts: libclassad0-dev Section: libdevel Architecture: any Depends: libclassad5 (= ${binary:Version}), ${misc:Depends} Description: HTCondor classads expression language - development library Classified Advertisements (classads) are the lingua franca of HTCondor, used for describing jobs, workstations, and other resources. There is a protocol for evaluating whether two classads match, which is used by the HTCondor central manager to determine the compatibility of jobs, and workstations where they may be run. . This package provides the static library and header files. Package: libclassad5 Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: HTCondor classads expression language - runtime library Classified Advertisements (classads) are the lingua franca of HTCondor, used for describing jobs, workstations, and other resources. There is a protocol for evaluating whether two classads match, which is used by the HTCondor central manager to determine the compatibility of jobs, and workstations where they may be run. . This package provides the runtime library. debian/source/0000775000000000000000000000000012260003121010453 5ustar debian/source/format0000664000000000000000000000001412260003121011661 0ustar 3.0 (quilt) debian/htcondor.prerm0000775000000000000000000000132412260003121012045 0ustar #!/bin/sh # prerm script for condor set -e case "$1" in remove) # init script fails of RUN is not there (i.e. broken install) if [ -x "/etc/init.d/condor" ]; then if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then invoke-rc.d condor stop || exit $? else /etc/init.d/condor stop || exit $? fi fi ;; upgrade) # do nothing as condor will keep working until the upgrade is # finished, and could restart itself automatically when it # detected a change in its binaries (confirmed by upstream) ;; *) echo "prerm called with unknown argument \`$1'" >&2 exit 1 ;; esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/TODO0000664000000000000000000000056212260521040007653 0ustar * debconf templates should mention format things: comma-separated list, ... * debconf: think about switching away from combinatorial setup to a few hand-polished config scenarios * Allow for configurable UID/GID * Security: ALLOW_ADVERTISE_SCHEDD * Have a test suite that can run at package build time * Think about an rcondor package (see src/condor_contrib/rcondor) debian/compat0000664000000000000000000000000212260076063010370 0ustar 9 debian/rules0000775000000000000000000001510012261324565010253 0ustar #!/usr/bin/make -f srcpkg = $(shell LC_ALL=C dpkg-parsechangelog | grep '^Source:' | cut -d ' ' -f 2,2) debver = $(shell LC_ALL=C dpkg-parsechangelog | grep '^Version:' | cut -d ' ' -f 2,2 ) upstreamver = $(shell echo $(debver) | cut -d '-' -f 1,1 ) # this figures out the last merge point from 'master' into the Debian branch and # then described this commit relative to the last release tag (V...) # If this should make any sense the local upstream branch must track upstream's # master or whatever other source branch. gitver = $(shell [ -x /usr/bin/git ] && git describe --tags --match 'V[0-9]_[0-9]_[0-9]' $$(git merge-base -a HEAD upstream) | sed -e 's/^V//' -e 's/_/./g' -e 's/-/+git/')~dfsg.1 # one ring to rule them all ... %: dh $@ --with autotools_dev --with python2 override_dh_auto_configure: dh_auto_configure -- \ -DCONDOR_PACKAGE_BUILD:BOOL=ON \ -DPROPER:BOOL=ON \ -DCLIPPED:BOOL=ON \ -DUW_BUILD:BOOL=OFF \ -D_DEBUG:BOOL=TRUE \ -DBUILDID:STRING="Debian-$(debver)"\ -DFORCE_PRE_RELEASE:STRING="Debian-$(debver)"\ -DCMAKE_INSTALL_RPATH:STRING="/usr/lib/condor" \ -DHAVE_EXT_GSOAP:BOOL=ON \ -DHAVE_EXT_CURL:BOOL=ON \ -DHAVE_EXT_OPENSSL:BOOL=ON \ -DHAVE_EXT_BOOST:BOOL=ON \ -DHAVE_EXT_GLOBUS:BOOL=ON \ -DHAVE_EXT_KRB5:BOOL=ON \ -DHAVE_EXT_LIBVIRT:BOOL=ON \ -DHAVE_EXT_LIBXML2:BOOL=ON \ -DHAVE_EXT_OPENSSL:BOOL=ON \ -DHAVE_EXT_PCRE:BOOL=ON \ -DWITH_LIBCGROUP:BOOL=OFF \ -DWANT_CONTRIB:BOOL=OFF \ -DWITH_BOSCO:BOOL=OFF \ -DWITH_CAMPUSFACTORY:BOOL=OFF # upstream says: tests aren't reliable enough yet #-DBUILD_TESTS:BOOL=OFF \ #-DHAVE_EXT_POSTGRESQL:BOOL=OFF \ #-DEXTERNAL_INCLUDES:STRING="/usr/include/postgresql" override_dh_auto_build: doc/build dh_auto_build -- VERBOSE=1 # post-fixing things that have to be done due to changes introduced by # repackaging # 1. rebuild java stuff #cd src/condor_starter.V6.1 && javac *.java #cp src/condor_chirp/*.java src/condor_chirp/chirp/java/client/ #$(MAKE) -C src/condor_chirp/chirp/java/client/ #cp src/condor_chirp/chirp/java/client/Chirp.jar src/condor_chirp/ override_dh_python2: dh_python2 $@ --no-guessing-versions override_dh_shlibdeps: dh_shlibdeps -l$(CURDIR)/debian/tmp/usr/lib/ doc/build: mkdir -p $@ $(MAKE) -C doc release-html MANDIR=$(CURDIR)/$@/html TARGETDIR=$(CURDIR)/$@/html # remove archives -rm $@/html/*.Z $@/html/*.gz $(MAKE) -C doc/makeman makeman for html in $@/html/condor_*.html; do \ doc/makeman/makeman -v -i $$html -s 1; \ done mkdir -p $@/man # sanitize and copy for man in $@/html/condor_*.1; do \ sed -r -e 's,$@/html/,,' -e "s/1 date$$/1 \"$$(date +'%B %Y')\"/" \ -e '/\.SH Name/{ n; n; s/\W/ \\- /; }' -e 's/ (\.[A-Z])/\1/' \ -e "s/($$(echo $$(basename $$man) | cut -d . -f1,1))/\1 /g" \ -e '/\\$$/{ n; s/\.br//; }' -e 's,/SPAN>, ,g' \ -e '/[ ]*\.P/{ n; s/^[ ]*\.P//; }' \ -e 's/^[ ]*\././' \ -e 's/^\s//' < $$man > $@/man/$$(basename $$man) ; \ done rm $@/html/condor_*.1 find $@/html -name '*.html.bak' -delete override_dh_auto_install: dh_auto_install # things we do not need in Debian rm debian/tmp/usr/sbin/condor_install* # remove compat symlinks rm debian/tmp/usr/sbin/condor_vm_vmware.pl rm debian/tmp/usr/sbin/grid_monitor.sh override_dh_install: dh_install # fix permissions chmod -x debian/htcondor/etc/default/condor chmod -x debian/htcondor/usr/lib/condor/libexec/interactive.sub # remove RPATH from public lib chrpath -d debian/libclassad*/usr/lib/libclassad.so.*.* # kill the default local config -- debconf will handle that rm debian/htcondor/etc/condor/condor_config.local # modify condor config file with default Debian config sed -i \ -e 's,^[#]*\(REQUIRE_LOCAL_CONFIG_FILE\s*=\).*,\1 FALSE,' \ -e 's,^\(CONDOR_ADMIN\s*=\).*,\1 root@localhost,' \ -e 's,^\(MAIL\s*=\).*,\1 /usr/bin/mail,' \ -e 's,^\(COLLECTOR_NAME\s*=\).*,\1 Debian Condor Pool - $$(CONDOR_HOST),' \ -e 's,^\(SPOOL\s*=\).*,\1 \$$(LOCAL_DIR)/spool/condor,' \ -e '/^EXECUTE\s*=/a\LOCAL_UNIV_EXECUTE\t\t= \$$(LOCAL_DIR)/spool/condor/local_univ_execute' \ -e 's/^\(DAEMON_LIST\s*=\).*/\1 MASTER, STARTD, SCHEDD, COLLECTOR, NEGOTIATOR/' \ -e 's,^[#]*\(CONDOR_DEVELOPERS\s*=\).*,\1 NONE,' \ -e 's,^[#]*\(CONDOR_DEVELOPERS_COLLECTOR\s*=\).*,\1 NONE,' \ -e 's,^\(CRED_STORE_DIR\s*=\).*,\1 \$$(LOCAL_DIR)/lib/condor/cred_dir,' \ -e 's,^[#]*\(SSH_TO_JOB_SSHD_CONFIG_TEMPLATE\s*=\).*,\1 /etc/condor/condor_ssh_to_job_sshd_config_template,' \ -e 's,^\(JAVA_BENCHMARK_TIME\s*=\).*,\1 0,' \ debian/htcondor/etc/condor/condor_config override_dh_auto_clean: dh_auto_clean # clean up our own mess -find $(CURDIR) -name '*.class' -delete -o -name '*.jar' -delete -rm src/condor_chirp/chirp/java/client/*.java # clean leftovers of upstream clean run -rm src/condor_tests/list* -rm src/condor_examples/condor.boot.debian \ src/condor_examples/condor_config.patched -rm src/condor_tests/Condor.pm src/condor_tests/CondorPersonal.pm \ src/condor_tests/CondorTest.pm src/condor_tests/CondorUtils.pm \ src/condor_tests/batch_test.pl -rm src/condor_utils/param_info.c # docs $(MAKE) -C doc reallyclean -rm -f doc/condor-*-Manual.tar -rm -rf doc/just-man-pages -rm -rf doc/build -rm -f doc/symbol.tex doc/figuresizing.tex doc/fontsize.tex override_dh_clean: dh_clean debconf-updatepo # PDF come in dedicated doc package -- no compression override_dh_compress: dh_compress -X.pdf override_dh_installinit: dh_installinit -phtcondor --onlyscripts --noscripts override_dh_strip: dh_strip --dbg-package=htcondor-dbg override_dh_auto_test: dfsg-source-tree: -quilt pop -a @echo "Testing for uncommited changes" @git diff --quiet HEAD # remove windows binaries that come without sources rm -rf msconfig # remove embedded tarballs with 3rd-party software that is # currently not used in any way find . -name '*.tar.gz' -delete find . -name '*.tgz' -delete # remove all java binaries # and other stuff that will be deleted during clean runs anyway find $(CURDIR) -regextype posix-egrep -regex '.*(\.(jar|class|pdf)|TAGS)' -print0 \ | xargs -0 -i git rm -f --ignore-unmatch -- {} || true # commit any cleanup results @if ! git diff --quiet HEAD; then \ git commit -e -a -m "Remove unwanted (e.g. non-DFSG-compliant) content"; \ fi # make orig tarball from repository content get-orig-source: dfsg-source-tree # orig tarball, turn directory into something nicer git archive --format=tar --prefix=$(srcpkg)-$(gitver)/ HEAD | \ gzip -9 > $(srcpkg)_$(gitver).orig.tar.gz # check that DSC patches still apply maint-check-dsc-patches: @for p in debian/patches/*-dsc-patch; \ do echo "check $$p"; \ patch -p1 --dry-run < $$p || exit 1 ; \ done debian/htcondor.install0000664000000000000000000000053012260504707012401 0ustar debian/tmp/etc/* etc/ debian/tmp/usr/lib/condor/condor_ssh* etc/condor/ debian/tmp/usr/lib/condor/libexec usr/lib/condor/ debian/tmp/usr/lib/condor/*.so usr/lib/condor/ debian/tmp/usr/lib/python* usr/lib/ debian/tmp/usr/bin/* usr/bin/ debian/tmp/usr/sbin/* usr/sbin/ debian/tmp/usr/src/* usr/src/condor/ debian/dmtcp/shim_dmtcp usr/lib/condor/