ubuntu16.04系统设置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gsl371/article/details/79376327

修改启动器位置

Unity启动器不再无法移动。从Ubuntu 16.04开始,用户可以实现改变启动器的位置,可以将启动器移到屏幕底部,但是无法移到右边或顶部。打开终端,然后输入下面这个命令,即可将启动器移到屏幕底部:

gsettings set com.canonical.Unity.Launcher launcher-position Bottom 

如果你使用后,觉得不喜欢,还可以恢复到屏幕左边,只要运行:

gsettings set com.canonical.Unity.Launcher launcher-position Left 

显示桌面

首先打开“系统设置”,单击“外观”,然后单击“行为”,勾选“添加显示桌面图标到启动器”

查询指定软件有多少个版本

说明:在Linux用这个查询并不能完全的把所有版本都列举出来,因为每个版本都与系统版本和CPU架构有关,比如一个软件支持Ubuntu系统的16.04的CPU架构为amd64的版本只有1.0和1.2,其余都不支持,所以列举时就只有两款。

列举版本列表:

0、通过网站搜索:

https://packages.ubuntu.com/

1、

apt-cache madison <<package name>>

将列出所有来源的版本。如下输出所示:

apt-cache madison vim
   vim | 2:7.3.547-1 | http://debian.mirrors.tds.net/debian/ unstable/main amd64 Packages
   vim | 2:7.3.429-2 | http://debian.mirrors.tds.net/debian/ testing/main amd64 Packages
   vim | 2:7.3.429-2 | http://http.us.debian.org/debian/ testing/main amd64 Packages
   vim | 2:7.3.429-2 | http://debian.mirrors.tds.net/debian/ testing/main Sources
   vim | 2:7.3.547-1 | http://debian.mirrors.tds.net/debian/ unstable/main Sources

安装较老版本软件

Ubuntu 16.04 x64 apt-get 最低版本的的jdk是openjdk-8,最低版本的libgif是libgif7。要想安装低版本的软件,最佳的办法是添加ubuntu官方的trusty源,也就是14.04的源即可。
备份原来的源

sudo cp sources.list sources.list.1604

修改源,删除原来的记录,添加老版本源记录
比如,使用清华的源,则在source.list里添加上trusty源,然后就可以apt-get安装了。具体例子如下

  1. vim /etc/apt/source.list

  2. 在文件最下方添加 deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty main

  3. apt-get update

  4. apt-get install openjdk-7

  5. 安装完成,恢复apt源

apt彻底卸载软件

sudo apt remove pkg-name
sudo apt purge pkg-name

wifi频繁掉线

 $ sudo gedit /etc/ppp/options  

lcp-echo-failure次数设为一个较大的数值就行了,默认好像是4,改成40就好了。

转换字符集

如果安装时选择了中文字符集,现在想改成西文字符集。
- 选择系统设置
- 选择语言支持
- 把语言标签页的english(unite states)拉到最上
- 应用到整个系统
- 选择地区格式标签
- 选择english(unite states)
- 应用到整个系统
- 反之亦反

设置开机进入字符终端

  • 修改开机启动项配置
sudo vi /etc/default/grub  

注释掉 GRUB_CMDLINE_LINUX_DEFAULT=”quiet” 这行, 即 #GRUB_CMDLINE_LINUX_DEFAULT=”quiet”
把GRUB_CMDLINE_LINUX=”” 改为 GRUB_CMDLINE_LINUX=”text”
去掉 #GRUB_TERMINAL=console 的注释,即 GRUB_TERMINAL=console

  • 更新开机启动配置
sudo update-grub  
  • 查看运行级别
$ systemctl get-default 
graphical.target
  • 修改运行级别
sudo systemctl set-default multi-user.target 
  • 重启系统
sudo reboot
  • 切换回桌面模式
sudo systemctl start lightdm 

增加磁盘空间

查看现有磁盘分区

sudo fdisk -l

下面新增分区:

$ sudo fdisk /dev/sda
> 输入m可查看命令帮助[可选操作]

>  输入n,新增分区,分区类型可选:p primary; l logic

>  输入p,分区号选择3或4,1和2系统已占用

>  输入起始扇区和结束扇区,一般默认即可。特殊情况下,需根据已有分区扇区使用情况确定。如上图中三个分区,那么起始扇区可以设置在 /dev/sda2结束分区之后,

    /dev/sda2 结束扇区为 41940991,那么新分区的起始扇区需要比它大,如:41940995. 结束扇区默认即可

