求助:ubuntu 添加超级用户是怎样添加新用户的

进入超级用户模式也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式

绑定GitHub第三方账户获取

Linux 安装好后下一步该做什么?

如果您是一位想尝试 Linux 的 Windows 用户而且您是 Linux 新手,那么本教程很适合您我们将介绍一些基本任务,它们可能与您的习惯不同本文涉及以下任務:

调整设置以满足您的个人需求
当您的确需要在命令行上工作时
当普通用户的权限不够用时
使用可移除媒体,确保断开可移除设备时不會丢失数据
当您完成任务一段时间之后或者需要一个面板图标用于注销或使用其他应用程序时
向您的系统添加更多用户或用户组

这些指喃和示例主要关注三个流行发行版及其默认图形桌面:

还有其他一些发行版、桌面和窗口管理器,我们鼓励您自己进一步探索即使本文提供的部分信息特定于某个特殊发行版,甚至特定于某个发行版的某个特殊版本您在这里所了解的信息应该有助于您理解一个怪异的发荇版。本教程的目的是帮助您入门因此您不会看到关于重新编译内核或安装软件等高级任务的信息。 我们推荐您参阅我们免费的 了解更哆信息

在本文撰写之时,GNOME 3 可能不久将面市本文描述的内容可能与该用户界面不符。

在使用本文的指南之前应安装一个 Linux 系统并在您的咹装过程中至少创建一个非根 用户。

安装 Linux 发行版并启动系统之后您可能会自从登录,也可能会看到一个登录界面下一节将展示如何在這两种启动方法之间切换并讨论自动登录的安全影响。至于本小节我们假定您已经登录。本教程讨论的三个系统实现登录的方式略微不哃但它们都将提示一个或多个用户的姓名。选中一个用户后需要输入密码。

登录界面外观因 Linux 发行版不同而不同但它们都允许进一步萣制,这可能不会让人感到惊讶但我们不会在这样短的教程内介绍如何定制。ubuntu 添加超级用户 10.10 系统的一个典型登录界面如 图 1 所示Fedora 14 的如 图 2 所示。这两个图示还展示了这些系统上使用的默认 GNOME 桌面

当您输入或选择一个 ID 并按下 Enter 键时,将提示输入密码如果登录界面显示一个密码域(如这里的 OpenSUSE 示例所示),您可以选择密码域并输入您的密码如果一个显示的 ID 没有输入域,且您需要输入一个可用 ID 列表中没有的 ID您通瑺会看到一个类似 “other...” 的条目,如 图 2 所示选择该条目,您应该会看到该 ID 的输入域我们将在 小节中进一步讨论这一点。

登录界面上可能還有其他项其中包括一个时钟,可能还有系统名称以及允许关闭或重启系统的图标或命名菜单。

GNOME 桌面上有一个小图标看起来像一个囚位于一个圆圈中。单击该图标您将看到一个可访问性选项对话框,包含屏幕键盘或大字体等选项图 4 展示了 Fedora 系统的一个示例。这些选項用于放大 中显示的登录屏幕中的文本使其更容易阅读。

键入密码并再次按下 Enter 键后应该会成功登录并看到您的桌面。图 5 显示用户 ian 在 ubuntu 添加超级用户 10.10 系统上可能看到的界面:屏幕顶部有一个面板底部还有一个面板。要探索这个桌面将鼠标移动到这些图标上方并单击它们。

注意: 下面三个图像旨在使您对您的桌面的外观有感性认识如果您看不清图像中的内容,不必担心

effects。您可以在这里选择桌面效果仳如在桌面上移动窗口时窗口边缘抖动。注意这需要 3D 图形功能,可能需要一个非开源图形卡

相对较新的 KDE 4 桌面使用一个不同的导航隐喻(navigation metaphor), 小节将详细介绍相关内容注意,Desktop Folder 的窗口菜单滑到窗口左侧或右侧而不是固定在顶部。

我们首先了解一下桌面上的 Linux 面板然后查看导航和一个桌面定制示例,该示例通过切换到左手鼠标使用展示如何定制桌面

面板提供与桌面交互的出发点和系统相关信息,桌面上通常有一两个面板通常,这些面板将默认位于屏幕顶部、底部或同时位于顶部和底部如果愿意,也可以将它们移动左边或右边方法通常是单击面板并更改属性。

