Linux基础学习

Linux基础学习

Linux安装时选择分区
在linux系统中都有最少两个挂载点,分别是/ (根目录)及 swap(交换分区),其中,/ 是必须的

建议挂载的几大目录:
/-------根目录,唯一必须挂载的目录。不要有任何的犹豫,选一个分区,挂载它!(在绝大多数情况下 有2G的容量应该是够用了。当然了,很多东西都是多多益善的)

swap----交换分区,可能不是必须的,不过按照传统,并且照顾到您的安全感,还是挂载它吧。它的容量 只要约等于您的物理内存就可以了,如果超过了您物理内存两倍的容量,那绝对是一种浪费。

/home—这是您的家目录,通常您自己创建的文件,都保存在这里,您最好给它分配一个分区

/usr----应用程序目录。大部分的软件都安装在这里,如果您计划安装许多软件,建议也给它分配一个分区

/var----如果您要作一些服务器方面的应用,可以考虑给它分配一个较大的分区

/boot—如果您的硬盘不支持LBA模式(不太可能),您最好挂载它,如果挂载,将它挂载在硬盘的第一个 分区,应该比较稳妥。一般来说,挂载的分区只要100M大小就足够了

挂载点       装置           说明
 /        /dev/hda1 	 10~15G足矣
 /home	  /dev/hda2     最大的剩余空间
 /boot    /dev/hda3      100MB即可
 swap     /dev/hda5     大约内存大小(建议至少512MB)

linux里可使用的文件系统有:
Ext2:早期的格式,不支持日志功能

Ext3:ext2改良版,增加了日志功能,是最基本且最常用的使用格式了

Ext4:针对ext3系统的扩展日志式文件系统,是ext3文件系统的后继版本

ReiserFS:也有日志功能,其特点是处理小档案时速度快。

XFS:稳定与高效,在大小档案混合的系统里有优越的表现。

JFS:特色是最不占用CPU资源,如果你的电脑老旧那么这是最好的选择。

Linux系统启动过程
启动过程可以分5个阶段
1.内核的引导。
2.运行 init。
3.系统初始化。
4.建立终端 。
5.用户登录系统。
注:Linux系统有7个运行级别
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

Linux关机
正确的关机流程为:sync > shutdown > reboot > halt

sync 将数据由内存同步到硬盘中。

shutdown 关机指令,你可以man shutdown 来看一下帮助文档。例如你可以运行如下命令关机:

shutdown –h 10 ‘This server will shutdown after 10 mins’ 这个命令告诉大家,计算机将在10分钟后关机,并且会显示在登陆用户的当前屏幕中。

shutdown –h now 立马关机

shutdown –h 20:25 系统会在今天20:25关机

shutdown –h +10 十分钟后关机

shutdown –r now 系统立马重启

shutdown –r +10 系统十分钟后重启

reboot 就是重启,等同于 shutdown –r now

halt 关闭系统,等同于shutdown –h now 和 poweroff

Linux系统目录结构
在这里插入图片描述
/bin:
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。

/boot:
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。

/dev :
dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。

/etc:
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。

/home:
用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。

/lib:
lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。

/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

/media:
linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。

/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。

/opt:
opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

/proc:
proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件。

/root:
该目录为系统管理员,也称作超级权限者的用户主目录。

/sbin:
s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。

/selinux:
这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。

/srv:
该目录存放一些服务启动之后需要提取的数据。

/sys:

这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。

sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。

该文件系统是内核设备树的一个直观反映。

当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

/tmp:
tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。

/usr:
usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。

/usr/bin:
系统用户使用的应用程序。

/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。

/usr/src:
内核源代码默认的放置目录。

/var:
var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

Linux常用命令
reboot 重启

shutdown 关机

ifconfig 查看IP地址

useradd a 添加用户a

passwd a 设置用户a密码

su - a 切换到用户a
su命令中间的-号很重要,意味着完全切换到新的用户,即环境变量信息也变更为新用户的信息

whoami 查看当前用户

logout 退出用户登录

systemctl status firewalld 查看防火墙状态
systemctl stop firewalld 关闭防火墙
systemctl disable firewalld 关闭防火墙开机启动

