Ubuntu Server20.04.5 LTS

【参考资料】

Ubuntu官方地址:https://www.ubuntu.com/

Ubuntu论坛地址:https://ubuntuforums.org/

Ubuntu Wiki地址:https://wiki.ubuntu.com/

Ubuntu帮助地址:https://help.ubuntu.com/

Ubuntu邮件列表地址:https://discourse.ubuntu.com/t/mailing-lists/https://ubuntu.com/server/docs)

1.下载Ubuntu镜像

官网下载:https://releases.ubuntu.com/

国内镜像下载:

华为镜像:https://repo.huaweicloud.com/ubuntu-releases/

阿里镜像:http://old-releases.ubuntu.com/releases/

2.安装

官网安装教程:https://ubuntu.com/server/docs/install/step-by-step

博客:

http://t.csdn.cn/aDPUu

2.1 网络配置(静态IP配置)

  • 静态IP设置方法,点击ens33 然后选择ipv4、

  • 点击Manual 手动添加ip地址

    • subnet:192.168.x.xxx/24 (子网掩码)
    • address:192.168.x.xxx(静态IP地址)
    • Geteway:192.168.x.1(网关)
    • Name servers:(DNS服务器地址:)
    • search domains:
    华为云DNS    122.112.208.1	139.9.23.90
    114.115.192.11 116.205.5.1
    116.205.5.30 122.112.208.175

2.2 设置镜像源地址

国内镜像地址:

华为源:https://mirrors.huaweicloud.com/ubuntu/

阿里源 http://mirrors.aliyun.com/ubuntu/

网易163 http://mirrors.163.com/ubuntu/

2.3 磁盘分区

/boot:这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
/home:用户的主目录
/srv:该目录存放一些服务启动之后需要提取的数据。
/usr:应用程序 /boot 2G
/ 其他
/bin:
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 /boot:
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 /dev :
dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。 /etc:
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。 /home:
用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 /lib:
lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。 /lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 /media:
linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。 /mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。 /opt:
opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 /proc:
proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器: echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。 /sbin:
s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 /selinux:
这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 /srv:
该目录存放一些服务启动之后需要提取的数据。 /sys: 这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。 sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。 该文件系统是内核设备树的一个直观反映。 当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。 /tmp:
tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。 /usr:
usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。 /usr/bin:
系统用户使用的应用程序。 /usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。 /usr/src:
内核源代码默认的放置目录。 /var:
var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 /run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

2.4 设置主机用户名与密码及服务器名称

2.5 安装 SSH服务

2.6 选择预置服务安装

# 设置root密码
sudo passwd # 添加用户
adduser -m 【用户名】
# 设置密码
passwd 【用户名】
#修改用户
usermod [参数] 【用户名】
#创建用户组
groupadd【参数】【用户组名】
#修改组
groupmod【参数】【用户组名】
# 删除用户组
groupdel 【用户组名】 #硬盘挂载

3.webmin

【官网】https://webmin.com/

apt-get install webmin

wget https://sourceforge.net/projects/webadmin/files/webmin/2.021/webmin_2.021_all.deb

dpkg --install webmin_2.021_all.deb

[依赖安装]

Webmin默认安装到/usr/share/webmin
访问地址:ip:10000 配置:

4.ufw

https://blog.csdn.net/fd214333890/article/details/115410168

# 列举出你系统上所有的应用配置
sudo ufw app list # 在启用 UFW 防火墙之前,你必须显式允许进来的 SSH 连接。否则,你将永远都无法连接到机器上
sudo ufw allow OpenSSH
#开启关闭ufw服务
systemctl start ufw
systemctl stop ufw
#禁用 启用ufw服务
systemctl disable ufw
systemctl enable ufw
# 开启关闭ufw
ufw enable
ufw disable # 默认禁止
ufw default deny
# 默认允许
ufw default allow # 状态
ufw status verbose # 开端口
ufw allow port_number/protocol

5.samba

sudo apt-get update
sudo apt-get install samba
# 配置防火墙
sudo ufw allow Samba
# 创建用户 用配置密码, 密码用专门的smbpasswd命令进行设置
sudo useradd sbuser
sudo smbpasswd -a sbuser
#创建要共享的文件夹
$ sudo mkdir /disk
# 修改文件夹的所有者与上面新建的用户一致, 否则会导致没有权限进行访问
$ sudo chown sbuser /disk
# 配置samba
$ sudo vim /etc/samba/smb.conf [home] #共享名,该共享标签,可随意取,该名字为在其他电脑上看到的共享名
comment = home directories #该共享描述
path = /disk #共享路径
public = yes #指定该共享是否允许guest账户访问
writable = yes #writable用来指定该共享路径是否可写
valid users = 用户名 #设置访问用户
valid users = @组名 #设置访问组
readonly = no #读写
browseable = yes #可以被所有用户浏览到资源名称, # 重启samba服务
sudo systemctl restart smbd reboot

