Linux学习笔记

以下为个人课程学习笔记,主做日常积累,如有问题,感谢指正。

一、概述

1. 概述

Linux是一种免费使用和自由传播的类UNIX操作系统,多用于服务器,具有层级式的文件系统,最顶层目录为“/”。

2. 版本

(1)广义版本

ubuntu、小红帽、centos、debian、等 基于linux 内核进行开发。

(2)狭义版本

CentOS的版本

二、部署

1. 磁盘划分

  • / --> 根目录划分几个磁盘
  • /boot --> Linux启动时系统自身资源(1g)
  • swap --> 内存不足时,可以使用磁盘空间充当内存(2g 4g)

2. 远程连接:

  • 远程主机地址(ip):192.168.10.134(ifconfig --> 网卡 对应的ip )
  • 远程主机端口号(port) --> 22(防火墙开放端口),1-65535(端口号范围)
  • 远程主机用户名(username) --> root
  • 远程主机用户密码(passwd) --> 123456
  • 连接工具:Xshell

三、基本操作

1. 命令行提示符

  • root:登录机器的用户名(root 最高权限用户)
  • docker:登录机器的机器名 hostname
  • "~" :登录机器的用户 家目录 【就是一个目录】
    • 家目录:
      • root =》 /root
      • xxxx => /home/xxxx
  • "#" :代表当前用户为root(最高权限)身份。当普通用户登录时,是"$"

2. 基本命令

命令

作用

效果图

pwd

查看当前光标所在目录

ls

查看当前光标所在目录下所有文件及目录;

ls -l(等价于 ll)

显示文件夹和文件名字 详细信息
-l 为选项对应上述的附属功能除此之外常用选项还有

  • -a 显示隐藏文件
  • -h 以人类方式显示文件大小

当遇到新命令可以通过:命令 --help-help-h 查看命令手册来了解(几乎所有脚本命令都支持)

举例:说明:在用法中[]的参数为可选参数,<>内参数为必选参数】

mkdir

创建文件夹 

  • 创建层级 文件夹 

        mkdir -p  dir4/dir5/dir6

  • 创建并级文件夹

        mkdir dir1 dir2 dir3

cd

作用:切换目录

------------------------------------

绝对路径:

  • 光标从根目录开始路径

相对路径:

  • 光标从当前目录开始的路径
  • ./ 当前路径
  • ../ 上一层级路径

------------------------------------

返回家目录三种方式:

  • 家目录的绝对路径 cd /root
  • cd 回车
  • cd ~(~在第一段有介绍)

------------------------------------

cd - 回到上一次操作命令的目录

3. 文件操作命令

(1)创建

命令

作用

效果图

touch <fileName>

创建一个文件

vim / vi <fileName>

如果文件不存在则创建文件并进入文件;

注意退出文件需要保存后才会生成文件。

echo content > fileName.log

> 创建 或 覆盖 指定文件

>> 追加文件

创建文件并将content位置的内容打印到fileName.log中

创建空文件:

  • touch xxx
  • vim / vi xxx
  • echo "" > xx.log 【注意:该命令创建的空文件并非"真空" ,文件大小为1】

  • Linux 有一个真正的 空文件,为/dev/null

(2)编辑

Linux 采用 vim / vi 编辑文件。

1)vim的三种模式

  • 命令行模式:未进入编辑模式尾行模式都是命令行模式
  • 编辑模式:在命令行模式“i”进入该模式;
  • 尾行模式:命令行模式按“:”进入尾行模式。

2)编写文件步骤

1.打开文件 【命令行模式】

2.编写内容 【命令行模式 =>编辑模式 】

键盘输入 i =>insert

3.退出保存

(1)编辑模式 =>命令行模式

键盘输入 Esc

(2)命令行模式 =>尾行模式 退出保存

键盘输入“:”

退出保存指令: “w” 保存 “q” 退出 “!”强制

3)快捷命令

1.命令行模式

(1)光标移动

  • gg 首行
  • shift +$ 行尾
  • shift +^ 行头
  • num +G 指定行
  • G 最后一行

(2)复制

  • yy 复制当前光标所在行
  • 粘贴 p
  • y num y 复制一段

(3)撤回 u

(4)删除

  • dd 删除当前光标所在行
  • dG 删除当前光标以下所有行
  • d num d 删除一段

2.尾行模式

(1)退出保存

  • wq!
  • 快捷键 shift +zz
  • x => wq

