Linux从入门到放弃

目录
  1. 1、screen 命令
    1. 启动服务器
    2. 切换窗口
    3. 返回服务器窗口
    4. 删除窗口
    5. 方便记忆
  2. 2、更换阿里源

镇楼图

在放弃之前用到哪学到哪就记录到哪,排名不分先后

1、screen 命令

目标:在后台运行Minecraft服务器

bash下测试过,运行Minecraft服务器后按ctrl+z切换任务,多等一会再按fg切换回去,发现Minecraft服务器就停止运行了

解决方法:

可以使用linux内置的screen命令(详细说明参考这里)多窗口运行服务器文件,screen可以让服务器一直保持在后台运行,并且可以随时切换到服务器运行的窗口

启动服务器

root@ThinkPad:~/mcserver# screen ./start.sh

切换窗口

ctrl+z d (先按住ctrl再按z,然后放开ctrl或者不放开都可以,再按d即可)

[detached from 125.tty1.ThinkPad]
root@ThinkPad:~/mcserver#

返回服务器窗口

  • 方法一

如果可以确定只创建了一个新窗口的时候使用-x参数可以直接返回服务器窗口

root@ThinkPad:~/mcserver# screen -x
  • 方法二

如果创建了多个窗口,可以用-ls参数列出所有窗口

root@ThinkPad:~/mcserver# screen -ls
There are screens on:
        178.tty1.ThinkPad       (01/12/2018 03:21:53 PM)        (Detached)
        125.tty1.ThinkPad       (01/12/2018 10:25:57 AM)        (Detached)
2 Sockets in /var/run/screen/S-root.
root@ThinkPad:~/mcserver#

然后使用-r参数加窗口id,返回服务器窗口(上面的125即为窗口id)

root@ThinkPad:~/mcserver# screen -r 125

删除窗口

进入窗口后

  1. 直接结束正在运行的所有程序,即可删除本窗口
  2. 使用快捷键ctrl+a k强行结束正在运行的所有程序,按y确认后即可删除
[screen is terminating]
root@ThinkPad:~/mcserver#

方便记忆

在打开了很多窗口的情况下,窗口id的数字并不能直观的让你对应到你需要的窗口,那么可以给这个窗口起个名字,则使用下面的方法来启动服务器

root@ThinkPad:~/mcserver# screen -S mcserver ./start.sh

root@ThinkPad:~/mcserver# screen -ls

There is a screen on:
        239.mcserver    (01/12/2018 03:42:09 PM)        (Detached)
1 Socket in /var/run/screen/S-root.

这时候,既可以使用窗口id来返回窗口,也可以使用窗口名称

root@ThinkPad:~/mcserver# screen -r 239

root@ThinkPad:~/mcserver# screen -r mcserver

2、更换阿里源

  • 备份sources.list源列表文件
root@ThinkPad:~# cp /etc/apt/sources.list /etc/apt/sources.list.bak
  • 打开文件
root@ThinkPad:~# apt edit-sources
  • 清空文件
:%d (vim编辑器普通模式下)
  • 粘贴下列内容
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
  • 保存文件并退出vim编辑器
esc (返回vim普通模式)
:wq (保存并退出vim)
  • 使用阿里源更新
root@ThinkPad:~# apt update
Hit:1 http://mirrors.aliyun.com/ubuntu xenial InRelease
Hit:2 http://mirrors.aliyun.com/ubuntu xenial-updates InRelease
Hit:3 http://mirrors.aliyun.com/ubuntu xenial-backports InRelease
Hit:4 http://mirrors.aliyun.com/ubuntu xenial-security InRelease
Hit:5 http://archive.ubuntu.com/ubuntu xenial InRelease
Hit:6 http://archive.canonical.com/ubuntu xenial InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
root@ThinkPad:~#
  • 解决问题

如果出现如下提示

** (appstreamcli:970): CRITICAL **: Error while moving old database out of the way.
AppStream cache update failed.

则使用下面的命令

chmod 777 /var/cache/app-info/xapian/default -R

欢迎转载,转载时请注明出处并保持转载后文章内容的完整性