ls常用参数搭配
ls -a 列出目录所有文件,包含以.开始的隐藏文件

​ ls -A 列出除.及…的其它文件

​ ls -r 反序排列

​ ls -t 以文件修改时间排序

​ ls -S 以文件大小排序

​ ls -h 以易读大小显示

​ ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来
例:
1.按易读方式按时间反序排序,并显示文件详细信息

​ ls -lhrt

2.按大小反序显示文件详细信息

​ ls -lrS

3.列出当前目录中所有以“t”开头的目录的详细内容

​ ls -l t*

cd命令
1.进入要目录

​ cd /

​2.进入"家"目录

​ cd ~

3.进入上一次工作路径

​ cd -

4.把上个命令的参数作为cd参数使用。

​ cd !$

pwd 查看当前工作目录路径
pwd -P 查看软链接的实际路径

mkdir创建文件夹
1.当前工作目录下创建名为t的文件夹

​ mkdir t

2.在tmp目录下创建路径为test/t1/t的目录,若不存在,则创建

​ mkdir -p /tmp/test/t1/t

rm删除文件
1.删除任何.log文件;删除前逐一询问确认

​ rm -i *.log

2.删除test子目录及子目录中所有档案删除,并且不用一一确认

​ rm -rf test

3.删除以-f开头的文件

​ rm – -f*

mv 移动/修改文件名
1.将文件test.log重命名为test1.txt

​ mv test.log test1.txt

2.将文件log1.txt,log2.txt,log3.txt移动到根的test3目录中

​ mv llog1.txt log2.txt log3.txt /test3

3.将文件file1改名为file2,如果file2已经存在,则询问是否覆盖

​ mv -i log1.txt log2.txt

4.移动当前文件夹下的所有文件到上一级目录

​ mv * …/

cp复制
1.复制a.txt到test目录下,保持原文件时间,如果原文件存在提示是否覆盖

​ cp -ai a.txt test

2.为a.txt建议一个链接(快捷方式)

​ cp -s a.txt link_a.txt

cat显示文件详情
1.一次显示整个文件:cat filename

​2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.

​3.将几个文件合并为一个文件:cat file1 file2 > file

​-b对非空输出行号

​-n输出所有行号

more分页显示
1.显示文件中从第3行起的内容

​ more +3 text.txt

2.在所列出文件目录详细信息,借助管道使每次显示5行

​ ls -l | more -5

​ 按空格显示下5行

head 从头n行文本内容
1.显示1.log文件中前20行

​ head 1.log -n 20

2.显示1.log文件前20字节

​ head -c 20 log2014.log

3.显示t.log最后10行

​ head -n -10 t.log

查看文件位置
which 查看可执行文件的位置。

​whereis 查看文件的位置。

​locate 配合数据库查看文件位置。

​find 实际搜寻硬盘查询文件名称。

find 命令参数
-name 按照文件名查找文件

-perm 按文件权限查找文件

-user 按文件属主查找文件

-group 按照文件所属的组来查找文件。

-type 查找某一类型的文件

grep文本搜索命令
1.查找指定进程

​ ps -ef | grep svn

2.查找指定进程个数

​ ps -ef | grep svn -c

3.从文件中读取关键词

​ cat test1.txt | grep -f key.log

4.从文件夹中递归查找以grep开头的行,并只列出文件

​ grep -lR ‘^grep’ /tmp

5.查找非x开关的行内容

​ grep ‘[x]’ test.txt

6.显示包含ed或者at字符的内容行

​ grep -E ‘ed|at’ test.txt

VI 和vim 编辑文本
vi filename :打开或新建文件,并将光标置于第一行首

​ vi n filename :打开文件,并将光标置于第n行首

​ vi filename :打开文件,并将光标置于一行首

​ vi /pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

​ vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

​ vi filename…filename :打开多个文件,依次进行编辑

​屏幕翻滚类命令

​​ Ctrl u:向文件首翻半屏

​ Ctrl d:向文件尾翻半屏

​ Ctrl f:向文件尾翻一屏

