Linux基础知识 二

Linux基础知识二

一、用户和组

1.什么是用户和组

 用户是权限的集合。
 组:用户组,组织和管理用户。

2.用户的分类

管理员用户: root  uid(0)
系统用户: 保证系统运行用户,没有密码(uid:1-499)
普通用户: 自定义用户,用户权力受限(uid:500-60000)

3.查看用户

文件:  /etc/passwd     /etc/shadow
root: 用户名
x: 密码占位符
0: 用户id
0: 组id
root: 说明信息
/root: 家目录
/bin/bash: shell类型

4.操作用户

添加用户: useradd 用户(默认分配组,说明信息无)
   passwd 用户:修改密码
修改用户: usermod   -c:设置说明  -G:指定组
    usermod -c spark11 spark
	usermod -G hadoop spark
删除用户: userdel -r spark	

5.组分类

系统组: 存放系统用户
普通组: 存放普通用户
私有组:	创建用户时创建同名的组,此时该组只有一个用户就是私有组;如果向该组添加其他用户就变为普通组。

6.查看组

cat /etc/group     cat /etc/gshadow

7.组操作

创建组: groupadd
修改组: groupmod -n:修改名称
删除组:	groupdel 
添加和删除用户:
   gpasswd -a hadoop spark:添加用户到组
   gpasswd -d hadoop spark:从组中删除用户

二、配置sudoer权限

1.修改权限文件 vim /etc/sudoers

  Allow root to run any commands anywhere 
	root    ALL=(ALL)       ALL
	hadoop  ALL=(ALL)       ALL

2.操作

sudo useradd aa  

三、文件权限

drwxr-xr-x.: 文件类型和权限
 2 :链接数(普通文件:连接数1  文件夹:链接数是子目录个数)
  root: 所属用户 
  root: 所属组  
  4096: 大小 
  Apr 18 15:17:时间
  Desktop:  文件名称

1.文件类型和权限

d:文件类型  (-:普通文件  d:目录  l:链接文件  b:二进制  c:字符设备文件)        
rwx   r-x    r-x:  文件权限
 u     g      o
u:所属用户权限
g:所属组权限
o:其他用户
           r: 可读     w:可写     x:可执行

普通文件: 
目录:      可以ls      增删       可以cd   

2.修改权限

            u                         r
chmod       g       +/-/=(设置)       w             文件
	        o                         x
	        a 
			
chmod 755 文件		

3.修改文件所属权(root下)

chown 用户名:组 文件  

四、打包和压缩

1.压缩

gzip 文件列表
gzip -d 压缩包:   解压缩

2.打包

tar -cvf a.tar 文件列表
解包: tar -xvf a.tar -C 目录 

3.打包并压缩

tar -zcvf a.tar.gz 文件列表

4.解包并解压缩

tar -zxvf a.tar.gz -C 目录

七、httpd

  apache的web服务器进程名称(httpd),	默认端口80.
  安装Desktop版中,默认安装http服务器。

1.查看后台进程

 service httpd status
 service --status-all | grep httpd
 chkconfig httpd on:开机自启

2.访问服务器

(关闭虚拟机防火墙:service iptables stop 设置开机关闭:chkconfig iptables off)

http://hadoop01/  

3.资源目录

/var/www/html/  

4.额外: 配置

/etc/httpd/conf.d/

八、挂载

  将设备文件连接到一个已经存在目录。
  挂载源: 设备文件
  挂载点: 存在目录 

1 挂载语法

mount  -t(文件系统)  iso9660/ext4  -o(挂载方式) ro(只读)/loop(磁盘分区)  挂载源  挂载点

2 实现挂载(临时)

挂载源: /dev/sr0(cdrom)
挂载点: /mnt/cdrom	
mount -t iso9660 -o ro /dev/sr0 /mnt/cdrom/

3 永久挂载

vim /etc/fstab
/dev/sr0                /mnt/cdrom              iso9660 ro              0 0

4 卸载

unmount 挂载点

九、系统管理命令

1.服务(进程)管理命令

service 服务 status/start/stop/restart/reload...
service --status-all | grep 服务	

2.开机自启状态

chkconfig 服务 on/off
chkconfig --list | grep iptables:查看各种系统启动级别下状态
chkconfig --level 24 httpd off :设置不同系统启动级别下开机状态

十、时区和时间

1.查看时区

  cat /etc/sysconfig/clock
   时区文件: /etc/localtime
   修改:
   cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

2.查看时间

    date
    date -R
    date "+%Y-%m-%d %H:%M:%S"

3.修改时间

date -s "2019-04-19 16:57:20" 
date "mmddHHMMYYYY.SS"
同步网络时间: ntpdate 时间服务器地址
	ntpdate ntp2.aliyun.com

十一、软件安装

1.二进制发布包(解压配置 jdk,tomcat)

2.rpm安装包(包,使用rpm命令 mysql)

