# SOME DESCRIPTIVE TITLE.
# Copyright (C)
# This file is distributed under the same license as the Apache CloudStack Administration Documentation package.
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Apache CloudStack Administration RTD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-06-30 12:52+0200\n"
"PO-Revision-Date: 2014-06-30 12:04+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/apache-cloudstack-administration-rtd/language/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0;\n"

# 4b4ac9e9d63047e88707cfbcf936a425
#: ../../projects.rst:18
msgid "Using Projects to Organize Users and Resources"
msgstr "使用项目来管理用户和资源。"

# dd53e71c97984e29944fd5f92845fc70
#: ../../projects.rst:21
msgid "Overview of Projects"
msgstr "项目概览"

# 9ad708c803064abcbaa0ba5c9d5efe55
#: ../../projects.rst:23
msgid ""
"Projects are used to organize people and resources. CloudStack users within "
"a single domain can group themselves into project teams so they can "
"collaborate and share virtual resources such as VMs, snapshots, templates, "
"data disks, and IP addresses. CloudStack tracks resource usage per project "
"as well as per user, so the usage can be billed to either a user account or "
"a project. For example, a private cloud within a software company might have"
" all members of the QA department assigned to one project, so the company "
"can track the resources used in testing while the project members can more "
"easily isolate their efforts from other users of the same cloud"
msgstr "项目用来管理用户和资源。处于单独域中的CloudStack用户可以自组，他们可以集中并分享虚拟资源，如VM、快照、模板、磁盘、IP地址等。CloudStack可以像跟踪每个用户一样跟踪每个项目的资源，所以可以按照用户或者项目对资源使用收费。例如，一个软件公司的私有云可能将所有QA部门的员工分配到一个项目，当需要在测试中区分同一云中该项目组员工的贡献时，测试中的资源跟踪将变的容易。"

# df157ec524304800a9ced5d428bd234c
#: ../../projects.rst:34
msgid ""
"You can configure CloudStack to allow any user to create a new project, or "
"you can restrict that ability to just CloudStack administrators. Once you "
"have created a project, you become that project’s administrator, and you can"
" add others within your domain to the project. CloudStack can be set up "
"either so that you can add people directly to a project, or so that you have"
" to send an invitation which the recipient must accept. Project members can "
"view and manage all virtual resources created by anyone in the project (for "
"example, share VMs). A user can be a member of any number of projects and "
"can switch views in the CloudStack UI to show only project-related "
"information, such as project VMs, fellow project members, project-related "
"alerts, and so on."
msgstr "你可以配置 CloudStack允许任何用户创建项目，或者你也可以只允许CloudStack管理员进行此项操作。一旦你创建了项目，你就成为项目管理员，你可以将域中的其他用户加入到项目。CloudStack可以设置成将用户直接加入项目或者向接受者发送邀请。项目组成员可以浏览和管理项目中的所有虚拟资源（例如，共享VM）。一个用户可以属于任何项目组，并可在CloudStack界面中切换只与项目相关的信息，如项目VM，项目成员，项目相关警告等。"

# d29f7ae31802463281f05dac9610d8d2
#: ../../projects.rst:46
msgid ""
"The project administrator can pass on the role to another project member. "
"The project administrator can also add more members, remove members from the"
" project, set new resource limits (as long as they are below the global "
"defaults set by the CloudStack administrator), and delete the project. When "
"the administrator removes a member from the project, resources created by "
"that user, such as VM instances, remain with the project. This brings us to "
"the subject of resource ownership and which resources can be used by a "
"project."
msgstr "项目管理员可以将角色传递给项目另外的成员。项目管理员也可以添加、删除项目成员，设置新的资源限制（只要在CloudStack管理员默认的全局设置范围之内），删除项目。当管理员将成员移出项目，那个成员所创建的资源，如VM实例，仍旧在项目中。这将我们带到了资源归属以及项目可用资源的课题下."