>  输入w,保存修改

使分区生效

$ sudo partprobe 

查看刚才新建的分区

$ sudo fdisk -l 

设置分区的文件系统类型

$ sudo mkfs.ext3 /dev/sda3 

现在,系统磁盘已经准备好,只需要把磁盘挂载到某个文件目录下即可。

例如:在 home 下新建disk1作为这块磁盘挂载点[可挂到根目录文件 /diskname]

$ mkdir disk1

$ sudo mount /dev/sda3 /home/scfdeveloper/disk1

修改disk1所有者

sudo chown -R gsl:gsl /home/scfdeveloper/disk1

设置开机磁盘自动挂载

$ vi /etc/fstab

添加行

/dev/sda3 /home/scfdeveloper/disk1 ext3 defaults, 0 1

此时,磁盘已经挂好,下面查看挂好的磁盘
这里写图片描述

命令行方式安装tv

图形界面安装比较简单,命令行方式适合ssh远程登录设备的安装。
对于Debian, Mint, Ubuntu, Kubuntu, Xubuntu…系统
For modern DEB-systems (32/64-bit) you need the teamviewer_i386.deb package.

For installing TeamViewer, we recommend using the graphical installer, as described above.

Installation via command line
If you prefer to use the command line, or if there is no graphical installer available, you can use one of these commands as an administrator:

  • 获取安装包
wget https://download.teamviewer.com/download/teamviewer_i386.deb
  • 安装
apt install teamviewer_12.0.xxxxx_i386.deb 

Older systems (Ubuntu 14.04, Debian 7 and below)
Run this command:

  • ubuntu16.04也需要使用下面命令
dpkg -i teamviewer_12.0.xxxxx_i386.deb 

In case dpkg indicates missing dependencies, complete the installation by executing the following command:

  • 处理依赖
apt-get install -f 
  • 查看信息
$ teamviewer --info

 TeamViewer                           12.0.90041  (DEB) 

 teamviewerd status                   ● teamviewerd.service - TeamViewer remote control daemon
   Loaded: loaded (/etc/systemd/system/teamviewerd.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2018-02-26 14:46:36 CST; 16s ago
  Process: 3271 ExecStart=/opt/teamviewer/tv_bin/teamviewerd -d (code=exited, status=0/SUCCESS)
 Main PID: 3273 (teamviewerd)
   CGroup: /system.slice/teamviewerd.service
           └─3273 /opt/teamviewer/tv_bin/teamviewerd -d

也可用这个命令来查看,和centos一致

$ systemctl status teamviewerd.service
  • 获得帮助
$ teamviewer help
  • 接受许可
$ teamviewer license accept
  • 设置非GUI控制台模式
$ teamviewer setup
Welcome to TeamViewer configuration.


This short guide helps you to setup TeamViewer on this device. After you have successfully 
finished the setup, this device will automatically be available in your Computers &        
Contacts.

需要注册帐号,添加信任设备等

  • 列表内容

设置口令

$ teamviewer passwd [PASSWD] 
  • 设置随系统启动
$ teamviewer daemon enable

开启telnet服务

1、首先查看telnet运行状态

#netstat -a | grep telnet

输出为空,表示没有开启该服务

2、安装openbsd-inetd

#apt-get install openbsd-inetd

如果已经安装过了,会提示已经安装过了,直接执行下面的步骤就可以了。

3、安装telnetd

#apt-get install telnetd

安装完之后,查看/etc/inetd.conf的内容会多了一行telnet stream tcp nowait telnetd /usr/sbin/tcpd /usr/sbin/in.telnetd

#cat /etc/inetd.conf  | grep telnet

输出: telnet stream tcp nowait telnetd /usr/sbin/tcpd /usr/sbin/in.telnetd

4、重启openbsd-inetd

# /etc/init.d/openbsd-inetd restart

输出:* Restarting internet superserver inetd

5、查看telnet运行状态

#netstat -a | grep telnet

输出:tcp  0  0 :telnet  :*  LISTEN

此时表明已经开启了telnet服务。

6、telnet登陆测试

#telnet 127.0.0.1

输出:

Trying 127.0.0.1…
Connected to 127.0.0.1.
Escape character is ‘^]’. (停在这里的时候要按Ctrl+] 然后回车)

telnet> (表示登陆成功)

开启ssh服务

  • 安装服务
sudo apt install openssh-server
  • 启动
sudo service ssh start
或
sudo systemctl start ssh.service
  • 查看是否安装ssh服务