查询: rpm -q 程序包
      rpm -qa | grep -i(不区分大小写) 程序
	  -l:查询安装位置
卸载: 
      rpm -e 程序名称
	   --force:强制卸载
	   --nodeps: 不考虑依赖
安装:
     rpm --ivh 程序(显示进度和过程)

3.yum在线安装

yum install -y 程序
yum remove -y 程序

4.源码编译安装(redis)

十二、本地yum源配置

  yum源: 本质web服务器+rpm软件包+索引文件
  yum源目录:  /etc/yum.repos.d/  

配置本地yum源:

1.搭建yum服务器

  1.1 web服务器(httpd)
  1.2 iso镜像挂载文件
  
  ln -s /mnt/cdrom/ /var/www/html/cdrom
  
2.在/etc/yum.repos.d/配置repo文件  
[local]
name=CentOS-$releasever - Local
baseurl=http://192.168.2.101/cdrom/
gpgcheck=0
enabled=1           

3.检测
  yum repolist:查看yum仓库列表
  yum list:查看当前能够安装程序列表

十三、进程管理

1.进程概念

程序: 静态 (数据结构+算法) 
进程: 程序的运行状态,动态的(一个程序可能有多个进程)
线程: 进程中执行任务最小单元

进程在运行过程中可能会产生新的进程,进程之间产生父子关系。
产生进程的进程称为父进程;被产生的进程称为子进程。

2.进程生命周期

就绪状态: 除了cpu之外其他资源已具备
运行状态: 获取到cpu的时间片
阻塞状态: io阻塞操作	

3.进程管理命令

1.查看进程

  ps: 查看进程运行状态(cpu,资源,pid,当前状态等)
    ps -aux:查看所有用户的所有进程
  pstree: 查看进程树(能够查看进程继承关系 -p:能够查看pid)
  top: 查看进程状态(定期更新状态) 
  jps: 查看jvm进程(jdk中的)

2.杀死进程

  kill pid:杀死进程
  kill -9 pid:强制杀死进程 
  pkill pname:杀死进程
  pidof pname:根据名称获取pid

3.进程调度

  ctrl+c: 终止进程(只能终止前端进程)
  ctrl+z: 挂起进程
  fg: 切换为前台进程
  bg: 切换为后台进程
  jobs:	 查看任务

十四、计划任务

  at:  服务名称atd, 指定时刻或者延迟指定时间执行一次任务。 
  crontab: 服务名称crond,间隔固定时间周期执行。分时日月周

1.crontab命令使用

-u:指定用户
-e:编辑计划任务文件
-l:查看计划任务
-r:删除计划任务
-i:删除时用于提示

2.基本格式

*  *  *  *  *  command 
分  时  日  月  周  命令 
第1列表示分钟1~59 每分钟用*或者 */1表示 
第2列表示小时0~23(0表示0点) 7-9表示:7点到9点之间  
第3列表示日期1~31 
第4列表示月份1~12 
第5列标识号星期0~6(0表示星期天) 
第6列要运行的命令

3.计划任务文件(默认)

 /var/spool/cron/

十五、克隆虚拟机

1 快照

 保留虚拟机的状态(备份)

2 虚拟机克隆

3 配置

3.1.网卡设备(物理设备 mac地址)

  vim /etc/udev/rules.d/70-persistent-net.rules
  删除eth0设备,修改eth1名称为eth0.
  
  00:0c:29:7b:5b:d5
  
  00:0c:29:c7:8c:63

3.2.网卡配置(eth0)

  vim /etc/sysconfig/network-scripts/ifcfg-eth0
  删除uuid
  修改mac地址
  修改ip地址

3.3.主机名称

  /etc/sysconfig/network

3.4.主机映射

 /etc/hosts

十六、ssh免密登录

1.什么是ssh

安全外壳协议,主要目标实现计算机之间加密安全访问.
ssh程序包含两个部分:
ssh服务端: sshd的守护程序,占22号端口。
ssh客户端: ssh程序,scp(远程拷贝),slogin(远程登录),sftp(远程数据传输)等	  

2.ssh认证机制

1.基于口令认证(用户名和密码)
2.基于秘钥认证	

3.免密登录实现

3.1.创建密钥对(公钥和私钥)

   ssh-keygen

3.2.发送公钥到授权池(authorized_keys)

  ssh-copy-id hadoop01

十七、grep

   文本搜索并打印匹配行,支持正则表达式
   -c:统计匹配行数
   -i:忽略大小写
   -v:取反

1、基本语法

 grep 字符串 文件: grep a a.txt
 cat a.txt | grep a

2、常见选项

 grep -c b a.txt   
 rpm -qa | grep -i mysql
 grep -v a a.txt	 

3、正则表达式

 yum -y install gcc 

猜你喜欢

转载自blog.csdn.net/Baiyabai/article/details/91904428