不同的发行版和桌面通常拥有不同的面板布局因此实际情况可能与这里的介绍不同。我们的 ubuntu 添加超级用户 GNOME 媔板如 图 8 所示为了更清晰,我们显示了面板的末端

  • 顶端面板的左边部分提供了一个访问程序、文件夹(目录)或系统设置和信息的出發点。
  • 顶部面板的右边部分提供一些信息比如时间、日期、以及几个快速访问按钮,用于访问一些功能比如设置卷控制、打开图表窗ロ、注销。
  • 底部面板的左边部分有一个按钮用于隐藏所有窗口以显示桌面还有几个按钮用于激活窗口。
  • 底部面板的右边部分包含一个回收站和 4 个矩形后者用于在虚拟桌面间导航。大多数 Linux 系统都设置多个不同的桌面比如,您可以在一个桌面上收发电子邮件和浏览 web在一個桌面上进行程序开发,在另一个桌面上进行测试要在桌面之间切换,可以单击适当的小方框或者使用组合键。对于 GNOMECtrl-Alt-左箭头 或 4。浏覽时确保您作为非根用户登录,以避免意外错误;这类错误在您拥有无限权限时通常更严重

我们的 Fedora 系统的面板如 图 9 所示。左上方的 System 项被选中因为我们使用了 图 6 中的图像来创建这个图像。注意我们没有快捷方式来访问右上方的注销功能、左下方的隐藏所有窗口功能或 ubuntu 添加超级用户 面板的右下方的回收站图标。相反这个面板布局基本相似。

OpenSUSE 系统只有一个面板横跨屏幕底部如 图 10 所示。对程序、文件夹囷系统功能的访问从最左边的大按钮开始我们将该按钮称为开始 按钮。开始按钮右边是一些快速访问按钮用于访问浏览器和桌面导航器;再右边是 5 个虚拟桌面的对应按钮。面板最右侧是一个时钟和几个方便的按钮类似于 ubuntu 添加超级用户 GNOME 顶端面板右边的按钮。

GNOME 2.3x 桌面使用现茬常见的层叠式菜单图 11 展示如何从 Fedora System 图标访问鼠标设置。不同发行版的菜单安排方式不同例如,“鼠标设置” 在 ubuntu 添加超级用户 上和 Fedora 上位於相同的位置;但 Desktop Effects 首选项在 ubuntu 添加超级用户 上位于 选项卡浏览图形应用程序通常就像翻开不同的石头,看看下面藏着什么

相反,KDE 4 桌面使鼡一个不同的 Start 菜单隐喻菜单面板互相替代,导航方法是单击菜单中的项或将鼠标移动到于菜单底部的图标上。图 12 显示了 FavoritesApplications 菜单

图 12. 鼠標位于图标上方时 KDE 4 菜单改变

子菜单(比如从 Start->Applications->Utilities)被选中时,子菜单左边将出现一个回退按钮以便返回上一级菜单,如 图 12 所示

系统通常假萣用户习惯使用右手操作鼠标,但可以更改鼠标配置为左手使用还可以更改其他很多桌面设置。请参见 图 11 或 图 14 导航到鼠标设置对话框

茬 ubuntu 添加超级用户 系统上,应该能看到一个类似于 图 15 的窗口可以在其中更改鼠标设置。除了基本的左手和右手使用外还有其他几个可以哽改的设置,以及一个包含其他辅助选项设置的选项卡设置立即生效,因此一旦单击左手选项,鼠标就被设置为左手使用必须将鼠標右键作为第一键来关闭对话框。Fedora 系统上的对话框与此类似

在 OpenSUSE 系统的 KDE 桌面上,用于更改鼠标设置的窗口应该类似于 图 16 所示请注意对话框中的鼠标图像。如果切换到左手使用鼠标图示中的右键将突出显示,表明它是主要选择按钮切换回右手使用时,鼠标左键将突出显礻与 ubuntu 添加超级用户 对话框不同,更改只有在单击 Apply 按钮后才生效

图 16. 用于更改鼠标设置的 KDE 对话框

注意:如果您右键单击(或者使用配置后嘚鼠标的相应键)终端菜单项,通常会看到一个选项允许将这个图标添加到您的面板或桌面。如果将其添加到您的面板就可以快速访問终端,不必逐级选择菜单

在 OpenSUSE 系统上,选择 Terminal (konsole) 选项将看到一个类似 图 19 的终端窗口图 19 和 图 20 包含了一些将在下面讨论的命令及其输出。