sudo ps -e | grep ssh
或者
sudo service ssh status
或
sudo systemctl status ssh.service
  • 配置开机启动:
sudo systemctl enable ssh.service
  • 修改默认端口:
sudo vim /etc/ssh/sshd_config

找到Port 22,然后改成相应的端口。建议先保留22端口的。后面连接成功了之后再删除22端口,保险起见。
这里写图片描述

  • 重启服务
sudo service ssh restart
  • 查看状态
netstat -an | grep "LISTEN "

这里写图片描述

  • 列表内容

用端口进行连接

ssh username@ip -p 50022

连接成功之后记得把22端口去除

配置ssh免密登录

公钥和私钥原理

公钥和私钥就是俗称的不对称加密方式,是从以前的对称加密(使用用户名与密码)方式的提高。我用电子邮件的方式说明一下原理。
使用公钥与私钥的目的就是实现安全的电子邮件,必须实现如下目的:
1. 我发送给你的内容必须加密,在邮件的传输过程中不能被别人看到。
2. 必须保证是我发送的邮件,不是别人冒充我的。
要达到这样的目标必须发送邮件的两人都有公钥和私钥。
公钥,就是给大家用的,你可以通过电子邮件发布,可以通过网站让别人下载,公钥其实是用来加密/验章用的。私钥,就是自己的,必须非常小心保存,最好加上密码,私钥是用来解密/签章,首先就Key的所有权来说,私钥只有个人拥有。公钥与私钥的作用是:用公钥加密的内容只能用私钥解密,用私钥加密的内容只能用公钥解密。
比如说,我要给你发送一个加密的邮件。首先,我必须拥有你的公钥,你也必须拥有我的公钥。
首先,我用你的公钥给这个邮件加密,这样就保证这个邮件不被别人看到,而且保证这个邮件在传送过程中没有被修改。你收到邮件后,用你的私钥就可以解密,就能看到内容。
其次我用我的私钥给这个邮件加密,发送到你手里后,你可以用我的公钥解密。因为私钥只有我手里有,这样就保证了这个邮件是我发送的。
当A->B资料时,A会使用B的公钥加密,这样才能确保只有B能解开,否则普罗大众都能解开加密的讯息,就是去了资料的保密性。验证方面则是使用签验章的机制,A传资料给大家时,会以自己的私钥做签章,如此所有收到讯息的人都可以用A的公钥进行验章,便可确认讯息是由 A 发出来的了。

免密登录是第二种情况, 交互验证的细节如下:
1、客户端请求连接服务器,服务器将一个随机字符串发送给客户端
2、客户端根据自己的私钥加密这个随机字符串之后再发送给服务器
3、服务器接受到加密后的字符串之后用公钥解密,如果正确就让客户端登录,否则拒绝。这样就不用使用密码了。

ssh免密码登录配置方法

客户端即生成RSA公钥和私钥:

一般在用户的根目录新建一个.ssh/.文件夹,在文件夹中通过ssh-keygen -t rsa命令来产生一组公私钥。

$ ssh-keygen -t rsa

默认生成~/.ssh目录。其中生成两个文件如下:

$ ls
id_rsa  id_rsa.pub

id_rsa是私钥,id_rsa.pub是公钥,公钥需要放到免密登录的服务器。
使用以下命令即可,以下命令直接在服务器端建立了目录和生成响应文件。

$ ssh-copy-id -i id_rsa.pub gsl@192.168.122.24
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_rsa.pub"
The authenticity of host '192.168.122.24 (192.168.122.24)' can't be established.

报了个错误,强制执行,后面的错误可能和这个有关。
也可用scp考过去,但比较复杂,还需要在服务器建立.ssh目录和相应文件,及修改文件。
服务器端建立的目录和文件如下:

~/.ssh$ ls
authorized_keys

登录成功后,这里也会产生一个文件,know_hosts : 已知的主机公钥清单,这个作为A端和B端都会自动生成这个文件,每次和远端的服务器进行一次免密码ssh连接之后就会在这个文件的最后追加对方主机的信息(不重复)
尝试登录

$ ssh gsl@192.168.122.24
sign_and_send_pubkey: signing failed: agent refused operation
gsl@192.168.122.24's password: 

仍然需要密码,签名失败,代理拒绝,使用以下命令,adds private key identities to the authentication agent

$ ssh-add
Enter passphrase for /home/gsl/.ssh/id_rsa: 
Identity added: /home/gsl/.ssh/id_rsa (/home/gsl/.ssh/id_rsa)