6.docker

https://hub.docker.com/

7.aria2

https://hub.docker.com/r/p3terx/aria2-pro

https://zhuanlan.zhihu.com/p/466573640

https://p3terx.com/archives/docker-aria2-pro.html

对以上映射的目录进行用户权限设置,aria2c 核心进程会以所设定的用户运行。当使用非 root 用户进行管理时非常重要,这关乎到安全性和文件是否能正常访问。你不应该错过这个细节,否则可能导致不必要的麻烦。

  • -e PUID=$UID - 用户映射。设置文件管理账户的UID(用户 ID)。忽略则默认为nobady用户,并权限最大化。
  • -e PGID=$GID - 用户组映射。设置文件管理账户的GID(用户组 ID)。忽略则默认为nogroup用户组,并权限最大化。

科普: 在常规的 Linux 发行版中$UID$GID这两个环境变量分别为当前登录账户的UIDGID值,所以通过 CLI 启动容器可以直接使用这两个变量。但需要注意可能有部分系统$GID没有被定义。

# 替换<TOKEN>字段(RPC密钥)
docker run -d \
--name aria2-pro \
--restart unless-stopped \
--log-opt max-size=1m \
--network host \
-e PUID=$UID \
-e PGID=$GID \
-e RPC_SECRET=<TOKEN> \
-e RPC_PORT=6800 \
-e LISTEN_PORT=6888 \
-v $PWD/aria2-config:/config \
-v $PWD/aria2-downloads:/downloads \
p3terx/aria2-pro docker run -d \
--name ariang \
--log-opt max-size=1m \
--restart unless-stopped \
-p 6880:6880 \
p3terx/ariang

8.plex

https://ubunlog.com/zh-CN/plex%E4%BB%8B%E8%B4%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%AE%89%E8%A3%85ubuntu-20-04/

https://linuxize.com/post/how-to-install-plex-media-server-on-ubuntu-20-04/

https://www.plex.tv/media-server-downloads/#plex-media-server

#[方式1] 使用.deb文件
# 下载
wget https://downloads.plex.tv/plex-media-server-new/1.32.0.6918-6f393eda1/debian/plexmediaserver_1.32.0.6918-6f393eda1_amd64.deb?_gl=1*16kkgdv*_ga*MTAyNzU4MzUzNi4xNjgxNTgxNTI5*_ga_G6FQWNSENB*MTY4MTU5MTA5OC4zLjEuMTY4MTU5MjMzMi4wLjAuMA..
# 安装
sudo dpkg -i
# 检查程序状态
sudo systemctl status plexmediaserver.service # 卸载
sudo apt remove plemediaserver #[方式2]使用Plex存储库
# 从存储库导入GPG密钥
curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -
# 将存储库添加到系统
echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list sudo apt update sudo apt install plexmediaserver sudo systemctl status plexmediaserver.service sudo apt remove plexmediaserver # 访问地址
http://direccion-ip:32400/web

9.emby

10.NextCloud

11.Kodi

官网:http://www.kodiplayer.cn/

11.1 Android电视安装Kodi

adb

打开电视的adb调试开关
  进入设置 > 系统 > 系统信息,遥控器依次按下“上”、“下”、“左”、“右”,即可看到页面中跳出adb开关,将ADB设为开启状态. adb devices adb connect ip:5555 adb shell # 打开第三方应用安装权限
setprop persist.tcl.debug.installapk 1
setprop persist.tcl.installapk.enable 1 exit退出 adb install xxx.apk

11.2 Kodi安装Plex插件

安装Plex插件:http://www.kodiplayer.cn/plugins/2918.html

FFMpeg

https://blog.csdn.net/annjeff/article/details/105748428


jellyfin

可道云