# dde002b5830f493b94778605a4014583
#: ../../projects.rst:55
msgid ""
"Resources created within a project are owned by the project, not by any "
"particular CloudStack account, and they can be used only within the project."
" A user who belongs to one or more projects can still create resources "
"outside of those projects, and those resources belong to the user’s account;"
" they will not be counted against the project’s usage or resource limits. "
"You can create project-level networks to isolate traffic within the project "
"and provide network services such as port forwarding, load balancing, VPN, "
"and static NAT. A project can also make use of certain types of resources "
"from outside the project, if those resources are shared. For example, a "
"shared network or public template is available to any project in the domain."
" A project can get access to a private template if the template’s owner will"
" grant permission. A project can use any service offering or disk offering "
"available in its domain; however, you can not create private service and "
"disk offerings at the project level.."
msgstr "项目内创建的资源为项目所有，不属于任何特殊的CloudStack帐户，仅能在项目内使用。属于一个或多个项目的用户扔可在这些项目之外创建资源，这些资源属于这个用户帐户；与项目使用和资源限制并不冲突。你可以在项目内创建项目级的网络来隔离流量，并提供网络服务，如端口转发，负载均衡，VPN，静态NAT。项目也可以在项目之外使用特定资源，只要这些资源是共享的。例如，域中的共享网络，公用模板对任何项目都是可用的。模板所有者如果赋予权限，项目也可以使用私有模板。项目可以使用域中设置的服务方案或磁盘方案；然后，你无法在项目层级创建私有服务和磁盘方案。"

# 847217dcf84349fc9c5c719bfde3ec7f
#: ../../projects.rst:73
msgid "Configuring Projects"
msgstr "配置项目"

# 8a115b7683d3463087791eaed5a40d85
#: ../../projects.rst:75
msgid ""
"Before CloudStack users start using projects, the CloudStack administrator "
"must set up various systems to support them, including membership "
"invitations, limits on project resources, and controls on who can create "
"projects."
msgstr "在CloudStack用户使用项目前，CloudStack管理员必须设置不同的系统以支持它们，包括成员身份邀请，项目资源的限制，以及对谁可以创建项目的控制。"

# 327e0569d0c44de5b93b9f7e446920cc
#: ../../projects.rst:82
msgid "Setting Up Invitations"
msgstr "设置邀请"

# 3e242eb556ee478cb2f58ad9f6d5ce85
#: ../../projects.rst:84
msgid ""
"CloudStack can be set up either so that project administrators can add "
"people directly to a project, or so that it is necessary to send an "
"invitation which the recipient must accept. The invitation can be sent by "
"email or through the user’s CloudStack account. If you want administrators "
"to use invitations to add members to projects, turn on and set up the "
"invitations feature in CloudStack."
msgstr "CloudStack可以设置成项目管理员直接添加用户或者向接受者发送邀请。邀请可以通过邮件或者用户的CloudStack帐户。如果你希望管理员使用邀请来添加项目成员，那么打开并设置CloudStack中的邀请属性。"

# 8e48e6338f444e73898549bf0932c731
# 2309d4b19c6d404181b591f4f6d205fc
# 2e84d8cc479e4cf0af43cd20e4fa190b
# ccfea269215f463d9fe35998c9494c53
# 8c0130530bbe4c28b429436a6d8e61c9
#: ../../projects.rst:91 ../../projects.rst:158 ../../projects.rst:177
#: ../../projects.rst:214 ../../projects.rst:242
msgid "Log in as administrator to the CloudStack UI."
msgstr "使用管理员登录到CloudStack管理界面。"

# e539c47bc6254e2c8a1382c03574a8c0
# c7df097745ac41e1ab3b12f5ede84582
# 989f33da3208451a8bcb145c25a7d1c9
#: ../../projects.rst:93 ../../projects.rst:179 ../../projects.rst:216
msgid "In the left navigation, click Global Settings."
msgstr "在左侧导航栏，点击 全局设置"

# 37e43d6f62be443998cb185f24333cdf
#: ../../projects.rst:95
msgid ""
"In the search box, type project and click the search button. |Searches "
"projects|"
msgstr "在搜索栏中，输入项目，点击搜索按钮。 |搜索项目|"

# e42abfd82e134939b6d5b7d2fed2f4cc
#: ../../projects.rst:98
msgid ""
"In the search results, you can see a few other parameters you need to set to"
" control how invitations behave. The table below shows global configuration "
"parameters related to project invitations. Click the edit button to set each"
" parameter."
msgstr "在搜索结果中，你还需要设置一些其他的参数来控制邀请行为。下表所示的是全局配置参数中与项目邀请相关的部分，点击编辑按钮设置每个参数。"

# 9a803ec0fbce49a1bfcbdcb1961d9fe9
#: ../../projects.rst:104
msgid "Configuration Parameters"
msgstr "配置参数"

# 2eb9f6fe8d7148b99a39f5ba5c0b8acf
#: ../../projects.rst:104
msgid "Description"
msgstr "描述"