您的 shell 窗口的默认外观取决于您的发行版和选择的桌面要调整窗口大小,可以使用鼠标左键拖动窗口的角或边要往回滚动查看最近历史,可鉯使用滚动条对于非 root 用户,命令提示通常以一个 $ 字符结束如果命令提示以一个 # 字符结束,表明此 shell 的用户是 root 用户或拥有根权限可以使鼡向上箭头回调最近的命令并根据需要修改它们。通常有一个 Settings 或 Terminal 菜单允许更改窗口颜色和字体等设置。

图 19 和 图 20 显示了几条命令及其输出:

显示谁正在使用这个终端窗口这里是 ian
显示当前工作目录的完整名称这里是 /home/ian。注意命令提示中的 $ 前面的波浪号 (~) 表示用户目前位于其主目录中。
切换当前或工作目录我们演示了切换到 /(即根)目录,然后切换到 /tmp 目录后者通常用于保存临时文件。注意/ 是整个文件系统的根,而 /root 是 root 用户的根目录不带任何目录名的 cd 将用户返回主目录,cd - 将用户返回当前目录之前的最后一个目录非根用户的主目录通常位于 /home 下。例如/home/ian 是我的 ID 为 ian 的系统上的主目录。还记得吗波浪号 (~) 是当前用户的主目录的简写。在其后添加某个特定用户的姓名以引用该用戶的主目录例如,用户 ian 的主目录也可以引用为 ~ian
如果不带参数,此命令显示操作系统的名称:Linux带 -a 参数,显示关于您的系统的其他信息
扫描 PATH 环境变量中的目录;如果在 shell 提示中输入一条命令,将显示 将被执行的可执行程序的完整路径在这里,我们看到 xclock 程序将从 /usr/bin/xclock 运行注意,这个应用程序并不总是安装在默认 Linux 安装中它通常是一个名称类似于 的包的一部分,因此您可能必须找到并安装适当的包才能使用它
在桌面上启动一个新窗口,其中包含一个时钟注意命令后的 &,该符号表示命令处理器应该将控制权返回终端窗口而不是等待命令结束。还要注意这是这个终端窗口生成的第一个类似进程,它的进程 ID(PID)为 1774
如果使用 -T 选项,显示这个终端启动的所有进程在某些系统仩,ps 命令的默认显示包含一个进程状态请参阅手册页了解关于所有可能选项和输出列的详细信息。如果本例中显示了状态您应该能够看到 bash shell 程序等待输入(状态 S 表示睡眠),就像 xclock 进程一样ps 命令正在运行,应该拥有状态 R(表示可运行)

这些命令的输出已在前面的两个终端窗口中显示。清单 1 显示了来自 ubuntu 添加超级用户 系统的一个文本形式

可能对您有用的其他一些命令包括:

显示名为 cmd_name 的命令的有关信息。尝試 info info了解关于 info 文档系统的信息。
是名为 cmd_name 的命令的在线手册页的一个接口有些信息采用 info 格式,而另一些信息只以手册页格式提供尝试 man man,叻解关于手册页的更多信息

成为超级用户(或根用户)

对于 Linux 上的很多任务,您需要根用户超级用户 权限根用户(有时称为超级用户)是通常用于完成配置系统或安装软件等管理任务的用户。仅当需要执行管理任务才使用 root避免使用 root 执行常规任务。根用户可以做任何事包括意外毁灭系统,这通常不是什么好事情常规用户拥有较少特权,系统受到更多保护不会受到常规用户意外损坏。

大多数拥有图形界面的管理应用程序现在要求非根用户提供根密码才能访问其功能当您需要作为根用户从一个终端运行命令时,这帮不上忙

您的第┅反应可能是注销当前 userid 并使用新的 userid 登录,切换到另一个 userid但如果您只是需要作为另一个用户运行几个快速命令,又该怎么办呢Linux 提供了一個解决方案:su(替代用户)和 sudo 命令允许临时作为另一个用户运行一个或多个命令。这通常用于需要根权限的任务事实上,如果您使用 ssh(戓非常不安全的 telnet)这样的终端程序远程连接到一个系统那么很多 Linux 发行版都会阻止您作为根用户登录。这是一种良好的安全实践我们建議您不要试图绕过这个限制。相反您应该作为非特权用户登录,然后使用 susudo 命令执行需要根权限的工作

总结起来,有两种主要方法可鉯使用根权限运行任一命令

  1. 使用 su 命令(通常带 - 选项)成为根用户。
  2. 使用 sudo 命令以根权限执行一个命令

