分享交流
合作共赢!

Linux常用基础命令使用总结【三】

参考琼杰笔记:

Linux常用基础命令使用总结【一】

Linux常用基础命令使用总结【二】

一、linux压缩和解压缩命令

tar
解包:tar zxvf filename.tar
打包:tar czvf filename.tar dirname

gz命令
解压1:gunzip filename.gz
解压2:gzip -d filename.gz
压缩:gzip filename

.tar.gz 和  .tgz
解压:tar zxvf filename.tar.gz
压缩:tar zcvf filename.tar.gz dirname
压缩多个文件:tar zcvf filename.tar.gz dirname1 dirname2 dirname3…..

bz2命令
解压1:bzip2 -d filename.bz2
解压2:bunzip2 filename.bz2
压缩:bzip2 -z filename

.tar.bz2

解压:tar jxvf filename.tar.bz2
压缩:tar jcvf filename.tar.bz2 dirname

bz命令
解压1:bzip2 -d filename.bz
解压2:bunzip2 filename.bz
.tar.bz
解压:tar jxvf filename.tar.bz

z命令
解压:uncompress filename.z
压缩:compress filename
.tar.z
解压:tar zxvf filename.tar.z
压缩:tar zcvf filename.tar.z dirname

zip命令
解压:unzip filename.zip
压缩:zip -r filename.zip dirname

rar命令

在 http://www.rarsoft.com/download.htm 下载 linux 版本的 rarlinux,如64位的rarlinux-x64-5.3.0.tar.gz

rar 或者 unrar 命令压缩和解压

解压命令:unrar  x   file.rar
压缩命令:rar a test test*       #压缩文件

其他Linux压缩和解压方法参考:Linux 下解压 rar 文件的方法总结

二、测试端口连通性的四种方法

1.telnet

telnet为用户提供了在本地计算机上完成远程主机工作的能力,因此可以通过telnet来测试端口的连通性,具体用法格式:

telnet ip port

说明:
ip:是测试主机的ip地址
port:是端口,比如80

2. ssh

SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,在linux上可以通过ssh命令来测试端口的连通性,具体用法格式如下:

ssh -v -p port username@ip

说明:
-v 调试模式(会打印日志)
-p 指定端口
username:远程主机的登录用户
ip:远程主机

3.curl

curl是利用URL语法在命令行方式下工作的开源文件传输工具。也可以用来测试端口的连通性,具体用法:

curl ip:port

说明:
ip:是测试主机的ip地址
port:是端口,比如80

4.wget

wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合,它也可以用来测试端口的连通性具体用法:

wget ip:port

说明:
ip:是测试主机的ip地址
port:是端口,比如80

5.端口扫描

TCP端口扫描

# nc -v -z -w2 192.168.0.3 1-100 
192.168.0.3: inverse host lookup failed: Unknown host
(UNKNOWN) [192.168.0.3] 80 (http) open
(UNKNOWN) [192.168.0.3] 23 (telnet) open
(UNKNOWN) [192.168.0.3] 22 (ssh) open

扫描192.168.0.3 的端口 范围是 1-100

扫描UDP端口

# nc -u -z -w2 192.168.0.1 1-1000 //扫描192.168.0.3 的端口 范围是 1-1000

扫描指定端口

# nc -nvv 192.168.0.1 80 //扫描 80端口
(UNKNOWN) [192.168.0.1] 80 (?) open
y  //用户输入

三、traceroute命令(路由跟踪)

1.Linux

traceroute程序完整过程:首先它发送一份TTL字段为1的IP数据包给目的主机,处理这个数据包的第一个路由器将TTL值减1,然后丢弃该数据报,并给源主机发送一个ICMP报文(“超时”信息,这个报文包含了路由器的IP地址,这样就得到了第一个路由器的地址),然后traceroute发送一个TTL为2的数据报来得到第二个路由器的IP地址,继续这个过程,直至这个数据报到达目的主机。

1.命令格式:

traceroute [参数] [主机]

2.命令功能:
traceroute指令让你追踪网络数据包的路由途径,预设数据包大小是40Bytes,用户可另行设置。
具体参数格式:traceroute [-dFlnrvx][-f<存活数值>][-g<网关>…][-i<网络界面>][-m<存活数值>][-p<通信端口>][-s<来源地址>][-t<服务类型>][-w<超时秒数>][主机名称或IP地址][数据包大小]

3.命令参数:
-d 使用Socket层级的排错功能。
-f 设置第一个检测数据包的存活数值TTL的大小。
-F 设置勿离断位。
-g 设置来源路由网关,最多可设置8个。
-i 使用指定的网络界面送出数据包。
-I 使用ICMP回应取代UDP资料信息。
-m 设置检测数据包的最大存活数值TTL的大小。
-n 直接使用IP地址而非主机名称。
-p 设置UDP传输协议的通信端口。
-r 忽略普通的Routing Table,直接将数据包送到远端主机上。
-s 设置本地主机送出数据包的IP地址。
-t 设置检测数据包的TOS数值。
-v 详细显示指令的执行过程。
-w 设置等待远端主机回报的时间。
-x 开启或关闭数据包的正确性检验。

