ubuntu server安装的一些坑
【没有root用户】
ubuntu server安装的时候要你新建一个用户,安装完成后,你需要手动开启root。
$ sudo passwd root
输入你当前用户的密码
输入你希望的root用户的密码
确认密码
【更新源之后的各种操作】
apt-get update |
下载源里面的metadata的. 包括这个源有什么包, 每个包什么版本之类的. |
apt-get upgrade |
根据update命令下载的metadata决定要更新什么包(同时获取每个包的位置). |
apt-get dist-upgrade |
可以聪明的解决相依性的问题,如果有相依性问题,需要安装/移除新的Package,就会试着去安装/移除它. (所以通常这个会被认为是有点风险的升级) |
ps:安装软件之前, 可以不upgrade, 但是要update. 因为旧的信息指向了旧版本的包, 但是源的服务器更新了之后旧的包可能被新的替代了, 于是你会遇到404…
apt-get upgrade 和 apt-get dist-upgrade 本质上是没有什么不同的。
只不过,dist-upgrade 会识别出当依赖关系改变的情形并作出处理,而upgrade对此情形不处理。
例如软件包 a 原先依赖 b, c ,d,但是在源里面可能已经升级了,现在是 a 依赖 b ,c, e。
这种情况下,dist-upgrade 会删除 d 安装 e,并把 a 软件包升级,而 upgrade 会认为依赖关系改变而拒绝升级 a 软件包。
或者安装指定版本的依赖软件:
装一个依赖的指定版本的 openssh-client (旧版):
apt-get install openssh-client=1:5.9p1-5ubuntu1
【Permission denied,please try again】
vim /etc/ssh/sshd_config
将PermitRootLogin no/without-password 改为 PermitRootLogin yes,然后重启sshd服务。
【修改时区】
timedatectl set-timezone Asia/Shanghai
【resolveconf状态显示错误】
root@slb2:/var/log# systemctl start resolvconf.service
Failed to start resolvconf.service: Unit resolvconf.service is masked.
先umask,再重启
root@slb2:/var/log# systemctl unmask resolvconf.service
Removed /etc/systemd/system/resolvconf.service.
root@slb2:/var/log# systemctl start resolvconf.service