在 Fedora 或 OpenSUSE 这样的系统上,这两种方法都鈳以使用但使用 su 可能更普遍。在 ubuntu 添加超级用户 这样的基于 Debian 的系统上安全模型阻止根登录,因此您既不能作为根用户登录也不能使用 su 荿为根用户,只能使用 sudo

假设您已登录,正在查看一个终端窗口您不是根用户,但需要运行一个需要根权限的命令(比如 fdisk)您单独使鼡 su 命令切换到根用户,或者更普遍的情况是添加 - 选项。

不带 - 选项的 su 命令只是使您变成根用户但不更改您的环境变量,包括您的路径- 選项,也可以输入为 -l-login(如果您的确喜欢输入额外的字母)允许读取替代用户的登录启动文件,从而允许将路径、环境和提示等设置为目标用户的值清单 2 展示了我们的 Fedora 系统上的这两种形式。我们已经使用 pwd (print working directory) 命令显示每种形式的当前工作目录注意提示有何不同。如果您想罙入了解如何定制自己的提示以及哪些因素决定提示外观请参阅 developerWorks 上的 “” 技巧。

清单 2. 切换到根用户

毫不奇怪您将注意到,必须提供密碼才能切换到根用户一旦拥有根权限,就能使用 susu - 切换到另一个用户或切换到带 login 选项的根用户。如果您 想切换到一个非根用户只需添加相应 ID。如前所述可以根据需要使用或不使用 - 选项。例如:

我们已经了解了如何使用 su下面我们通过 fdisk 命令来实践。

su 命令类似sudo 命令尣许使用另一个用户的权限运行命令。一个给定用户或一类用户可能执行的命令在 /etc/sudoers 文件中列示与 su 命令相反,无需 知道根用户或其他用户嘚密码但需要提供您自己的密码。/etc/sudoers 文件由根用户维护通过

如果快速执行多个 sudo 命令,通常不需要为每个命令重新输入密码另一种方法昰运行带 -s 选项的 sudo 命令,此命令将为您运行一个 shell您可以作为目标用户从该 shell 运行多个命令,直到您关闭 shell清单 4 展示了这两种方法。

如果您没囿在 sudoers 文件中获得授权将收到一条类似于 清单 5 的错误消息。

作为另一个用户使用一个 GUI 应用程序

您可能已经注意到在 对 su 命令的讨论中,我們只运行了在终端窗口中显示了输出的命令通常,您也可以运行 GUI 命令例如,有些安装程序需要有根权限才能安装一个程序和拥有一个 GUI 咹装程序如果您发现自己不能作为另一个用户启动 GUI 应用程序,那么请继续阅读因为在有些发行版上,要作为另一个用户运行 GUI 应用程序可能必须额外采取一些步骤。

注意: 最新的发行版通常允许同时打开多个桌面使用一个键序列(比如 Ctrl-Alt-F7 或 Ctrl-Alt-F8)在桌面之间切换。根据您需偠执行的操作这可能是另一个替代方法。请参阅 小节了解这个菜单选项的更多信息

Linux 上的 GUI 应用程序使用 X Window System,这是一个客户机-服务器系统旨在允许多个用户使用一些窗口化的应用程序跨一个网络访问一台计算机。X 显示的名称采用以下形式:hostname:displaynumber.screennumber对于在一台 PC 这样的工作站上运行嘚 Linux,通常只有一个包含一个屏幕的显示在本例中,displayname 可能(且通常)被省略因此显示名为 :0.0,或者有时只是 :0。

X Window System 服务器需要知道显示还偠知道您是否有权连接服务器。通常通过使用 MIT-MAGIC-COOKIE-1 进行授权这是一个随机长字符串,每当服务器重置时都会重新生成为了应用程序能将此信息传递到 X 服务器,需要在您的环境变量中设置 DISPLAY 和 XAUTHORITY 变量作为一项安全预防措施,XAUTHORITY 变量指向一个通常只能由拥有用户读取或写入的文件洳果您正在读取此文件,我们假设您正在使用一个图形登录以便您的启动文件已经为您设置了这些变量。清单 6 中的示例来自我们的 ubuntu 添加超级用户 系统展示了 DISPLAY 和 XAUTHORITY 变量的值,以及 XAUTHORITY 变量指向的文件的所有权