(2)查找关键词

  • :/keywords n查找下一个 N 往上查找

(3)显示行号:

  • :set nu
  • :set nonu

(3)查看

cat

文件所有内容全部显示,适合内容较少的。

当查看log时,如果log很大,快速定位error的方式:

一个日志文件 hadoop_namenode.log 100m :

cat anaconda.log | grep -A 10 error (-A 一起打印定位行后10行)

cat anaconda.log | grep -B 10 error (-B 一起打印定位行前10行)

cat anaconda.log | grep -C 10 error (-C 一起打印定位行前后10行)

1. | 管道符 前一个命令的结果作为下一个命令的输入

2. grep 过滤出 关键词 所在的行

more

按页文件的内容 ,按空格下翻 退出按q ctrl +c ctrl +z

less

按页文件的内容,空格下翻,上下键也可实现翻页

tail 实时监控文件里面最新内容

-f

-F => -f + retry 【注意:当文件被再次重新创建时 F 可以重新监控】

演示 -f:

演示 -F:

对于 echo "content" > file ,只能监视到文件被截断但无法监视到覆盖内容,后续的追加可以被监视到。

(4)剪切与复制

mv剪切文件或更改文件名,指令前后始终只有一个文件

剪切文件:# mv 1.log ../1.log 或省略文件名

重命名文件:# mv 2.log 3.log

cp

复制文件或更改文件名,指令前后将有两个文件。相比之下mv更快

# cp ~/1.log ./ 或省略文件名

(5)上传

  1. xshell 工具
  2. lrzsz包 rz上传 sz下载

(6)删除【注意:高危命令】

删除文件rm 1.log
使用 - f 可以不询问
删除文件夹

rm -r a

-r是递归删除就是删除文件夹内的子文件或子文件夹;

rm -rf a可以不询问

(7)别名

  1. 别名可以理解为用简单的变量名代替设定指令
  2. 别名的使用        
    1. 当前会话使用:[root@docker ~]# alias aa="cd /tmp";
    2. 长期使用:写到环境变量文件中【注意:更改后需要source一下更改的文件】
      1. 查看环境变量 # echo $PATH
      2. 全局环境变量:所有用户都可使用,/etc/profile
      3. 用户环境变量:仅当前用户可以使用,~/.bashrc或~/.bash_profile 

(8)文件权限

 一个文件前面的10个符号分别为:                        

1个3个3个3个
文件类型所属用户权限所属用户组权限其他用户组权限
- d l分别代表文件 文件夹 软连接
r w x读权限 写权限 执行权限与此同时,r代表权限数4 w代表2 x代表1

 修改权限:chmod 646 ./1.log 

                结果为:rw-r--rw-

修改所有者:chown zs:zs 1.log

(9)查找文件

        # find / -name "*1.log*"

4. 用户与用户组

(1)方法

用户/usr/sbin/useradd 添加
/usr/sbin/userdel 删除
/usr/sbin/usermod 修改
用户组

/usr/sbin/groupadd 添加

/usr/sbin/groupdel 删除
/usr/sbin/groupmems 主组管理员成员
/usr/sbin/groupmod 修改

 (2)添加用户

useradd zs
passwd zs //设置密码,否则无密码

  • 创建一个用户的过程
用户名zs

创建一个用户组

【用户组包括主组和附属组】

zs
创建一个家目录/home/zs
  • 查看用户信息:

  • 查看用户组信息:vim /etc/group(图片不再展示)

(3) 删除用户

 【注意:删除用户时-r为可选参数,作用是删除用户所有相关文件,否则再次创建同名文件会提示错误】

(4)切换用户

su - xinwei切换用户,使用新用户的环境变量
su xinwei切换用户,使用上一用户的环境变量

(5)用户组

添加群组groupadd bigdata
添加用户到某个群组usermod -a -G bigdata zs
更改用户主组usermod -g bigdata zs

 (6)更改用户权限

1.配置  /etc/sudoers
    zs      ALL=(ALL)       NOPASSWD: ALL
2. 使用 
    sudo xxxx

5. 其他命令

(1)进程及端口号

yum install  httpd  //下载httpd包

1.查看进程号: 	
    1.java 代码 =》 jdk =》 jps 
    2. ps -ef | grep 程序的名字(pid)  => pid 

2.查看端口号  port 
	netstat -nlp | grep pid 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

isMr_Sun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值