> 文章列表 > Ubuntu学习篇

Ubuntu学习篇

Ubuntu学习篇

前言

环境:Ubuntu 20.4lts
Ubuntu系统跟centos还是有很多区别的,笔者之前一直使用的是centos7.x版本
镜像下载地址:https://ubuntu.com/download/server#downloads
其他版本下载地址:https://launchpad.net/ubuntu/+cdmirrors,这是 Ubuntu推荐的其他镜像下载网站,可以从这里下载其他版本的Ubuntu版本
Ubuntu一般有两种版本,一种是ubuntu-20.04.5-live-server-amd64.iso服务器版本,比较小,只有996M,另外一个是ubuntu-20.04.5-desktop-amd6.iso桌面版本,比较大,有好几个G。
本篇以ubuntu-20.04.5-live-server-amd64.iso服务器版本进行介绍,企业中也是使用服务器版本。

配置固定IP地址

安装时可以直接配置固定的IPv4地址:

             Edit enp0s3 IPv4 configuration
IPv4Method: [Manua]									#选手动
Subnet: 192.168.158.0/24							#按着格式写,255.255.255.0这种写法会报错的
Address: 192.168.158.100							#IP地址
Gateway: 192.168.158.2								#网关
Name servers: 114.114.114.114						#DNS域名服务器地址,多个值以逗号分隔IPaddresses,commaseparated
Search domains:										#可以空着不写Domains,commaseparated[Save     ]								#保存[Cancel   ]

启用root用户登录

#桌面版本启用root登录
# 安装时需要创建一个普通账号,安装完成后可以先使用普通账号登录
sudo passwd root					#启用root账号,给root账号设置密码后还需做下面几步
....输入登录的用户密码
.....输入root密码
.....再次输入root密码
su root
vi /etc/pam.d/gdm-autologin		#打开这个文件,注释掉下面这行
#auth required pam_succeed_if.so user != root quiet_success
vi /etc/pam.d/gdm-password		#打开这个文件,注释掉下面这行
#auth required pam_succeed_if.so user != root quiet_success
重启服务器:reboot才能使用root用户登录
允许root用户远程登录还需要修改sshd服务的配置文件#服务器版本启用root登录
# 安装时需要创建一个普通账号,安装完成后可以先使用普通账号登录
sudo passwd root	#启用root账号,给root账号设置密码即可,因为服务器版本没有/etc/pam.d/gdm-autologin gdm-password文件
....输入登录的用户密码
.....输入root密码
.....再次输入root密码
允许root用户远程登录还需要修改sshd服务的配置文件

ping不通baidu.com,需要配置DNS

vim  /etc/systemd/resolved.conf 文件,在其中添加dns
sudo vi /etc/systemd/resolved.conf;
加入一个新行
DNS=114.114.114.114
systemctl restart systemd-resolved.service

查看,重启网络服务

Ubuntu 18.04开始,Ubuntu和Debian移除了以前的ifup/ifdown命令和/etc/network/interfaces配置文件,转而使用ip link set或者网卡配置文件/etc/netplan/00-installer-config.yaml模板和sudo netplan apply命令实现网络管理,早期的网络管理由network服务向NetworkManager再到netplan转变。netplan作为网络管理的上层工具,可以同时管理NetworkManager和systemd-networkd,前者NetworkManager主要存在于桌面版的Ubuntu中,后者systemd-networkd是存在服务器版本的Ubuntu中。
vim /etc/netplan/00-installer-config.yaml			#网卡配置文件,Ubuntu 18.04以前是 /etc/network/interfaces网卡配置文件
# This is the network config written by 'subiquity'
network:											#固定词ethernets:										#固定词ens33:											#网卡名称叫做ens33,多张网卡就类似的多个ensxxdhcp4: false									#可值true|false,false就是不使用dhcp,那就是静态IP,true就是使用dhcpaddresses:									#IP地址- 192.168.158.190/24							#IP地址+子网掩码gateway4: 192.168.158.2						#网关nameservers:									#定义DNS域名解析addresses: [114.114.114.114]				#DNS服务器search: []version: 2netplan  apply										#应用刚才修改的网络配置文件立即生效
systemctl  start|stop|status systemd-networkd		#启动|停止网络

更改apt源

默认的apt源是Ubuntu的官方apt源,所以安装软件都是去官网的apt源里面查找导致下载速度慢,我们可以更换为国内的apt源,如阿里云的apt源,在这个网站可以看到有很多镜像源https://developer.aliyun.com/mirror/,安装步骤如下:

cp /etc/apt/sources.list /etc/apt/sources.list.backup
echo ''>/etc/apt/sources.list
vim /etc/apt/sources.list				#填写下面这些内容
#ubuntu 20.04(focal) 配置如下
deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverseapt update		#添加了新的apt源之后要更新一下,更新Linux 系统的包索引或包列表,它不会升级任何软件包
解释说明:
源文件可以有多个吗???????源文件以.list结尾
源文件通用格式:
deb http://xxxxx focal   main restricted universe multiverse
第一个是归档类型或者叫做软件包格式,归档类型可以是deb或deb-src,前者是deb包,后者是deb源码包
第二个是软件源的URL地址
第三个是发行版本版本号,例如focal,focal-security等
第四个是软件源分类/组件,一般有一下四种分类:
main:即"基本"组件,其中只包含符合Ubuntu的协议要求并由Ubuntu团队维护支持的软件。
restricted:即"受限"组件,其中包含了非常重要的,但并不具有合适的***协议的软件,如显卡驱动,同样有 Ubuntu团队维护支持。
universe:即"社区维护"组件,其中包含的软件种类繁多,它们可能采用受限于协议,可能不是,但都不为Ubuntu 团队维护。
multiverse:即"非***"组件,其中包括了不符合***软体要求而且不被Ubuntu团队支援的软件,通常为商业公司编写的软件

ISO镜像配置本地apt源

说明:Ubuntu的镜像其实封装了很少deb包,解压后pool目录里面就能看得出来,从镜像大小才900M也可以看的出来,不想centos镜像那样封装了很多rpm包。

mkdir /mnt/iso						#创建挂载目录
mount /opt/ubuntu-20.04.5-live-server-amd64.iso  /mnt/iso/			#上传镜像并进行挂载
mv /etc/apt/sources.list /etc/apt/sources.list_bak					#备份原来的apt源
vim /etc/apt/sources.list	#文件名还是sources.list,文件名是不是固定的?待理解。加入以下内容,根据自己的Ubuntu版本加对应的内容
# 添加本地目录到软件源--16.04,xenial是ubuntu16.04的代号
#deb file:///mnt/iso xenial main restricted
# 添加本地目录到软件源--18.04,bionic是ubuntu18.04的代号
#deb file:///mnt/iso bionic main restricted# 添加本地目录到软件源--20.04,focal是ubuntu20.04的代号
deb file:///mnt/iso focal main restrictedroot@ubuntu:/etc/apt#apt update							#更新apt源,输出下面内容说明apt源配置是成功的
Get:1 file:/mnt/iso focal InRelease
Ign:1 file:/mnt/iso focal InRelease
Get:2 file:/mnt/iso focal Release [1,486 B]
Get:2 file:/mnt/iso focal Release [1,486 B]
Get:3 file:/mnt/iso focal Release.gpg [833 B]
Get:3 file:/mnt/iso focal Release.gpg [833 B]
Get:4 file:/mnt/iso focal/main amd64 Packages [23.6 kB]
Ign:4 file:/mnt/iso focal/main amd64 Packages
Get:4 file:/mnt/iso focal/main amd64 Packages [23.6 kB]
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.

apt命令

dkpg(底层工具)->apt-get(上层工具)->apt(apt-get的再封装),简单来说就是:apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合,所以强烈建议使用apt命令进行安装卸载软件包等操作。

apt update					#更新源,比如官网源仓库添加了一个新的包,但是你本地还没缓存发现这个包,所以使用该命令更新一下本地源索引
apt update <package_name>	#更新指定包
apt install  net-tools -y	#安装软件包
apt install  net-tools -d	#-d表示仅下载不按照,默认下载的包在/var/cache/apt/archives/
apt install ./lsof_xx.deb	#安装本地指定的包,注意要指定路径,不然会找不到包,即使你已经在包当前路径下执行命令也是要指定包路径
apt remove tree -y			#卸载、删除、移除软件包
apt purge <package_name>	#移除软件包及配置文件
apt autoremove				#清理不再使用的依赖和库文件
apt search tree -y			#搜索软件包
apt list | grep tree		#列出已安装的软件包
apt upgrade					#升级软件包
apt upgrade	 package_name	#升级软件包
apt full-upgrade			#升级软件包,升级前先删除需要更新软件包
apt list   					#列出所有包,包括已安装的包、可安装的包
apt list --upgradeable		#列出可更新的软件包及版本信息
apt list --installed 		#列出所有已安装的包
apt show <package_name>		#显示软件包具体信息,例如:版本号,安装大小,依赖关系等等

查看Ubuntu操作系统版本号、内核版本

cat /etc/os-release					#看这个就可以了
lsb_release -a
cat /proc/version
cat /etc/issue
uname -a
uname -r							#内核版本