ubuntu添加新用户并添加管理员权限
Ubuntu创建新用户并增加管理员权限
$是普通管员,#是系统管理员,在Ubuntu下,root用户默认是没有密码的,因此也就无法使用(据说是为了安全)。想用root的话,得给root用户设置一个密码:
$ sudo passwd root
然后登录时用户名输入root,再输入密码就行了。
ubuntu建用户最好用adduser,虽然adduser和useradd是一样的在别的linux糸统下,但是我在ubuntu下用useradd时,并没有创建同名的用户主目录。
例子:adduser user1
这样他就会自动创建用户主目录,创建用户同名的组。
root@ubuntu:~# sudo adduser db
[sudo] password for xx:
输入xx用户的密码,出现如下信息
正在添加用户"db"…
正在添加新组"db" (1006)…
正在添加新用户"db" (1006) 到组"db"…
创建主目录"/home/db"…
正在从"/etc/skel"复制文件…
输入新的 UNIX 口令:
重新输入新的 UNIX 口令:
两次输入db的初始密码,出现的信息如下
passwd: password updated successfully
Changing the user information for db
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Full Name []:等信息一路回车
这个信息是否正确? [Y/n] y
到此,用户添加成功。如果需要让此用户有root权限,执行命令:
root@ubuntu:~# sudo vim /etc/sudoers
修改文件如下:
# User privilege specification
root ALL=(ALL) ALL
db ALL=(ALL) ALL
保存退出,db用户就拥有了root权限。
如何修复/home分区和swap分区被误删的Ubuntu 12.04
2012-07-07 09:37:28
同事在Ubuntu上调试程序时,眼花缭乱中将挂载/home的分区和SWAP分区给删除了,导致她的系统无法登录。由于系统上安装了很多更新和开发工具,新装一个系统要重复安装很多软件包。这些软件都安装在根目录所在的分区,所以依然在系统中,如果可以修复就避免了很长时间的安装更新和开发工具的时间。基本上有两件事要解决:1. 重新做一个挂载/home的分区出来(目前挂载/目录的分区只有20GB,不够用);2. 恢复用户主目录的基本目录结构,包括一些默认的用户配置。
首先重启系统,用GParted Live CD(或USB Stick)启动,用GPartd分区工具重新建两个分区出来,一个格式化为Ext4文件系统,一个不要格式化,标记为swap分区。记住这两个分区对应的设备节点。
然后重新启动。由于Ubuntu 12.04并不支持在启动时修改GRUB的内核启动参数,无法直接进入单用户模式操作;只能进入Ubuntu的恢复模式,选择“Drop to root shell”。进入root shell后,注意到整个文件系统都只读。这时要对配置文件做一些修改的话,必须将文件系统重新挂在为可读写的:
mount -n -o remount,rw /
之后修改/etc/fstab文件。现在这个文件都使用uuid来标识分区,但依然支持过去的用法——直接使用设备节点。删除掉以前的/home和swap对应的uuid条目,替换成新的格式化后分区的设备节点,比如/dev/sda5,/dev/sda6。这样就解决了/home的挂载问题。再解决另外一个问题:用户的主目录为空。由于过去的主目录内容已经全部丢失,而且找回的几率很小,那就可以先删除用户再添加用户重新根据/etc/skel的内容生成用户主目录中的内容。简单的说如下:
userdel -r $FAKE_USER
useradd -n -m -k -u uid $FAKE_USER
passwd $FAKE_USER
如果你担心以前用户写入的文件无法读取,你可以在重新添加用户时指定用户uid。这样子就可以拥有以前用户UID所拥有的权限了。
如果你还遇到新生成的$FAKE_USER登录后无法通过sudo提权的问题,可以重新回到恢复模式下,依然将文件系统remount为可读写的,直接修改/etc/sudoers文件:
root ALL=(ALL:ALL) ALL
$FAKE_USER ALL=(ALL:ALL) ALL
或将$FAKE_USER加入到admin组中:
usermod -a -G admin $FAKE_USER
重新启动,系统重新恢复正常。
重装win7后如何恢复ubuntu引导
在重装系统之后,开机启动界面的ubuntu引导不见了,直接进入新安装的window系统中。下面是如何恢复ubuntu引导的方法:
1)准备一张ubuntu系统安装盘;
2)将ubuntu系统安装盘放入光驱,重新启动计算机,进入BIOS,将开机启动设置为光驱(CD/ROM)启动方式;
3)然后保存设置退出,等待片刻就进入到ubuntu的安装界面,此时有两个选择
1.在该光盘上试用ubuntu系统
2.将ubuntu系统安装到计算机上
选择"在该光盘上试用ubuntu系统",进入到ubuntu系统之后,打开终端(快捷键组合是Ctrl+Alt+T);
4)在终端下输入sudo -i(获得管理员权限)
5)在终端下输入fdisk -l(是小写的字母'L',查看盘符列表)
会出现类似下面的信息:
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x70f7ab9c
Device Boot Start End Blocks Id System
/dev/sda1 1 1627 13060096 27 Unknown
Partition 1 does not end on cylinder boundary.
/dev/sda2 * 1627 1639102400 7 HPFS/NTFS
Partition 2 does not end on cylinder boundary.
/dev/sda3 1639 8166 52429859 7 HPFS/NTFS
/dev/sda4 8167 38913 246975277+ 5 Extended
/dev/sda5 8167 32385 194539082+ 7 HPFS/NTFS
/dev/sda6 32386 38788 51432066 83 Linux
/dev/sda7 38789 38913 1004031 82 Linux swap / Solaris
然后找到ID为83的盘符,根据上面显示的信息可知当时装ubuntu时是装在sda6这个分区。
6)在终端输入mount /dev/sda* /mnt
(*代表ubuntu系统所在的分区,即上一步显示结果中ID为83的分区号,如上面显示的是在sda6这个分区,
所以输入的是mount /dev/sda6 /mnt
注意:mount后面有一个空格,sda6后面也有一个空格,这两个空格千万不要漏掉,否则会报错)
7)上一步结束之后,继续在终端中输入grub-install --root-directory=/mnt /dev/sda
等待一会儿,若出现Installationfinished,No Error Reported则表示成功了
(注意:grub-install之间没有空格,--root前面有一个空格,--root前面是两个'-',/mnt后面有一个空格)
8)到此,ubuntu引导基本恢复,重启电脑后,就可以看到熟悉的ubuntu引导界面了,进入ubuntu系统,打开终端输入
sudo update-grub
等待片刻显示以下信息:
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.31-20-generic
Found initrd image: /boot/initrd.img-2.6.31-20-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows Vista (loader) on /dev/sda1
Found Windows 7 (loader) on /dev/sda2
done
恢复工作便全部完成了。
$ sudo passwd root
然后登录时用户名输入root,再输入密码就行了。
ubuntu建用户最好用adduser,虽然adduser和useradd是一样的在别的linux糸统下,但是我在ubuntu下用useradd时,并没有创建同名的用户主目录。
例子:adduser user1
这样他就会自动创建用户主目录,创建用户同名的组。
root@ubuntu:~# sudo adduser db
[sudo] password for xx:
输入xx用户的密码,出现如下信息
正在添加用户"db"…
正在添加新组"db" (1006)…
正在添加新用户"db" (1006) 到组"db"…
创建主目录"/home/db"…
正在从"/etc/skel"复制文件…
输入新的 UNIX 口令:
重新输入新的 UNIX 口令:
两次输入db的初始密码,出现的信息如下
passwd: password updated successfully
Changing the user information for db
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Full Name []:等信息一路回车
这个信息是否正确? [Y/n] y
到此,用户添加成功。如果需要让此用户有root权限,执行命令:
root@ubuntu:~# sudo vim /etc/sudoers
修改文件如下:
# User privilege specification
root ALL=(ALL) ALL
db ALL=(ALL) ALL
保存退出,db用户就拥有了root权限。
如何修复/home分区和swap分区被误删的Ubuntu 12.04
2012-07-07 09:37:28
同事在Ubuntu上调试程序时,眼花缭乱中将挂载/home的分区和SWAP分区给删除了,导致她的系统无法登录。由于系统上安装了很多更新和开发工具,新装一个系统要重复安装很多软件包。这些软件都安装在根目录所在的分区,所以依然在系统中,如果可以修复就避免了很长时间的安装更新和开发工具的时间。基本上有两件事要解决:1. 重新做一个挂载/home的分区出来(目前挂载/目录的分区只有20GB,不够用);2. 恢复用户主目录的基本目录结构,包括一些默认的用户配置。
首先重启系统,用GParted Live CD(或USB Stick)启动,用GPartd分区工具重新建两个分区出来,一个格式化为Ext4文件系统,一个不要格式化,标记为swap分区。记住这两个分区对应的设备节点。
然后重新启动。由于Ubuntu 12.04并不支持在启动时修改GRUB的内核启动参数,无法直接进入单用户模式操作;只能进入Ubuntu的恢复模式,选择“Drop to root shell”。进入root shell后,注意到整个文件系统都只读。这时要对配置文件做一些修改的话,必须将文件系统重新挂在为可读写的:
mount -n -o remount,rw /
之后修改/etc/fstab文件。现在这个文件都使用uuid来标识分区,但依然支持过去的用法——直接使用设备节点。删除掉以前的/home和swap对应的uuid条目,替换成新的格式化后分区的设备节点,比如/dev/sda5,/dev/sda6。这样就解决了/home的挂载问题。再解决另外一个问题:用户的主目录为空。由于过去的主目录内容已经全部丢失,而且找回的几率很小,那就可以先删除用户再添加用户重新根据/etc/skel的内容生成用户主目录中的内容。简单的说如下:
userdel -r $FAKE_USER
useradd -n -m -k -u uid $FAKE_USER
passwd $FAKE_USER
如果你担心以前用户写入的文件无法读取,你可以在重新添加用户时指定用户uid。这样子就可以拥有以前用户UID所拥有的权限了。
如果你还遇到新生成的$FAKE_USER登录后无法通过sudo提权的问题,可以重新回到恢复模式下,依然将文件系统remount为可读写的,直接修改/etc/sudoers文件:
root ALL=(ALL:ALL) ALL
$FAKE_USER ALL=(ALL:ALL) ALL
或将$FAKE_USER加入到admin组中:
usermod -a -G admin $FAKE_USER
重新启动,系统重新恢复正常。
重装win7后如何恢复ubuntu引导
在重装系统之后,开机启动界面的ubuntu引导不见了,直接进入新安装的window系统中。下面是如何恢复ubuntu引导的方法:
1)准备一张ubuntu系统安装盘;
2)将ubuntu系统安装盘放入光驱,重新启动计算机,进入BIOS,将开机启动设置为光驱(CD/ROM)启动方式;
3)然后保存设置退出,等待片刻就进入到ubuntu的安装界面,此时有两个选择
1.在该光盘上试用ubuntu系统
2.将ubuntu系统安装到计算机上
选择"在该光盘上试用ubuntu系统",进入到ubuntu系统之后,打开终端(快捷键组合是Ctrl+Alt+T);
4)在终端下输入sudo -i(获得管理员权限)
5)在终端下输入fdisk -l(是小写的字母'L',查看盘符列表)
会出现类似下面的信息:
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x70f7ab9c
Device Boot Start End Blocks Id System
/dev/sda1 1 1627 13060096 27 Unknown
Partition 1 does not end on cylinder boundary.
/dev/sda2 * 1627 1639102400 7 HPFS/NTFS
Partition 2 does not end on cylinder boundary.
/dev/sda3 1639 8166 52429859 7 HPFS/NTFS
/dev/sda4 8167 38913 246975277+ 5 Extended
/dev/sda5 8167 32385 194539082+ 7 HPFS/NTFS
/dev/sda6 32386 38788 51432066 83 Linux
/dev/sda7 38789 38913 1004031 82 Linux swap / Solaris
然后找到ID为83的盘符,根据上面显示的信息可知当时装ubuntu时是装在sda6这个分区。
6)在终端输入mount /dev/sda* /mnt
(*代表ubuntu系统所在的分区,即上一步显示结果中ID为83的分区号,如上面显示的是在sda6这个分区,
所以输入的是mount /dev/sda6 /mnt
注意:mount后面有一个空格,sda6后面也有一个空格,这两个空格千万不要漏掉,否则会报错)
7)上一步结束之后,继续在终端中输入grub-install --root-directory=/mnt /dev/sda
等待一会儿,若出现Installationfinished,No Error Reported则表示成功了
(注意:grub-install之间没有空格,--root前面有一个空格,--root前面是两个'-',/mnt后面有一个空格)
8)到此,ubuntu引导基本恢复,重启电脑后,就可以看到熟悉的ubuntu引导界面了,进入ubuntu系统,打开终端输入
sudo update-grub
等待片刻显示以下信息:
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.31-20-generic
Found initrd image: /boot/initrd.img-2.6.31-20-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows Vista (loader) on /dev/sda1
Found Windows 7 (loader) on /dev/sda2
done
恢复工作便全部完成了。