# 8f015394c22643a89189371d0708f414
#: ../../projects.rst:106
msgid "project.invite.required"
msgstr "project.invite.required"

# 3f3e2860eff34ffaad4d84f57b53f46d
#: ../../projects.rst:106
msgid "Set to true to turn on the invitations feature."
msgstr "将值设置为 true以打开邀请特性。"

# c3dd124564eb4178a6f272ed89393757
#: ../../projects.rst:108
msgid "project.email.sender"
msgstr "project.email.sender"

# 1c83afe8caa5414181a01e7c8e31627f
#: ../../projects.rst:108
msgid "The email address to show in the From field of invitation emails."
msgstr "邀请邮件中填入发送区域的邮件地址。"

# 31cb407a37cc40c79b6cdb1c8171c153
#: ../../projects.rst:110
msgid "project.invite.timeout"
msgstr "project.invite.timeout"

# 1ff23ba5f3174049a1f067acd434fa47
#: ../../projects.rst:110
msgid "Amount of time to allow for a new member to respond to the invitation."
msgstr "新成员对于邀请的允许响应时间。"

# 9daf130db7394b60aae7266b51a04ff6
#: ../../projects.rst:112
msgid "project.smtp.host"
msgstr "project.smtp.host"

# dd464c374e9049c4995f6ea455014f6a
#: ../../projects.rst:112
msgid "Name of the host that acts as an email server to handle invitations."
msgstr "作为处理邀请的邮件服务器的主机名。"

# 89967c84b58c4a69af3b1718861da2b1
#: ../../projects.rst:114
msgid "project.smtp.password"
msgstr "project.smtp.password"

# 1815f51cddd147efb8c9cd0bf2fb66dd
#: ../../projects.rst:114
msgid ""
"(Optional) Password required by the SMTP server. You must also set "
"project.smtp.username and set project.smtp.useAuth to true."
msgstr "(可选)SMTP服务器要求的密码。你必须将project.smtp.username和project.smtp.useAuth也设置为true。"

# bb3f4cd97d8c4c5881aaded19029f405
#: ../../projects.rst:116
msgid "project.smtp.port"
msgstr "project.smtp.port"

# 30ad11730ae14fc5a8a26e34a244704d
#: ../../projects.rst:116
msgid "SMTP server’s listening port."
msgstr "SMTP服务器的监听端口。"

# 1e41abde08fb4385ad49ccdd91e5d856
#: ../../projects.rst:118
msgid "project.smtp.useAuth"
msgstr "project.smtp.useAuth"

# 41fc2bf9b98d4dd7af52e18e21334a4a
#: ../../projects.rst:118
msgid "Set to true if the SMTP server requires a username and password."
msgstr "如果SMTP服务器需要用户名和密码，则设置为true"

# d22498c945d14f65bd0892d1a3bbb4ab
#: ../../projects.rst:120
msgid "project.smtp.username"
msgstr "project.smtp.username"

# a025e0ccc7b641c8b1c1c18d0884a7e8
#: ../../projects.rst:120
msgid ""
"(Optional) User name required by the SMTP server for authentication. You "
"must also set project.smtp.password and set project.smtp.useAuth to true.."
msgstr "(可选) 用于SMTPU认证的用户名。必须将project.smtp.password 和project.smtp.useAuth也设置为true。"

# 5a399b5498814feb8d1d90ac249c0f06
#: ../../projects.rst:123
msgid "Restart the Management Server:"
msgstr "重启管理服务器："

# cc25b73903da4b3eb00ef5dca983a9b6
#: ../../projects.rst:130
msgid "Setting Resource Limits for Projects"
msgstr "设置项目的资源限制"

# 4554a70f1086483a8feea5f0c15eafd0
#: ../../projects.rst:132
msgid ""
"The CloudStack administrator can set global default limits to control the "
"amount of resources that can be owned by each project in the cloud. This "
"serves to prevent uncontrolled usage of resources such as snapshots, IP "
"addresses, and virtual machine instances. Domain administrators can override"
" these resource limits for individual projects with their domains, as long "
"as the new limits are below the global defaults set by the CloudStack root "
"administrator. The root administrator can also set lower resource limits for"
" any project in the cloud"
msgstr "CloudStack管理员可以设置全局默认限制来控制云中每个项目可拥有的资源量。该服务用来限制不可控的资源使用，如快照，IP地址，虚拟机实例。域管理员在域中可以覆盖个人项目中的这些资源限制，只要这些限制在CloudStack根管理员的全局默认限制范围内。CloudStack根管理员可以为云中的任何项目设置更低的资源限制。"

