linux基础
linux意义
因为我们要部署服务,Linux系统一直以其稳定性而闻名,它们可以连续运行多年而不发生任何重大问题。事实上,很多Linux用户都从未在自己的环境中遇到过系统崩溃的情况。相对windows而言,挂起和崩溃完全是一种常态。
Windows由于是商业产品,源代码封闭,我们无法知道微软在里面做了什么手脚。而Linux由于是源代码开放操作系统,没有这种情况
命令是由命令名和多个选项以及参数组成的 用空格分隔 严格区分大小写
目录
linux系统中一切皆文件
-
/bin
是binary的缩写,这个目录存放着最经常使用的命令,通过上方桌面可以看到bin文件夹有个箭头,是链接到 /usr/bin下,相当于快捷方式,进入/bin和/usr/bin下是一模一样的 -
/sbin
s就是super User的意思,这里存放的是系统管理员使用的系统管理程序。 -
/home
存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一版该目录名是以用户的账号命名的。 -
/root
该目录为系统管理员,也称为超级权限者的用户主目录。 -
/lib
系统开机所需要最基本的动态连接共享库,其作用类似于windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 -
/etc
所有的系统管理所需要的配置文件和子目录。 -
/usr
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program fies目录。 -
/boot
这里存放的是启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里。
这里存放的是启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里。
/proc
这个目录是一个虚拟目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
/srv
service缩写,该目录存放一些服务启动之后需要提取的数据。
/sys
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs。
/tmp
这个目录是用来存放一些临时文件的。
/dev
类似于windows的设备管理器,把所有的硬件用文件的形式存储。管理着所有设备,例如CPU、硬盘等等
/media
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
centos7迁移到/run/media
/mnt
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt上,然后进入该目录就可以查看里面的内容了。和media差不多
/opt
这是给主机额外安装软件所摆放的目录。比如你安装一个mysql数据库则就可以放在这个目录下。默认是空的。
/var
这个目录中存放着在不断扩充的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
/lost+found
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/www
/www目录可以用于存储Web应用程序或网站文件,/www目录没有特别的用途,它只是一个常规目录,可以根据需要进行使用和管理。
常见命令
ls
列出当前目录下所有文件
ls-l
列出每个文件的属性(最前面是权限相关)
drwxr(d:directory目录如果是-则是普通文件
rwx:权限read write 执行)
ls -a
将隐藏文件列出来 (以.开头的是隐藏文件)
ls -la
将隐藏文件具体的列出来
ll(ls -的缩写)
cd
cd+文件名:进入目录
cd+..返回上一级
cd+..进入本级目录
cd -进入上次进入的目录
pwd
print working director 显示绝对路径
head tail less more
头部:
head +文件 显示文件前部分文件内容
想具体查看几行
head --lines=2 +文件名
尾部:
tail --lines=3 +文件名
全文:
less +文件 即可进行查看 按q键即可退出
more +文件 一般只能向下看
编辑文件
调用文本编译器nano
nano +文件 即可进入文本编译器(下方是菜单操作简单)
vim +文件 esc键退出或者使用q!强制保存退出qw!写了之后强制退出
file +文件
查看文件相关属性之类
where+文件 或者 which 或者 whereis
查找文件所在位置
echo abc 打印
echo "abc hello"
定义变量h="hellox"
echo $h
即可输出h变量
echo "abc-$h-efg"
变量前后都可插入字符串
mv
改之前的文件文件名 重命名之后的文件
批量进行修改
for 变量名 in week??(以week开头后面有两个字符的文件)
命令
for>do
for>echo $变量
for>done
即可使用for循环来进行查找
echo ${ff#week} 删掉文件名中的week(掐头)
echo ${ff%01}删掉文件名中的01(去尾)
echo chapter${ff#week}不仅去除week而且在前面加上chapter
grep 过滤查找及 | 管道符
管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理,可以前面查出来的东西传给管道符后端的处理,例如 ls | grep -n test
grep是Linux系统中常用的文本搜索工具,可以在文件中查找指定的字符串或者正则表达式,并将匹配的行输出到终端或者文件中
(1)在文件中查找字符
# 单个文件中查找
grep "string" filename
# 多个文件中查找字符
grep "string" file1 file2 file3
# 忽略大小写查找指定字符串
grep -i "string" filename
(2)、在目录中递归查找指定字符串
grep -r "string" directory
(3)、显示匹配行的行号
grep -n "string" filename
(4)、反向查找不包含指定字符串的行
grep -v "string" filename
(5)、将匹配的行输出到文件中
grep "string" filename > output.txt
mkdir
mkdir 创建一个新的目录 、 rmdir 删除一个空的目录
mkdir [文件] 要创建的目录
mkdir xiyou
mkdir -p xiyou/dssz/meihouwang # -p 创建多层目录
注意事项:
linux中按上键是之前输过的命令
脚本下面修改文件名或者删除文件是没有撤销机制的
deepin虚拟机的安装
首先在VMware上创建新的虚拟机
使用下载好的ISO文件
版本选择Dedian 10.x 64
接下来按照操作步骤即可 注意:硬盘需要不少于64GB否则后面无法进行安装
变成中文版
进行安装
安装完成
deepin是一个来自中国团队研发的Linux发行版
其中的软件后缀通常是.deb或applmage
CTRL+ALT+T进入命令行
IDApro下载
IDA Pro(Interactive Disassembler Professional)简称“IDA”,是Hex-Rays公司出品的一款交互式反汇编工具,是目前最棒的一个静态反编译软件,为众多0day世界的成员和ShellCode安全分析人士不可缺少的利器。IDA Pro具有强大的功能,但操作较为复杂,需要储备很多知识,同时,它具有交互式、可编程、可扩展、多处理器等特点,可以通过Windows或Linux、MacOS平台来分析程序, 被公认为最好的逆向工程利器之一。
打开IDA
“New”选项是直接打开要分析的程序,“Go”选项是先启动IDA界面
里面的功能模块具体部分
参考资料:【常用的Linux命令介绍:13个基本命令和Shell脚本编程】https://www.bilibili.com/video/BV1Uv4y127tU?vd_source=d5c4b05f7cdb6ff417fb5719177a03e9
https://blog.csdn.net/leah126/article/details/131558171