Ubuntu服务器管理备忘录

我正在使用Ubuntu 12.04LTS进行研究,并将其记下来。

添加或删除用户

添加用户

$ sudo adduser USER

除了 useradd 命令外,还有另一个选项,但如果不在该选项中指定,将无法创建主目录和 .bashrc 文件。

删除用户

$ sudo userdel -r USER

-r是删除家目录和邮件存储的选项。

将用户添加到子组

$ sudo gpasswd -a USER GROUP

由于 usermod -G GROUP USER 命令存在安全风险,请不要使用。(参考资料)

添加管理用户

$ sudo adduser NEWADMIN
$ sudo gpasswd -a NEWADMIN sudo
$ sudo gpasswd -a NEWADMIN adm
$ sudo gpasswd -a NEWADMIN admin

添加无法登录的用户

$ sudo useradd -s /bin/false

如果想要创建一个不被普通用户使用的特殊用户,请将其登录shell指定为/bin/false。

不需要密码,执行sudo命令。

我需要修改/etc/sudoers文件,但是直接使用vi等编辑器进行修改是危险的,所以我要使用visudo来完成。(参考)

$ sudo EDITOR=vi visudo

要使属于admin组的用户能够无需密码执行sudo命令,可以通过以下方式进行修改。

# Members of the admin group may gain root privileges
%admin ALL=(ALL) NOPASSWD:ALL

包装

更新软件包列表

$ sudo apt-get update

安装软件包

$ sudo apt-get install PACKAGENAME

卸载软件包

$ sudo apt-get remove PACKAGENAME

Package search (in Chinese): 包裹搜索

可以使用正则表达式进行搜索。

$ sudo apt-cache search REGEX

显示包装信息

$ sudo apt-cache show PACKAGENAME

想知道安装了哪个版本。

$ sudo apt-cache policy PACKAGENAME

显示已安装的软件包列表。

$ dpkg -l

显示已安装软件包中包含的文件。

$ dpkg -L PACKAGENAME

显示包文件(*.deb)中包含的文件。

$ dpkg -c DEBFILENAME

已安装的 *.deb 软件包被缓存在 /var/cache/apt/archives 目录中。

服务状态显示

$ sudo service --status-all

通过以下命令可以查看由Upstart机制管理的服务的状态。

$ sudo initctl list

更改主机名称

更改 /etc/hostname 和 /etc/hosts 并重新启动。
我不知道无需重新启动的方法。

网络设置(静态IP、DNS服务器、路由设置)

在/etc/network/interfaces中进行编写。
通过使用post-up,可以执行任意的命令,因此路由设置是通过它来完成的。

# とあるNIC2枚挿しサーバーの設定例

# The loopback network interface
auto lo
iface lo inet loopback

# LAN
auto eth0
iface eth0 inet static
    address 192.168.17.10
    network 192.168.17.0
    netmask 255.255.255.0
    dns-nameservers 192.168.1.1  # 使用するDNSサーバー名
    dns-search example.org       # DNSサフィックス
    post-up route add -net 192.168.0.0/20 gw 192.168.17.253 # ルート設定

# WAN
auto eth1
iface eth1 inet static
    address 192.168.16.10
    network 192.168.16.0
    netmask 255.255.255.0
    gateway 192.168.16.253

修改后需要重新启动网络。

$ sudo ifdown -a
$ sudo ifup   -a
$ sudo service resolvconf restart    # /etc/resolv.conf に反映

如果你想通过SSH从远程重新启动网络,可以按照这种方式操作。

sudo nohup sh -c "ifdown -a; ifup -a"

一旦失败就不能恢复,必须到机器所在的地方。

时区设置

据说”/etc/localtime”文件是用来设置时区的。(参考)

$ ln -fs /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

如果要用模拟的GUI来完成,可以按照以下方式进行。

$ sudo dpkg-reconfigure tzdata
广告
将在 10 秒后关闭
bannerAds