# 87c2e78e1e344c2fa0e550443ff641e3
#: ../../projects.rst:143
msgid "Setting Per-Project Resource Limits"
msgstr "按项目设置资源限制"

# 7e81041e8a9147bd84fde49f3f569465
#: ../../projects.rst:145
msgid ""
"The CloudStack root administrator or the domain administrator of the domain "
"where the project resides can set new resource limits for an individual "
"project. The project owner can set resource limits only if the owner is also"
" a domain or root administrator."
msgstr " CloudStack系统管理员和项目所在域的域管理员可以设置单个项目的资源限制。项目所有者只有在其同时为域或系统管理员的情况下才能设置资源限制。"

# 47029644eddd41d1b4647b5332d9c061
#: ../../projects.rst:150
msgid ""
"The new limits must be below the global default limits set by the CloudStack"
" administrator (as described in `“Setting Resource Limits for Projects” "
"<#setting-resource-limits-for-projects>`_). If the project already owns more"
" of a given type of resource than the new maximum, the resources are not "
"affected; however, the project can not add any new resources of that type "
"until the total drops below the new limit."
msgstr "新限制值必须小于 CloudStack系统管理员设置的全局限制值（参见`“设置项目的资源限制” <#setting-resource-limits-for-projects>`_）。如果项目中的某种资源数量已经超过了新限制值，现有资源不受影响。然而，该项目将不能再添加该类型的新资源，直到资源数低于新限制值。"

# f22a47ab0c5948e6b1e37d8a2ea696c9
# e197ae8d631c487694852e4f6de2552f
# befd6ea180404a3bb8cc85b535ec7a84
# c2260b29d8b94395b2be966c4a99333d
# 322b7293e93f44dcb5b9d2b201132963
# 9f3d412110854b50a846dbdbcf15d67a
#: ../../projects.rst:160 ../../projects.rst:244 ../../projects.rst:284
#: ../../projects.rst:328 ../../projects.rst:350 ../../projects.rst:380
msgid "In the left navigation, click Projects."
msgstr "在左侧导航栏点击项目。"

# af4be7e8b89f4da08c1391967263e362
# dc1fc36ced6d4c48984c0a599e2893ba
# 79ab804df9234bd0af6b4f89d1b545b5
#: ../../projects.rst:164 ../../projects.rst:288 ../../projects.rst:332
msgid "Click the name of the project you want to work with."
msgstr "点击您要操作的项目名称。"

# 5e274b4f574149edaa1899709a04a1d3
#: ../../projects.rst:166
msgid ""
"Click the Resources tab. This tab lists the current maximum amount that the "
"project is allowed to own for each type of resource."
msgstr "点击资源页。该页列出了项目当前可拥有的各类资源的最大数量。"

# b0861fc478514256ad0ca41e6184ba3a
#: ../../projects.rst:169
msgid "Type new values for one or more resources."
msgstr "为一种或几种资源输入新值。"

# 363f4b7e52b04d4ba5bf081c3c51dc8a
#: ../../projects.rst:171
msgid "Click Apply."
msgstr "点击应用"

# 7263280c84454f05be8680c02efbd4c3
#: ../../projects.rst:175
msgid "Setting the Global Project Resource Limits"
msgstr "设置全局项目资源限制"

# 81a908897f4d4aacb979288d14e8f4ad
#: ../../projects.rst:181
msgid "In the search box, type max.projects and click the search button."
msgstr "在搜索栏输入“max.projects”，点击搜索按钮。"

# 7a132176784548a1bb80edb054b486b9
#: ../../projects.rst:183
msgid ""
"In the search results, you will see the parameters you can use to set per-"
"project maximum resource amounts that apply to all projects in the cloud. No"
" project can have more resources, but an individual project can have lower "
"limits. Click the edit button to set each parameter. |Edits parameters|"
msgstr "在搜索结果中，你可以看到应用于云中所有项目的参数，你可以使用它们设置每个项目的最大资源量。没有项目能拥有更多资源，但个人项目能拥有更低的限制。点击编辑按钮设置每个参数。|编辑参数|"

# 241b29e357a047dc890813c8021b8bfa
#: ../../projects.rst:190
msgid "max.project.public.ips"
msgstr "max.project.public.ips"

