前言:整理一些我平时用到的命令,并不会很详细,但是很实用。
目录
1. 软件安装与卸载类
1.1 apt在线软件包管理
用途 | 命令 | 注释 |
---|---|---|
在线安装软件 | sudo apt-get install 包名 | |
卸载软件包(1) | sudo apt-get remove 包名 | 保留软件的配置文件,注意要是不想保留配置文件最好用下面的命令,手动删除配置文件并不能被apt软件包管理工具识别到,再次安装的时候会有问题 |
卸载软件包(2) | sudo apt-get remove 包名 – purge | 不保留软件的配置文件 |
卸载软件包(3) | sudo apt-get autoremove | 删除依赖包,尽量不用,容易产生依赖关系的问题 |
删除软件包(1) | sudo apt-get clean | 删除/var/cache/apt/archives/里所有deb安装包 |
删除软件包(2) | sudo apt-get autoclean | 删除/var/cache/apt/archives/里已经安装完的deb安装包 |
更新软件列表 | sudo apt-get update | 访问源列表里的每个网址,并读取软件列表,然后保存在本地电脑;软件源位置:/etc/apt/sources.list |
更新软件 | sudo apt-get upgrade | 把已安装的软件,与软件列表进行对比,如果发现已安装软件版本过低会提示更新 |
修复软件 | sudo apt-get install -f | -f参数为–fix-broken的简写形式,主要作用是是修复依赖关系,安装程序包所依赖的包 |
软件列表 | apt list | 根据本地软件源信息,列出所有可安装及已安装的软件包 |
已安装的软件 | apt list --installed | 列出所有已经安装的软件包 |
按关键字搜索包名(1) | apt search 关键字 | 根据本地软件源信息,列出包含指定关键字的包名 |
按关键字搜索包名(2) | apt list (包名 / 带通配符的关键字) | 根据本地软件源信息,列出包含指定关键字的包名 |
显示软件包详细信息 | apt show 包名 | 根据本地软件源信息,列出软件包的详细信息 |
1.2 dpkg本地安装包管理
用途 | 命令 | 注释 |
---|---|---|
安装软件 | dpkg -i 软件包 | 这里软件包指的是实际包的路径 |
卸载软件(1) | dpkg -r 包名 | 保留配置文件 |
卸载软件(2) | dpkg -P 包名 | 不保留配置文件 |
列出该包安装的位置 | dpkg -L 包名 | |
显示已安装软件的列表 | dpkg -l | 如果加上包名,会只列出此包的列表信息 |
查看已安装软件的详细信息 | dpkg -s 包名 | |
列出包的内容 | dpkg -c 软件包 | 这里软件包指的是实际deb包的路径 |
2. 切换用户
用途 | 命令 | 注释 |
---|---|---|
切换用户 | su 用户名 | 如果提示“su:认证失败”,可能是root用户没有设置密码 |
给账户设置密码 | sudo passwd 用户名 | 如果给普通账户更改密码不必使用sudo,但是同时密码必须符合一定要求才能更改成功 |
3. 获取linux内核版本信息
cat /proc/version
4. 进程状态(ps)
ps -auxwf #如果COMMAND太长显示不下,可以多写几个w
5. 计算机MAC地址查询
link/ether字段后面的65:21:00:85:ee:e0
就是这个网卡的MAC地址。
sun@pc:~$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 65:21:00:85:ee:e0 brd ff:ff:ff:ff:ff:ff
6. 查看局域网内所有IP地址及其MAC地址(arp-scan)
arp-scan返回格式为:<IP Address> <Mac Address> <Vendor Details>
sun@sun-pc:~$ sudo arp-scan --localnet
192.168.1.8 c8:bc:d1:64:f5:c0 (Unknown)
192.168.1.10 c8:bc:d1:64:f5:c1 (Unknown)
192.168.1.12 c8:bc:d1:64:f5:c2 (Unknown)
192.168.1.14 c8:bc:d1:64:f5:c3 (Unknown)
192.168.1.16 c8:bc:d1:64:f5:c4 (Unknown)
192.168.1.19 c8:bc:d1:64:f5:c5 (Unknown)
192.168.1.20 c8:bc:d1:64:f5:c6 Dell Inc
192.168.1.33 c8:bc:d1:64:f5:c7 (Unknown)
...
7. 探查局域网内其它主机信息(nmap)
sudo nmap -A <ip地址>
可以看到一些打开状态的端口以及计算机名等信息,其中图一的红框139和445端口显示了该主机使用了samba协议做共享目录,后续我们可以结合enum4linux命令和smbclient命令去访问该主机的共享目录。
8. 查看局域网内用户名
sudo enum4linux -a <ip地址>
从SID S-1-22-1段可以看到计算机的用户名
此处也可以看到目标主机分享的目录(下面红框内地址://192.168.1.10/code),结合上面nmap列举的信息可知用的是samba协议,这样我们可以通过smbclient进行ftp访问
9. smbclient访问使用samba协议的共享目录
sun@sun-pc:~$ smbclient <地址>
如下图所示,访问上面enum4linux命令提到的//192.168.1.10/code
,smbclient有许多命令和ftp命令相似,如cd 、lcd、get、megt、put、mput等。