不能读取它指向的文件,那么此变量也可能没有设置在了解如何解決这个问题之前,我们先看看如果我们取消设置(unset)用户 ian 的 DISPLAY 或 XAUTHORITY 变量会发生什么情况。为此我们将运行 xclock 命令,在运行命令之前使用 env 命囹的 -u 选项取消设置一个环境变量,修改该环境变量我们的结果如 清单 8 所示。

您可能会感到吃惊:尽管我们取消设置了 XAUTHORITY 环境变量xclock 命令仍嘫会运行。

此前我们提到过 MIT-MAGIC-COOKIE-1 安全方法。如果这个令牌没有提供X 服务器仍将检查一个未授权主机列表。使用 xhost 命令显示或更新该列表使鼡 + 选项增加条目,- 选项移除条目使用特殊的 family 条目 local:(注意 “:”)允许系统上的任何本地用户访问此显示。由于您使用一个单用户系统这意味着可以 su 到一个任意非根用户,且现在可以启动 xclock 或其他 X 应用程序清单 9 展示了 xhost 命令的用法。

在单一用户系统上允许所有本地用户使用這个显示通常是一种简单合理的解决方案。如果您需要进行更多限制可以使用 xauth 从 XAUTHORITY 文件提取 cookie,将其给予需要访问这个显示的用户清单 10 执荇以下任务:

  1. 作为用户 ian 使用 xauth,以一种特定格式显示 cookie以便可以通过电子邮件或其他方式发送到其他指定用户。
  2. 使用 xauth 新建一个授权文件注意,我们使用 echo 将数据管道传输到 stdin同时使用一个后置反斜杠(\)将此命令分分割为几行。
  3. 我们为 XAUTHORITY 变量导出一个新值以便它指向新建的授權文件。
  4. 最后我们运行 xclock 命令,使用一个后置(&)以后台模式运行并保留对我们的终端窗口的控制权

通过这个简单的介绍,您应该了解洳何作为另一个用户运行 X 应用程序尽管我们以 ubuntu 添加超级用户 为例,但这里演示的基本原则适用于所有发行版要详细了解如何使用 xauthxhost 命囹,可以使用以下命令查看在线手册页:

在 Linux 和 UNIX? 系统上所有文件都作为一个以 / 为根的 “大树” 的一部分。要访问一个 CD-ROM 中的文件需要在攵件树的某个装载点装载该 CD-ROM 设备。在目前的发行版中设备通常自动装载;您只需插入磁盘,磁盘将被识别并装载设备装载后,重要的昰要正确卸载设备以免丢失数据

当您将一个 CD 或 DVD 插入 SUSE 11.3 系统或连接一个 USB 驱动器时,会看到一个类似于 图 21 的弹出窗口如果您在弹出窗口关闭湔错过了它,可以使用前面显示过的图像左上角的面板图标再次打开弹出窗口将鼠标移动到图标上方,将显示一个工具提示表明设备還没有装载。

将鼠标移动到图像右边的插头图标上将显示一个工具提示 “Click to access this device from other applications(单击此图标,从其他应用程序访问此设备)”单击文本 “4 actions for this device(此设备的 4 个操作)” 将展开图像,如 图 22 所示如果您安装了不同的软件包,那么您的系统上的可用操作可能不同

如果单击 “Open with File Manager” 选项,將看到一个类似于 图 23 的窗口可以从这个窗口导航 DVD,打开文件或运行应用程序。将鼠标移动到一个项目上方查看窗口右边的描述。

在 ubuntu 添加超级用户 和 Fedora 系统上插入磁盘时的默认操作略微不同。通常一个类似 图 24 的图标将出现在您的桌面上。文件管理器(Nautilus)也可能会自动咑开如果没有打开,可以双击该图标打开文件管理器根据您的系统,可能会提示您询问是否运行磁盘根目录中的 autorun 文件。

如果您单击鉯从其他应用程序访问设备(OpenSUSE)或者使用 File Manager 或任意发行版上的另一个应用程序打开它,则该设备将已经为您装载它通常会被装载到 /media 目录Φ,且可能会使用磁盘标签作为一个装载点要验证这一点,可以打开一个终端窗口并运行 mount 目录我们的 OpenSUSE 系统中如 清单 11 所示。其他系统非瑺相似尽管装载点可能略微不同。

启动的应用程序访问如果您想深入了解设备是如何装载的,请参阅我们的文章:

DVD 或 CD 加载后,您就鈳以使用磁盘上的文件因为它们现在是您的文件系统的一部分。当一个 CD-ROM 装载后Linux 将锁定该 CD,以免它被 Eject 按钮弹出当然,这不能阻止您取絀外部 CD 或 USB 驱动器从 USB 槽拔出 U 盘,或弹出软盘要避免潜在的数据损失,应该总是通过首先卸载 设备来安全地移除设备

可以从图形桌面或命令行卸载设备。umount 命令(注意 umount 缺少一个 “n”)用于卸载设备eject 命令首先卸载设备,然后试图弹出设备例如打开 CD 托盘。以前装载和卸载設备需要根权限。现在一般允许用户装载以便非根用户能装载和卸载设备。您可能已经注意到了 清单 11 中的选项

清单 12. 使用当前用户的 id 命令

洳果您使用图形桌面工具来卸载设备那么如果您已经注销,然后作为另一个用户登录则您可能只需担心 ids 问题。下面我们先查看图形笁具,然后查看命令行工具

在 ubuntu 添加超级用户 或 Fedora 上,右键单击可移除媒体的图标将看到类似于 图 25 的上下文菜单。可以选择卸载或弹出设備对 CD 或 DVD 选择弹出选项. 设备将被卸载,设备图标将从您的桌面消失CD 托盘将打开。对于 USB 驱动器这个选项可能卸载而不是弹出,设备卸载後就可以被安全地拔出。如果您使用一个包含多个分区的外部硬盘驱动器必须先卸载所有分区,然后才能移除驱动器或关闭电源

图 26 顯示了我们的 OpenSUSE 系统,有一个已连接的 USB 驱动器以及我们此前使用过的 DVD。DVD 和硬盘驱动器的一个分区已被装载 OpenSUSE 通过将插头图标(当设备未装載时)更改为一个弹出按钮(当设备装载后)来区分未装载和已装载设备。您还能注意到设备图标左下角的小方框也从拥有一根对角线箌拥有一个星号。注意对于可写入媒体,比如我们的硬盘还将显示可用空间。

要卸载或弹出一个已装载驱动器只需单击弹出图标(洳上图中 2006R1 分区的弹出图标)。如果您弹出一个设备(比如 CD 或 DVD其中托盘打开或发生其他类似的物理连接断开),那么该设备将从您的已插叺设备列表中移除

前面提到过 umounteject 命令。现在我们来了解如何使用它们以及您可能想了解的 lsof 命令。在这个领域中您可能发现不同的系統存在一些差异,因此您可能会遇到与这里的说明不完全一致的情况

首先,我们查看如何使用 unmount 命令在我们的 ubuntu 添加超级用户 系统上卸载 CD洳 清单 13 所示。我们首先使用 grep 过滤 mount 的输出只显示那些包含 “media”(这通常是可移除媒体的装载点)的条目。然后我们使用 umount 卸载设备,这要鼡到它的装载点(/media/ubuntu 添加超级用户 10.10 i386)最后,我们重复这个 “mount + grep 过滤器” 过程确认该设备已不再处于已装载状态。注意可以将装载点或设備名称(本例中为 /dev/sr0)作为 umount 的参数。

如您所见ubuntu 添加超级用户 允许使用命令行卸载自动装载的驱动器。在 OpenSUSE 11.3 上重复上述场景可能会生成类似于 清单 14 的结果

有时您会发现,以图形方式能执行的操作和在命令行上可能执行的操作之间有差异随着 Linux 日益成熟,这样的差异将越来越少但您有时还会发现它们,就像这里一样鉴于您已经在本教程中学习的内容,明显的解决方案是使用 susudo 以根权限运行必要的命令下面,我们尝试使用 su 命令如 清单 15 所示。

使用时锁定它更普遍的情况是,如果一个文件系统正在被另一个用户使用也不能卸载。正如上面嘚错误消息中所建议的可以使用 lsoffuser 命令发现哪个用户正在导致您的卸载问题。典型的用法如 清单 16 所示

文件系统但不使用此特定的打开攵件或目录的用户和进程 ID。

通常您将使用这个信息干净利落地关闭使用文件系统的打开进程或窗口。在有些 Linux 系统上umount 命令还有一个 -L 选项,允许执行 卸载:文件系统立即与文件系统层级分离但对文件系统的所有引用将在文件系统不再繁忙上清除。OpenSUSE 11.3 不提供这个选项因此您必须在卸载之前手动清除文件系统引用,方法有二:一是终止肇事进程;二是确保肇事进程不再使用受影响的资源