# ca118c2a5e6d41b0ae029c8780d99883
#: ../../projects.rst:190
msgid ""
"Maximum number of public IP addresses that can be owned by any project in "
"the cloud. See About Public IP Addresses."
msgstr "项目拥有的公共IP最大值，参看公共IP地址。"

# 2c1e0ade7edc46ff97ef948312221adb
#: ../../projects.rst:192
msgid "max.project.snapshots"
msgstr "max.project.snapshots"

# a809d74e8e264f2f8544e96dacf33d1a
#: ../../projects.rst:192
msgid ""
"Maximum number of snapshots that can be owned by any project in the cloud. "
"See Working with Snapshots."
msgstr "项目可拥有的最大快照数。参看工作相关快照。"

# 977134a911f844f98a39206991e01c12
#: ../../projects.rst:194
msgid "max.project.templates"
msgstr "max.project.templates"

# 44dcf66c930a42869b7601e0250466ac
#: ../../projects.rst:194
msgid ""
"Maximum number of templates that can be owned by any project in the cloud. "
"See Working with Templates."
msgstr "项目可拥有的最大模板数。参看工作相关模板。"

# 9007c476909543678660480c9c5cca8e
#: ../../projects.rst:196
msgid "max.project.uservms"
msgstr "max.project.uservms"

# fa7756a39a51499aa79542f6a9aebd0a
#: ../../projects.rst:196
msgid ""
"Maximum number of guest virtual machines that can be owned by any project in"
" the cloud. See Working With Virtual Machines."
msgstr "项目中的虚拟客户机最大数目。参看工作相关虚拟机。"

# 4bd44963b3c84bd09612d0c16cb2b21f
#: ../../projects.rst:198
msgid "max.project.volumes"
msgstr "max.project.volumes"

# b684120b36d54144b7d6bfd1b9cb26fd
#: ../../projects.rst:198
msgid ""
"Maximum number of data volumes that can be owned by any project in the "
"cloud. See Working with Volumes."
msgstr "项目中所拥有的最大数据卷数，参看工作相关卷。"

# 0a08e573ccff40ed964877c1e0a25422
# 30bf816d7d164ebc9a3527bb06dcd0f5
#: ../../projects.rst:202 ../../projects.rst:228
msgid "Restart the Management Server."
msgstr "重启管理服务器。"

# 7a9e7b11d9204da7b5e4ae5b0cad6e15
#: ../../projects.rst:209
msgid "Setting Project Creator Permissions"
msgstr "设置项目创建许可"

# c9583a67341f459c94f3aa76485a5fd8
#: ../../projects.rst:211
msgid ""
"You can configure CloudStack to allow any user to create a new project, or "
"you can restrict that ability to just CloudStack administrators."
msgstr "你可以配置 CloudStack允许所有用户创建新项目，或限制只有 CloudStack管理员具备此项能力。"

# 0c5d1047bef445548c0c40109d391eca
#: ../../projects.rst:218
msgid "In the search box, type allow.user.create.projects."
msgstr "在搜索框中，输入allow.user.create.projects。"

# 44b11d9aac27438eb4bfa70d31759c86
#: ../../projects.rst:220
msgid "Click the edit button to set the parameter. |Edits parameters|"
msgstr "点击编辑按钮设置参数。|编辑参数|"

# fb277fa119e0496885f889a3ae48d1e7
#: ../../projects.rst:222
msgid "``allow.user.create.projects``"
msgstr "``allow.user.create.projects``"

# 9cdac884b4f1482599019f9178759604
#: ../../projects.rst:224
msgid ""
"Set to true to allow end users to create projects. Set to false if you want "
"only the CloudStack root administrator and domain administrators to create "
"projects."
msgstr "设置为true以允许端用户创建项目。设置为false如果你仅希望CloudStack根管理员和域管理员创建项目。"

# c36ba31002c74ec98d2dcdec7bd9374e
#: ../../projects.rst:236
msgid "Creating a New Project"
msgstr "创建新项目"

# 6b62d8460a034f809371e1886bd34e80
#: ../../projects.rst:238
msgid ""
"CloudStack administrators and domain administrators can create projects. If "
"the global configuration parameter allow.user.create.projects is set to "
"true, end users can also create projects."
msgstr "CloudStack系统管理员和域管理员能创建项目。如果全局变量allow.user.create.projects设置为true，终端用户也能创建项目。"

# 4a302cfc6cb34ba5baf6615abcae28ec
#: ../../projects.rst:246
msgid "In Select view, click Projects."
msgstr "在选择视图点击项目。"