再copy下

$ ssh-copy-id -i id_rsa.pub gsl@192.168.122.24
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

/usr/bin/ssh-copy-id: WARNING: All keys were skipped because they already exist on the remote system.
        (if you think this is a mistake, you may want to use -f option)

提示没有必要,再登录

$ ssh gsl@192.168.122.24
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.13.0-36-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

151 packages can be updated.
0 updates are security updates.

已经不需要密码了。
如果嫌每次连接的时候很麻烦,我们可以在客户端,利用 ssh 的用户配置文件 config 管理 多个免密码ssh 会话。ssh 的用户配置文件是放在当前用户根目录下的 .ssh 文件夹里(~/.ssh/config,不存在则新创建一个),其配置写法如下:

Host    别名

    HostName        主机名

    Port            端口

    User            用户名

    IdentityFile    密钥文件的路径

这里写图片描述
配置完后我们就可以通过这种方式登录了

$ ssh web01test

如果想要获得最大化的安全性,禁止口令登录,可以修改服务器上/etc/ssh/sshd_config中的
PasswordAuthentication yes 改为
PasswordAuthentication no
也即只能使用密匙认证的openssh,禁止使用口令认证。

tmate通过ssh共享终端

  • 什么是 tmate?

tmate 的意思是 teammates,它是 tmux 的一个分支,并且使用相同的配置信息(例如快捷键配置,配色方案等)。它是一个终端多路复用器,同时具有即时分享终端的能力。它允许在单个屏幕中创建并操控多个终端,同时这些终端还能与其他同事分享。

你可以分离会话,让作业在后台运行,然后在想要查看状态时重新连接会话。tmate 提供了一个即时配对的方案,让你可以与一个或多个队友共享一个终端。

在屏幕的地步有一个状态栏,显示了当前会话的一些诸如 ssh 命令之类的共享信息。

  • tmate 是怎么工作的?

运行 tmate 时,会通过 libssh 在后台创建一个连接到 tmate.io (由 tmate 开发者维护的后台服务器)的 ssh 连接。
tmate.io 服务器的 ssh 密钥通过 DH 交换进行校验。
客户端通过本地 ssh 密钥进行认证。
连接创建后,本地 tmux 服务器会生成一个 150 位(不可猜测的随机字符)会话令牌。
队友能通过用户提供的 SSH 会话 ID 连接到 tmate.io。
使用 tmate 的必备条件
由于 tmate.io 服务器需要通过本地 ssh 密钥来认证客户机,因此其中一个必备条件就是生成 SSH 密钥 key。 记住,每个系统都要有自己的 SSH 密钥。

  • 如何安装 tmate

tmate 已经包含在某些发行版的官方仓库中,可以通过包管理器来安装。

对于 Debian/Ubuntu,可以使用 APT-GET 命令或者 APT 命令to 来安装。

$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:tmate.io/archive
$ sudo apt-get update
$ sudo apt-get install tmate

你也可以从官方仓库中安装 tmate。

$ sudo apt-get install tmate

对于 Fedora,使用 DNF 命令 来安装。

$ sudo dnf install tmate

对于基于 Arch Linux 的系统,使用 Yaourt 命令或 Packer 命令 来从 AUR 仓库中安装。

$ yaourt -S tmate

$ packer -S tmate

对于 openSUSE,使用 Zypper 命令 来安装。

$ sudo zypper in tmate
  • 如何使用 tmate

成功安装后,打开终端然后输入下面命令,就会打开一个新的会话,在屏幕底部,你能看到 SSH 会话的 ID。

$ tmate

要注意的是,SSH 会话 ID 会在几秒后消失,不过不要紧,你可以通过下面命令获取到这些详细信息。

$ tmate show-messages

tmate 的 show-messages 命令会显示 tmate 的日志信息,其中包含了该 ssh 连接内容。

现在,分享你的 SSH 会话 ID 给你的朋友或同事从而允许他们观看终端会话。除了 SSH 会话 ID 以外,你也可以分享 web URL。

另外你还可以选择分享的是只读会话还是可读写会话。

  • 如何通过 SSH 连接会话

只需要在终端上运行你从朋友那得到的 SSH 终端 ID 就行了。类似下面这样。


$ ssh session: ssh 3KuRj95sEZRHkpPtc2y6jcokP@sg2.tmate.io

猜你喜欢

转载自blog.csdn.net/gsl371/article/details/79376327