Ubuntu Server搭建个人服务器的更多相关文章

  1. Ubuntu server 搭建Git server

    Ubuntu server 搭建Git server,git相比svn,最主要就是分布式了,每个客户端用户的本地都是一个版本管理控制器. Ubuntu server 版本为12.04 搭建步骤如下: ...

  2. Ubuntu Server搭建svn服务以及迁移方法【转】

    转自:http://www.linuxidc.com/Linux/2013-05/84693.htm Ubuntu Server搭建svn服务以及迁移方法 采用apache+svn,http访问方式. ...

  3. Ubuntu server 搭建Git server【转】

    转自:http://www.cnblogs.com/candle806/p/4064610.html Ubuntu server 搭建Git server,git相比svn,最主要就是分布式了,每个客 ...

  4. windows 下使用 Filezilla server 搭建 ftp 服务器

    windows 下使用 Filezilla server 搭建 ftp 服务器 1. Filezilla server 免费,开源, ftp 服务端 2. 下载安装, windows  https:/ ...

  5. 在Ubuntu下搭建FTP服务器的方法

    由于整个学校相当于一个大型局域网,相互之间传送数据非常快,比如要共享个电影,传点资料什么的. 所以我们可以选择搭建一个FTP服务器来共享文件. 那么问题来了,有的同学会问,我们既然在一个局域网内,直接 ...

  6. Ubuntu上搭建Git服务器

    下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无 ...

  7. Ubuntu下搭建FTP服务器

    Ubuntu下搭建FTP服务器 我装的服务器系统是Ubuntu 12.04 LTS,FTP软件当然是选择大名鼎鼎的vsftpd(very secure FTP daemon), 用系统自带的FTP还好 ...

  8. Windows10环境下使用VisualSVN server搭建SVN服务器

    参考: Windows10环境下使用VisualSVN server搭建SVN服务器 要搭建个svn用.之前自己的服务器用的乌龟.后来用了这个VisualSVN server. 具体教程见上链接.暂无 ...

  9. ubuntu下搭建svn服务器

    [ubuntu下搭建svn服务器] 1.创建目录 mkdir ~/svn/repository/ 2.创建仓库 svnadmin create repository 3.进入 repository/c ...

  10. 在Ubuntu中搭建KMS服务器

    介绍 基于vlmcsd搭建的KMS服务器. 根据github上的说明,这个工具是用C写的,没有任何依赖,可以直接运行.而且它横跨几乎现在所有的系统平台,如Android, FreeBSD, Solar ...

随机推荐

  1. 数据库自动备份,crontab定时任务

    查看crontab运行状态service crond status 查看当前用户的crontab,输入 crontab -l: 编辑crontab,输入 crontab -e: 删除crontab,输 ...

  2. IO在指定目录建文件

    path= "d:\\Project\\log\\log.txt"; File file = new File(path); //创建文件目录 if(!file.getParent ...

  3. Rfost的自我介绍+软工五问

    自我介绍+软工五问 问题 解答 这个作业属于哪个课程 网工1934-软件工程 这个作业要求在哪里 作业要求 这个作业的目标 让学生对软件工程有个初步的了解,同时掌握基础的markdown语法和博客园的 ...

  4. CentOS7 使用Mariadb 安装 hive

    前提:已成功安装hadoop ──────────1. MariaDB安装 ──────────第一步 参照以下内容安装MariaDBhttps://www.linuxprobe.com/chapte ...

  5. ssh双击互信

    默认公钥文件/root/.ssh/id_rsa.pub默认私钥文件/root/.ssh/id_rsa 只有将公钥文件文件拷到其他的服务器上才能登录别的服务器.   服务器A 192.168.1.133 ...

  6. 04-Spring中的AOP编程之基于xml开发

    AOP编程 ​ AOP为Aspect Oriented Programming的缩写,意为:面向切面编程.利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的 ...

  7. 使用arcgis按掩膜批量处理MODIS.tif数据提取研究区.shp边界的python代码

    在输入代码之前,需要先用arcgis把需要处理的数据导入,再把研究区shp导入,然后定义投影,先掩膜处理一个数据,再进行下一步输入代码批量处理数据的步骤.如果 不先定义投影,可能会出现输入代码不执行的 ...

  8. SpringBoot3.0 + SpringSecurity6.0+JWT

    JWT_SpringSecurity SpringBoot3.0 + SpringSecurity6.0+JWT Spring Security 是 Spring 家族中的一个安全管理框架. 一般We ...

  9. 对于实现上一篇遇到的问题——MyBatis+增删改查(已解决)

    问题一:该Http不支持Get/Post方法 我根据网上的解决方法将Get和Post的位置来回换,还是不停报错: 后来偶然间看到一个博主发的"你的代码写在Get或者Post里面,就将没写代码 ...

  10. PyQt-Fluent-Widgets:一个 Fluent Design 风格的组件库

    简介 这是一个使用 PyQt/PySide 编写的 Fluent Design 风格的组件库,包含最常用的组件,支持亮暗主题无缝切换.实际上此项目是从 Groove Music 项目剥离出来的子项目, ...