# 520e75eebfb24c338a07edbd8119b8b8
#: ../../projects.rst:248
msgid "Click New Project."
msgstr "点击新建项目。"

# 42a42b0b1bb24125b530a8fb28a3b31a
#: ../../projects.rst:250
msgid ""
"Give the project a name and description for display to users, then click "
"Create Project."
msgstr "为项目命名并添加描述，然后点击创建项目。"

# 2c2486f0447d4f138b5e1c0e8ceace41
#: ../../projects.rst:253
msgid ""
"A screen appears where you can immediately add more members to the project. "
"This is optional. Click Next when you are ready to move on."
msgstr "会出现一个界面，你可以很快的添加更多成员到项目中，此步可选。当你准备好继续，点击下一步。"

# 2bc3c862668e44e78c5ec777dc974839
#: ../../projects.rst:256
msgid "Click Save."
msgstr "点击保存。"

# 986f0cb8853a42738eabaab830e43267
#: ../../projects.rst:260
msgid "Adding Members to a Project"
msgstr "添加成员到一个项目"

# 50647c0e69974fbba211aabef3bcda09
#: ../../projects.rst:262
msgid ""
"New members can be added to a project by the project’s administrator, the "
"domain administrator of the domain where the project resides or any parent "
"domain, or the CloudStack root administrator. There are two ways to add "
"members in CloudStack, but only one way is enabled at a time:"
msgstr "项目管理员、项目所属域的域及其父域的管理员，CloudStack根管理员均可以添加新成员。CloudStack有两种方法可以添加成员，但每次只能使能一种："

# ef81123f6c0e4fc3b1c2521f4324fc93
#: ../../projects.rst:267
msgid ""
"If invitations have been enabled, you can send invitations to new members."
msgstr "如果邀请已被使能，你可以向新成员发送邀请。"

# f7125c407042411f8a4f35feff955784
#: ../../projects.rst:270
msgid ""
"If invitations are not enabled, you can add members directly through the UI."
msgstr "如果邀请未被使能，你可以直接通过界面添加成员。"

# a4433f30587f4374807fa615b7d326cb
#: ../../projects.rst:275
msgid "Sending Project Membership Invitations"
msgstr "发送项目成员关系邀请"

# 4417ea897e4e418caf7f9050b019b36e
#: ../../projects.rst:277
msgid ""
"Use these steps to add a new member to a project if the invitations feature "
"is enabled in the cloud as described in `“Setting Up Invitations” <#setting-"
"up-invitations>`_. If the invitations feature is not turned on, use the "
"procedure in Adding Project Members From the UI."
msgstr "如果邀请特性按照 `“设置邀请” <#设置邀请>`_中描述的方式被打开，使用这些步骤添加项目成员。如果邀请特性没有被打开，使用在界面中添加项目成员的步骤。"

# b67c9d2fbb734979be7d9a0b06c83e07
# 09c3e88bd9394c8ebecf83e40f6dfef9
# 2b65ac18e6e14d988ed9d105965093b3
# 0f9433a953604a24aaa3936b6304ff37
# aaabf61386aa4e90a83121dd76c55ca6
#: ../../projects.rst:282 ../../projects.rst:326 ../../projects.rst:348
#: ../../projects.rst:378 ../../projects.rst:402
msgid "Log in to the CloudStack UI."
msgstr "登录到CloudStack的界面"

# 6848798224324e658909d941615e3c71
#: ../../projects.rst:290
msgid "Click the Invitations tab."
msgstr "点击邀请标签。"

# 49786f4671bb4afbb13144fb5cdb22de
#: ../../projects.rst:292
msgid "In Add by, select one of the following:"
msgstr "在添加中，选择以下其中一个："

# 00420a7de6a943b5bea54e2930363c7b
#: ../../projects.rst:294
msgid ""
"Account – The invitation will appear in the user’s Invitations tab in the "
"Project View. See Using the Project View."
msgstr "帐户 – 邀请将出现在用户项目概览的邀请标签中。参见使用项目概览。"

# 23674aa094d8476181833f1077c82ce9
#: ../../projects.rst:297
msgid ""
"Email – The invitation will be sent to the user’s email address. Each "
"emailed invitation includes a unique code called a token which the recipient"
" will provide back to CloudStack when accepting the invitation. Email "
"invitations will work only if the global parameters related to the SMTP "
"server have been set. See `“Setting Up Invitations” <#setting-up-"
"invitations>`_."
msgstr "邮件 – 邀请将发送到用户的邮箱地址。每个被发送的邀请中包含一个唯一的编码，称为令牌，当接收者接受邀请时需要向 CloudStack提供此令牌。只有当SMTP服务器相关的参数设置完毕后，邮件邀请才能工作。参见`“设置邀请” <#setting-up-invitations>`_。"