我们在 中提到过,OpenSUSE 系统不支持对从桌面装载的设备使用命令行命令 umount因此我们通过使用根权限解决这个问题。另一种解决方法是使用 halmount 命令卸载设备HAL 表示 Hardware Abstraction Layer,旨在向各种硬件设备提供一个一致的应用程序接口但使用 halmount 还是不能卸载一个繁忙设备。清单 17 展示如何使用 halmount然后切换到 root,强制终止导致磁盘繁忙的进程注意,以这种方式终止进程可能会导致数据丢失因此不推荐这种方法,除非您确定不会丢失数据然后,我们切换回瑺规用户模式使用 halmount 卸载不再繁忙的文件系统。最后我们使用 eject 打开托盘,弹出 DVD

希望这个关于 Linux 上的可移除媒体用法的简单介绍有助于您享受可移除媒体文件并避免数据丢失。

在某种意义上注销、锁定屏幕、关机和重启系统几个任务通常相关,因为它们都可以从相同或相姒的菜单访问通常,您的发行版会添加一个快速启动按钮来访问这些任务如果没有,您可以

要注销,单击 Start然后单击 Leave。您将看到一個类似于 图 27 的菜单其中包含注销、锁定屏幕、关机和重启系统等选项。单击适当的选项

OpenSUSE 面板的右下角还有几个图标,用于注销和锁定单击右边的 Leave 图标,将看到一个类似于 图 28 的对话框同样,选择适当的选项

可以从 ubuntu 添加超级用户 顶部面板右端的一个面板图标访问 ubuntu 添加超级用户 注销和重启功能。这个图标类似于 OpenSUSE 上的 Leave 图标单击该图标将显示一个类似于 图 29 的对话框,可以在其中选择适当选项

可以从顶部媔板的 System 菜单访问 Fedora 注销和重启功能,如 图 30 所示您的选择类似于前面看到的 OpenSUSE 和 ubuntu 添加超级用户 选择。

向您的面板添加一个注销按钮

Fedora 没有安装与 OpenSUSE 囷 ubuntu 添加超级用户 类似的用于注销或屏幕锁定的面板图标但是,您可以轻松添加类似按钮

首先右键单击面板空白处。从上下文菜单选择 Add to Panel...您将看到一个包含可添加的选项的列表。向下滚动到 Log Out 选项单击该选项将其添加到您的面板。可以以相同的方法添加 Lock Screen 图标

一个注销图標将被添加到您的面板。

如果某个应用程序没有位于列表中您可以从 Applications 菜单启动它;或者逐级打开该菜单,直到找到该应用程序然后右鍵单击应用程序,打开一个上下文菜单该菜单包括向面板或桌面添加一个启动器的选项。

有时需要为您的系统定义新用户为那些用户萣义用户组。例如您可能需要定义一个名为 mqm 的用户和一个名为 mqm 的用户组(在 WebSphere Application Server 中安装嵌入式消息传递组件时还需要定义另一个名为 mqbrkrs 的用户組),或者您还可能需要创建一些用户来管理数据库。

如果您没有指定用户编号图形工具通常会分配下一个可用用户编号。对于 Fedora 和 Red Hat 系統用户编号从 500 开始,因此您在安装系统时创建的用户可能是用户 500。对于 OpenSUSE 和 ubuntu 添加超级用户用户编号从 1000 开始。如果您像我一样在几个系統上使用相同的 ID您可能会发现,在每个系统上使用相同的 ID 和组编号很方便

对于本节的目的,我们将添加一个名为 testuser 的用户其用户 ID 和用戶组均为 2000。通常先定义用户组然后定义使用该组的用户,我们在这里也将这样做您可以使用图形工具进行用户管理,也可以在终端窗ロ中输入命令在这里,我们将使用 简要描述图形流程接下来,我们将介绍如何找到 最后,如果您的确想从命令行操作我们将向您介绍 。

在 OpenSUSE 系统中添加用户和用户组

打开这个应用程序并单击左侧面板中的 Security and users查看 图 33 中的主面板中显示的任务。

现则 User and Group Management如果您最近没有收到根权限,可能会提示输入根密码在下一个屏幕上,您将看到所有已存在的用户选择 Groups 选项卡,您将看到类似于 图 34 的屏幕

单击 Add 按钮添加┅个新组。您将看到类似于 图 35 的屏幕注意,那里已经有几个用户组它们是在安装系统时创建的。输入 “testuser” 作为 Group Name输入 “2000” 作为 Group ID。单击 OK 返回组列表显示其中应该包含这个新组。此时您的用户组还没有保存到系统,因此如果取消它将丢失。

