Ubuntu 系统中创建新用户并配置权限
<h1>在 Ubuntu 系统中创建新用户并配置权限</h1>
<h2>创建新用户</h2>
<p>1. <strong>打开终端并使用 <code>adduser</code> 命令创建一个新用户</strong>:</p>
<pre><code>sudo adduser i8j.com</code></pre>
<ul>
<li>将 <code>i8j.com</code> 替换为你想要的用户名。</li>
<li>该命令会提示你设置新用户的密码,并可以选择填写一些其他信息(如全名、电话等)。</li>
</ul>
<p>2. <strong>验证新用户</strong>:</p>
<pre><code>id i8j.com</code></pre>
<ul>
<li>这将显示该用户的 UID(用户 ID)和 GID(组 ID)。</li>
</ul>
<p>3. <strong>通过 <code>su</code> 或 <code>ssh</code> 登录新用户</strong>:</p>
<pre><code>su - i8j.com</code></pre>
<h2>将用户添加到特定组</h2>
<p>如果你希望新用户具有额外的权限(如管理员权限),可以将用户添加到适当的组。例如,将新用户添加到 <code>sudo</code> 组以使其能够执行管理员任务:</p>
<pre><code>sudo usermod -aG sudo i8j.com</code></pre>
<ul>
<li>这会将新用户添加到 <code>sudo</code> 组,使其能够使用 <code>sudo</code> 来获取管理员权限。</li>
</ul>
<h2>设置用户默认的 shell</h2>
<p>如果你想指定用户的默认 shell(例如,bash 或 zsh),可以使用以下命令:</p>
<pre><code>sudo chsh -s /bin/bash i8j.com</code></pre>
<h2>配置 X 服务器权限</h2>
<p>X 服务器需要特定的权限,尤其是与显示相关的硬件权限。通常,您需要将当前用户添加到 <code>video</code> 和 <code>tty</code> 组,以允许其访问显卡资源。</p>
<p>1. <strong>将新用户添加到 <code>video</code> 和 <code>tty</code> 用户组</strong>:</p>
<pre><code>sudo usermod -aG video,tty i8j.com</code></pre>
<p>2. <strong>应用更改</strong>:</p>
<p>注销并重新登录,或者执行以下命令来应用更改:</p>
<pre><code>newgrp video</code></pre>
<p>3. <strong>修改 <code>/etc/securetty</code> 文件</strong>:</p>
<ul>
<li>编辑 <code>/etc/securetty</code> 文件,确保所有虚拟终端(如 <code>/dev/tty1</code>、<code>/dev/tty2</code> 等)都有访问权限。</li>
<li>使用以下命令编辑文件:</li>
</ul>
<pre><code>sudo nano /etc/securetty</code></pre>
<ul>
<li>确保在文件中添加以下内容:</li>
</ul>
<pre><code>tty1
tty2
tty3
tty4
tty5
tty6</code></pre>
<p>4. <strong>修改 <code>/etc/X11/Xwrapper.config</code> 文件</strong>:</p>
<ul>
<li>如果 <code>securetty</code> 的设置不起作用,您可以尝试修改 <code>/etc/X11/Xwrapper.config</code> 文件,允许非控制台用户启动 X 服务器。</li>
<li>编辑该文件:</li>
</ul>
<pre><code>sudo nano /etc/X11/Xwrapper.config</code></pre>
<ul>
<li>确保以下行存在:</li>
</ul>
<pre><code>allowed_users=anybody</code></pre>
<p>5. <strong>检查 <code>/dev/tty</code> 设备权限</strong>:</p>
<p>确保虚拟终端设备具有正确的权限。运行以下命令以允许所有用户访问 <code>/dev/tty*</code> 设备:</p>
<pre><code>sudo chmod 666 /dev/tty*</code></pre>
<p>6. <strong>检查 <code>xorg.conf</code> 配置文件</strong>:</p>
<ul>
<li>确保 <code>/etc/X11/xorg.conf</code> 配置文件中没有误配置,导致 X 服务器无法正常启动。</li>
<li>如果没有此文件,可以尝试使用以下命令自动生成一个新的 <code>xorg.conf</code> 配置文件:</li>
</ul>
<pre><code>sudo Xorg -configure</code></pre>
<ul>
<li>然后将生成的 <code>xorg.conf.new</code> 文件移动到 <code>/etc/X11/xorg.conf</code>:</li>
</ul>
<pre><code>sudo mv /root/xorg.conf.new /etc/X11/xorg.conf</code></pre>
<p>7. <strong>确保 <code>/dev/tty</code> 设备权限正确</strong>:</p>
<p>X 服务器需要访问虚拟控制台设备(如 <code>/dev/tty0</code>、<code>/dev/tty1</code> 等)。确保这些设备的权限设置正确:</p>
<pre><code>sudo chmod 666 /dev/tty*</code></pre>
<p>8. <strong>禁用 root 用户的限制(如果需要)</strong>:</p>
<ul>
<li>如果问题仍然存在,您可以尝试禁用 root 用户的控制台限制,允许 root 用户启动 X 服务器。</li>
<li>编辑 <code>/etc/X11/Xwrapper.config</code> 文件,确保以下行存在:</li>
</ul>
<pre><code>allowed_users=anybody</code></pre>
<ul>
<li>如果该文件不存在,请添加它。</li>
<li>保存并退出文件后,重启显示管理器:</li>
</ul>
<pre><code>sudo systemctl restart gdm</code></pre>
<ul>
<li>或者,如果使用其他显示管理器(如 <code>lightdm</code>):</li>
</ul>
<pre><code>sudo systemctl restart lightdm</code></pre>
<p>完成上述操作后,尝试再次运行 <code>startx</code>。</p>
Markdown