# 98b4ad1148b94b9ba8e815a3ce4214a8
#: ../../projects.rst:304
msgid ""
"Type the user name or email address of the new member you want to add, and "
"click Invite. Type the CloudStack user name if you chose Account in the "
"previous step. If you chose Email, type the email address. You can invite "
"only people who have an account in this cloud within the same domain as the "
"project. However, you can send the invitation to any email address."
msgstr "输入想要添加的新用户的用户名称或邮件地址，点击邀请。如果你在前述步骤中选择了帐户那么输入CloudStack用户名。如果你选择了邮箱，那么输入邮箱地址，你只能邀请在云中拥有帐户并在与项目组同一域中的用户。然而，你可以向任何邮箱发送邀请。"

# 9a6d6ea948754921bbc259b87b29ba60
#: ../../projects.rst:311
msgid ""
"To view and manage the invitations you have sent, return to this tab. When "
"an invitation is accepted, the new member will appear in the project’s "
"Accounts tab."
msgstr "为了浏览和管理你所发送的邀请，返回到这个标签。当邀请被接受，新成员将显示在项目帐户标签中。"

# 2cf29d018a2c48a79262e2f02cd30162
#: ../../projects.rst:317
msgid "Adding Project Members From the UI"
msgstr "在界面中添加项目成员"

# fdbf78a90732473689bcedc64864415d
#: ../../projects.rst:319
msgid ""
"The steps below tell how to add a new member to a project if the invitations"
" feature is not enabled in the cloud. If the invitations feature is enabled "
"cloud,as described in `“Setting Up Invitations” <#setting-up-invitations>`_,"
" use the procedure in `“Sending Project Membership Invitations” <#sending-"
"project-membership-invitations>`_."
msgstr "下面的步骤介绍在邀请特性未使能的情况下如何添加项目新成员。如果邀请特性已按照 `“设置邀请” <#设置邀请>`_在云中被使能，那么使用 `“发送项目成员关系邀请” <#发送项目成员关系邀请>`_中的步骤。"

# 069a956c95384174a82d2d0302f3dfd7
#: ../../projects.rst:334
msgid "Click the Accounts tab. The current members of the project are listed."
msgstr "点击项目按钮，项目目前的成员将被列表显示。"

# 7654413243e545579270bc7c8b813727
#: ../../projects.rst:337
msgid ""
"Type the account name of the new member you want to add, and click Add "
"Account. You can add only people who have an account in this cloud and "
"within the same domain as the project."
msgstr "输入你想添加的新成员帐户名称，点击添加帐户。你只能添加云中已有并与项目存在于相同域中的帐户。"

# 774bd03942ea4a3ab9023bb4f72b627b
#: ../../projects.rst:343
msgid "Accepting a Membership Invitation"
msgstr "接受成员关系邀请"

# 462eace7144340bc8bc65c06d8056b5d
#: ../../projects.rst:345
msgid ""
"If you have received an invitation to join a CloudStack project, and you "
"want to accept the invitation, follow these steps:"
msgstr "如果你收到了一个加入CloudStack项目的邀请，并希望接受邀请，请按照以下步骤："

# 0196721635cc470094d28372774afeac
#: ../../projects.rst:352
msgid "In Select View, choose Invitations."
msgstr "在选择概览，选择邀请。"

# f5c8ed37ac54486f8d3f20f9129936a9
#: ../../projects.rst:354
msgid "If you see the invitation listed onscreen, click the Accept button."
msgstr "如果你看到有邀请列表显示，点击接受按钮。"

# f33506966c894c8eb0f91c35c2d506ee
#: ../../projects.rst:356
msgid ""
"Invitations listed on screen were sent to you using your CloudStack account "
"name."
msgstr "屏幕上所显示的邀请是通过你的CloudStack帐户发送的。"

# 67733042a89a4b969d73efc5f2fa6e94
#: ../../projects.rst:359
msgid ""
"If you received an email invitation, click the Enter Token button, and "
"provide the project ID and unique ID code (token) from the email."
msgstr "如果你收到的是邮件邀请，点击输入令牌按钮，提供邮件中的项目ID和唯一的ID编码（令牌）。"