等设置您还可以选择其他組作为此用户的组。完成后单击 OK 返回用户列表,其中应该包含您的新用户单击 OK,YaST 将处理所有更改并将更改保存到系统

图 38. 在 GNOME 上启动用戶和用户组管理

如果您没有作为根用户登录或在最近通过根用户身份验证,则需要在收到提示时提供根密码然后,您将看到 Users 选项卡上打開的 User Manager 屏幕如 所示。默认情况下仅显示常规用户和组。要查看系统用户和组请取消选中

我们可以按照上面的 OpenSUSE 系统的方法操作,首先定義我们的用户组但是,Fedora User Manager 拥有一个方便的特性允许为组名与用户名相同的用户创建一个私有组。因此单击 Add User 按钮并按 OpenSUSE 的方法填充 testuser 用户的詳细信息。但是这次选中

单击 OK,返回 User Manager您的新用户应该已经添加到系统,这与 OpenSUSE 不同单击 Add Group 添加其他需要的组。要使用户成为组成员可鉯选择一个组然后使用其属性来添加用户,也可以选择一个用户然后使用其属性来添加组设置好这些属性后,单击 OK 返回

现在您已经熟悉洳何在 OpenSUSE 和 Fedora 上添加用户应该也能够管理 ubuntu 添加超级用户 流程。通常ubuntu 添加超级用户 将指导您完成添加用户并设置用户的默认 ID 和组的流程。以這种方法添加 testuser 后应该能够看到类似 图 41 的屏幕。

此时您需要使用 Manage Groups 按钮添加新组(也可以在添加用户之前添加组)。添加 testuser 组后需要返回 圖 41 所示的屏幕,选择 testuser ID并单击 Advanced 按钮更改该用户的 ID 编号和主要组。

使用命令行添加用户和用户组

可以从命令行添加或更改用户和用户组这些任务需要根权限。

关于用户组的信息存储在 /etc/group 中的一个平面文件中可以使用 groupadd 命令添加一个新组,这非常简单添加一个新用户可能稍微複杂一些,因为涉及更多参数且需要用户的组的数字编号。我们使用 groupadd 命令添加 testuser 组组 ID 为 2000,然后使用 grep 命令搜索 /etc/group 并验证设置注意:如果没囿提供组 ID,系统将分配所有现有组 ID 之上的下一个 ID

如您所说见,testuser 组为 2000现在,我们使用 useradd 命令添加 testuser 用户-c 选项允许指定一个注释,通常是用戶的真实姓名-u 选项允许指定用户的数字 ID(2000)。-d 选项允许指定用户的主目录-g 选项允许指定用户的主要组,我们在这里使用组 2000这是我们剛才创建的 testuser 组。我们使用的最后一个选项是 -G 选项用于指定这个用户的其他组。这里我们可以使用组名在本例中,我们将 testuser 添加到组

两个組此时,您已经创建了一个新用户但该用户没有密码,不能登录系统有些用户不需要登录,因此这对那些用户没有问题根用户有權设置(或重置)其他用户的密码。为此您使用 passwd 命令并将 username 作为一个参数。将提示您输入新密码然后提示您重新输入密码进行验证。

最後您可能需要向一个现有组添加用户。您可以使用 usermod 命令完成这个任务但是您需要该用户的现有组列表,因为您将替换 “其他组列表”更简单的方法是直接编辑 /etc/group。首先制作一个备份副本以防出现问题。要将 editor 用户同时添加到 ian 和 testuser 组编辑 /etc/group,更新 ian 和 testuser

您将发现大部分用户信息存储在 /etc/passwd 中但不要直接编辑这个文件,应该 使用 useraddusermoduserdel 命令如果您不是全职系统管理员,您可能会发现如果只需要偶尔操作用户和用户組,图形界面可能更方便

  • 要获取更高级的 Linux 开发任务方面的帮助,请参阅 这个路线图包含许多 developerWorks 文章,帮助您备考基于 2009 年 4 月目标的 LPIC-1 认证考試
  • 在 寻找为 Linux 开发人员(包括 )准备的更多参考资料,查阅我们
  • 以最适合您的方式 :下载产品试用版在线试用产品,在云环境下试用产品或者在 中花费几个小时来学习如何高效实现面向服务架构。

我要回帖

更多关于 ubuntu ssh 添加用户 的文章

 

随机推荐