​ Ctrl+b;向文件首翻一屏

​ nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部.

​插入文本类命令

​ i :在光标前

​ I :在当前行首

​ a:光标后

​ A:在当前行尾

​ o:在当前行之下新开一行

​ O:在当前行之上新开一行

​ r:替换当前字符

​ R:替换当前字符及其后的字符,直至按ESC键

​ s:从当前光标位置处开始,以输入的文本替代指定数目的字符

​保存命令

​​ 按ESC键 跳到命令模式,然后:

​​ :w 保存文件但不退出vi

​ :w file 将修改另外保存到file中,不退出vi

​ :w! 强制保存,不推出vi

​ :wq 保存文件并退出vi

​ :wq! 强制保存文件,并退出vi

​ :q 不保存文件,退出vi

​ :q! 不保存文件,强制退出vi

​ :e! 放弃所有修改,从上次保存文件开始再编辑

chmod 访问权限
常用参数:

​ -c 当发生改变时,报告处理信息

​ -R 处理指定目录以及其子目录下所有文件

​ 权限范围:

​ u :目录或者文件的当前的用户

​ g :目录或者文件的当前的群组

​ o :除了目录或者文件的当前用户或群组之外的用户或者群组

​ a :所有的用户及群组

​ 权限代号:

​ r :读权限,用数字4表示

​ w :写权限,用数字2表示

​ x :执行权限,用数字1表示

​ - :删除权限,用数字0表示

​ s :特殊权限
例子:
1.增加文件t.log所有用户可执行权限

​chmod a+x t.log

2.撤销原来所有的权限,然后使拥有者具有可读权限,并输出处理信息

chmod u=r t.log -c

3.给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限

​ chmod 751 t.log -c(或者:chmod u=rwx,g=rx,o=x t.log -c)

4.将test目录及其子目录所有文件添加可读权限

​ chmod u+r,g+r,o+r -R text/ -c

chown 改为指定的用户或组
-c 显示更改的部分的信息

​ -R 处理指定目录及子目录

​ 实例:

​ (1)改变拥有者和群组 并显示改变信息

chown -c mail:mail log2012.log

​ (2)改变文件群组

​ chown -c :mail t.log

​ (3)改变文件夹及子文件目录属主及属组为mail

​ chown -cR mail: test/

tar压缩和解压
常用参数:

​ -c 建立新的压缩文件

​ -f 指定压缩文件

​ -r 添加文件到已经压缩文件包中

​ -u 添加改了和现有的文件到压缩包中

​ -x 从压缩包中抽取文件

​ -t 显示压缩文件中的内容

​ -z 支持gzip压缩

​ -j 支持bzip2压缩

​ -Z 支持compress解压文件

​ -v 显示操作过程

有关gzip及bzip2压缩

​ gzip实例:压缩gzip fileName .tar.gz和.tgz 解压:gunzip filename.gz或gzip -d filename.gz

​ 对应:tar zcvf filename.tar.gz tar zxvf filename.tar.gz

​ bz2实例:压缩bzip2 -z filename .tar.bz2 解压:bunzip filename.bz2或bzip -d filename.bz2

​ 对应:tar jcvf filename.tar.gz 解压:tar jxvf filename.tar.bz2

​ 实例:

​ (1)将文件全部打包成tar包

​ tar -cvf log.tar 1.log,2.log 或tar -cvf log.*

​ (2)将/etc下的所有文件及目录打包到指定目录,并使用gz压缩

​ tar -zcvf /tmp/etc.tar.gz /etc

​ (3)查看刚打包的文件内容(一定加z,因为是使用gzip压缩的)

​ tar -ztvf /tmp/etc.tar.gz

​ (4)要压缩打包/home, /etc ,但不要 /home/dmtsai

​ tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

| 管道命令
Linux提供的管道符“|”讲两条命令隔开,管道符左边命令的输出会作为管道符右边命令的输入。
常见用法:
1.检查python程序是否启动
ps -ef|grep “python”

2.找到/tmp目录下所有txt文件
ls /tmp|grep ‘.txt’

3.检查nginx的端口是否存活
netstat -tunlp |grep nginx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值