# c33bd4e1071f4d9dab4b1d9a3be3f052
#: ../../projects.rst:364
msgid "Suspending or Deleting a Project"
msgstr "挂起或删除项目"

# b401169d94da465097ecd686cf60ced2
#: ../../projects.rst:366
msgid ""
"When a project is suspended, it retains the resources it owns, but they can "
"no longer be used. No new resources or members can be added to a suspended "
"project."
msgstr "当项目被挂起，它仍保有资源，但这些资源不能被使用。新资源及用户不能被加入到挂起的项目。"

# d08b758fd1754360a7334fa51c6067cf
#: ../../projects.rst:370
msgid ""
"When a project is deleted, its resources are destroyed, and member accounts "
"are removed from the project. The project’s status is shown as Disabled "
"pending final deletion."
msgstr "当项目被删除，资源将被销毁，成员帐户也从项目中移除。项目状态被显示为禁止有待最后删除。"

# 400db324f49c472881028c92fb1082c8
#: ../../projects.rst:374
msgid ""
"A project can be suspended or deleted by the project administrator, the "
"domain administrator of the domain the project belongs to or of its parent "
"domain, or the CloudStack root administrator."
msgstr "项目可以被管理员，项目所属的域及其父域管理员， CloudStack根管理员挂起或删除，"

# d8a96b11443d49109477879ebdf4e6c1
#: ../../projects.rst:384
msgid "Click the name of the project."
msgstr "点击项目名称。"

# 6c5f88a0ad7443cdb4f778b9d3d8da58
#: ../../projects.rst:386
msgid "Click one of the buttons:"
msgstr "点击以下按钮："

# 29804834398d400d9518f86f6aadc9ca
#: ../../projects.rst:388
msgid "To delete, use |Removes a project|"
msgstr "使用 |移除项目|进行删除"

# 41920e56886b48dbb25f86128a21a0c2
#: ../../projects.rst:390
msgid "To suspend, use |Suspends a project|"
msgstr "使用 |挂起项目|进行挂起"

# fe947634ec70449bb7e58adb8700e805
#: ../../projects.rst:394
msgid "Using the Project View"
msgstr "使用项目概览"

# b2b759558262491e98fb0636eae9bd35
#: ../../projects.rst:396
msgid ""
"If you are a member of a project, you can use CloudStack’s project view to "
"see project members, resources consumed, and more. The project view shows "
"only information related to one project. It is a useful way to filter out "
"other information so you can concentrate on a project status and resources."
msgstr "如果你是项目成员，你可以通过CloudStack项目概览查看项目成员，资源消耗等。项目概览仅显示与一个项目相关的信息，从众多信息中筛选出项目状态及资源，这是种有效的方法。"

# b2d475dcc43b441da5592c11733cec95
#: ../../projects.rst:404
msgid "Click Project View."
msgstr "点击项目概览。"

# 697e02ba1d754fab8d93b30aa2692085
#: ../../projects.rst:406
msgid ""
"The project dashboard appears, showing the project’s VMs, volumes, users, "
"events, network settings, and more. From the dashboard, you can:"
msgstr "出现项目控制板，显示项目VM，卷，用户，事件，网络设置等，在控制板中，你可以："

# 0439e9369d664d92be0b7b1fdb1ca88f
#: ../../projects.rst:410
msgid ""
"Click the Accounts tab to view and manage project members. If you are the "
"project administrator, you can add new members, remove members, or change "
"the role of a member from user to admin. Only one member at a time can have "
"the admin role, so if you set another user’s role to admin, your role will "
"change to regular user."
msgstr "点击帐户按钮浏览和管理项目成员。如果你是项目管理员，你可以添加新成员，或者将成员从用户改为管理员。每次只有一名成员能成为管理员，如果你将另外的用户设置为管理员，你将成为普通用户。"

# cfe2dfd46e014224a3ec791add73746c
#: ../../projects.rst:417
msgid ""
"(If invitations are enabled) Click the Invitations tab to view and manage "
"invitations that have been sent to new project members but not yet accepted."
" Pending invitations will remain in this list until the new member accepts, "
"the invitation timeout is reached, or you cancel the invitation."
msgstr "(如果邀请已被使能)点击邀请按钮来浏览或管理已经想新项目成员发出未被接受的邀请。有待确认的邀请将一直在列表中知道被新成员接受，或邀请时间超时，或你取消了邀请。"