2.Windows系统用tracert命令,

如下(后面也可以跟域名):从左到右的5条信息分别代表了“生存时间”(每途经一个路由器结点自增1)、“三次发送的ICMP包返回时间”(共计3个,单位为毫秒ms)和“途经路由器的IP地址”(如果有主机名,还会包含主机名)。

四、Linux锁定用户和解锁用户

1、禁止个别用户登录。比如禁止lynn用户登录。
passwd -l test
这就话的意思是锁定test用户,这样该用户就不能登录了。
passwd -u test
对锁定的用户lynn进行解锁,用户可登录了。

2、我们通过修改/etc/passwd文件中用户登录的shell
vi /etc/passwd
test:x:500:500::/home/test:/bin/bash
更改为:
test:x:500:500::/home/lynn:/sbin/nologin
该用户就无法登录了。

3、查看用户是否被锁定
passwd -S 用户名

4、禁止所有用户登录。
touch /etc/nologin
除root以外的用户不能登录了!

五、不同Linux主机之间的文件复制

常见的方法有两种:

1.使用FTP,也就是其中一台Linux安装ftp Server,这样可以另外一台使用ftp的client程序来进行文件的copy。
2.使用scp命令,scp是有Security的文件copy,基于ssh登录。此方法操作起来比较方便,为了传输更快,最好操作之前先将文件压缩。
A.把当前一个文件copy到远程另外一台主机上,可以如下命令:
scp /home/wwwroot/shop.tar.gz root@192.168.230.128:/home/root
然后会提示你输入另外那台192.168.230.128主机的root用户的登录密码,接着就开始copy了。
B.把文件从远程主机copy到当前系统,可以如下命令:
scp root@/shop.tar.gz 192.168.230.128:/home/root/shop.tar.gz home/wwwroot/shop.tar.gz
实例如下【亲测可用】:
scp root@130.147.219.35:/opt/package/zabbix-agent-3.0.9-1.el6.x86_64.rpm /opt/package/

六、linux 添加用户并添加ssh公钥认证

uesradd -m dev
passwd dev (可省略)
su - dev (加横线为使用dev环境变量,不加则使用root环境变量)
cd /home/dev
mkdir .ssh
chmod -r 700 .ssh
cd .ssh && touch authorized_keys
cat id_rsa.pub > authorized_keys (将客户机的公钥添加到此文件中)
chmod 600 authorized_keys
ssh -vvv dev@host  测试远程登陆是否正常。
authorized_keys 权限必须是600!!!!

七、CentOS7配置网络信息

1.配置静态IP地址

设置静态IP地址与动态iIP差不多,也是要修改网卡配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens32    (最后一个为网卡名称)

(1)bootproto=static

(2)onboot=yes

(3)在最后加上几行,IP地址、子网掩码、网关、dns服务器

IPADDR=192.168.1.160
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=119.29.29.29
DNS2=8.8.8.8

(4)重启网络服务

[root@mini ~]# systemctl restart network

2.Linux下查看网关方法:

  1. route -n
  2. ip route show
  3. traceroute www.prudentwoo.com -s 100 第一行就是自己的默认网关
  4. netstat -r
  5. more /etc/network/interfaces Debian/Ubuntu Linux
  6. more /etc/sysconfig/network-scripts/ifcfg-eth0 Red Hat

3.Linux下查看DNS方法

1.查看DNS信息:

  1. 查看网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33
  2. 查看DNS配置文件:/etc/resolv.conf
  3. 通过域名解析查看:nslookup baidu.com,需要安装bind-utils : yum install -y bind-utils

2.配置DNS(CentOS7)

在CentOS 7下,手工设置 /etc/resolv.conf 里的DNS,会被系统重新覆盖或者清除,配置DNS方法和CentOS 6方法不同,有几种方式:

1、使用全新的命令行工具 nmcli 来设置

#显示当前网络连接
#nmcli connection show
NAME UUID                                 TYPE           DEVICE
eno1 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 802-3-ethernet eno1

#修改当前网络连接对应的DNS服务器,这里的网络连接可以用名称或者UUID来标识
#nmcli con mod eno1 ipv4.dns "114.114.114.114 8.8.8.8"

#将dns配置生效
#nmcli con up eno1

2、使用传统方法,手工修改 /etc/resolv.conf

  • 修改 /etc/NetworkManager/NetworkManager.conf 文件,在main部分添加 “dns=none” 选项:
[main]
plugins=ifcfg-rh
dns=none
  • NetworkManager重新装载上面修改的配置
# systemctl restart NetworkManager.service
  • 手工修改 /etc/resolv.conf
nameserver 114.114.114.114
nameserver 8.8.8.8

详细参见:

# man NetworkManager.conf
# man nmcli
赞(0) 打赏
未经允许不得转载:琼杰笔记 » Linux常用基础命令使用总结【三】

评论 抢沙发

评论前必须登录!

 

分享交流,合作共赢!

联系我们加入QQ群

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册