linux系统安装及简单命令介绍


一、简单的命令
1.GUN/GPL GUN/Linux  Linu内核   发行版
2.基础命令
ls
ls -l 或者 ll
ls  -a
cd   绝对路径 /   相对路径 回到上一级或者打开下一级目录
用户主目录 /home/username  ~  cd 
pwd
su  - 
3.目录和文件的指令
增: mkdir   mkdir -p  touch  vi 
删: rmdir   rm   -r   -f
改: cp  -r   mv 
查: cat   more   head  -n   tail -n  -f
4.vi编辑器
命令行模式:/   yy dd  p   u  
插入模式或者编辑模式: i Esc
最后行模式:  w q  !  wq! w! q!      set nu   替换


二、用户和用户组
1.超级用户
就是root用户,拥有至高无上的权限,这个用户在实际生产环境中不尽量不要使用
root 用户的UID 0
2.普通用户
UID从500开始的
3.伪用户
UID在1~499之间的是伪用户
系统指定的一些进程,给它们也分配了一部分ID号,这部分伪用户不能够真正的登陆,也没有家目录
$ cat  /etc/passwd
user01:x:500:500::/home/user01:/bin/bash
用户名:密码:UID:GID:注释性描述(fullname):用户家目录: 用户使用的shell

4.创建用户:#  useradd username
# useradd   [用户名]


5.创建用户组  # groupadd  shengfen
# groupadd   [用户组名]


6.设置修改用户密码:
第一种: # passwd   shanghai
New password: 
BAD PASSWORD: it is too simplistic/systematic
BAD PASSWORD: is too simple
Retype new password: 
passwd: all authentication tokens updated successfully.
第二种方式: echo 回显打印字符内容
# echo  '654321'  | passwd --stdin shanghai


--stdin 表示输入的意思,一定要加的选项


# echo '654321' |  passwd --stdin shanghai
Changing password for user shanghai.
passwd: all authentication tokens updated successfully.

7.切换用户  su -
切换一定 要加  -
su 和 su - 的区别:一个是切换用户,一个是完整的切换(包括用户环境)


9.删除用户: #  userdel  hanzhou
*** # userdel  -r  hanzhou   ->推荐   
选项:-r 彻底删除用户包括用户主目录  




扩展:
  1、# gpasswd 管理用户组成员,增加或删除
  -a 为用户组加入一个已存在的用户
  -d 将用户组内的某个用户移除
  # gpasswd -a feng ziran
  # gpasswd -d feng ziran


  2、# useradd -G: 创建一个新用户并加入到所属组


  三、用户文件和目录权限 (rwx)
  1.drwxrwxr-x    d代表目录  -代表文件  b
  2.rwx(所有者的权限)-> u   rwx(所属者大的权限) ->g  r-x(其他用户权限) -> o
  r:cat,more ,head,tail
w: vi  touch  mkdir mv  cp rm 
x:cd,执行脚本 sh
所有者:user, 用u表示
所属组:group,用g表示
其他人:other,用o表示
r:4
w:2
x:1
3.修改文件或目录的权限命令: chmod
--> 字母用法:# chmod u+x test  
--> 字母用法:# chmod g+x,o+x test 
--> 字母用法:# chmod o-x test 
赋予权限用户加号表示:+
撤销去哪先用减号表示:-
-->数字用法:# chmod 764  file5
选项:-R, 递归修改
用法:#chmod 777 -R test/


4.修改文件的所有者或所属用户 chown
用法: # chown shanghai  /home/user01/1.txt
注意:使用root用户操作


5.修改文件或目录的所属组用户 chgrp
用法: # chgrp shanghai  /home/user01/1.txt
注意:使用root用户操作


6.一条命令同时修改所属用户和所属组
# chown user01:user01  /home/user01/1.txt


四、管道符|、追加/覆盖符号
1、用竖线表示  | :
2、表示将前一个命令的输出结果传递给后面的命令处理,两边都是命令
$ cat /etc/passwd | more
3、grep:过滤筛选
$ cat /etc/passwd  |  grep 'root'
4、过滤条件
$ ifconfig | grep 'inet'
$ ls /dev |  grep 'cdrom'


5、追加用两个大于符号表示:>>
表示将前一个命令的输出结果追加写入到某个文件中
$   ifconfig   |  grep  inet  >>    ~/test/file6
如果被写入的文件不存在,则自动创建


6、覆盖用一个大于符号表示:>
表示将前一个命令的输出结果覆盖写入到某个文件中
$ head  -3  /etc/passwd > /home/user01/test/demo


7、wc(word count)统计命令:统计单词、字符、行数,支持管道符号
  $  wc -l  /etc/passwd
  $  head -3 /etc/passwd  |  wc  -l 
   
   统计某个文件或目录的大小或者是占用的存储空间大小
 du -sh  /test


 8、ps  -ef 显示当前系统正在运行的进程
 $  ps  -ef  |  wc -l


五、搜索命令:find 
1、搜索命令会消耗大量的资源
2、语法格式:
find  【搜索范围】  【匹配条件】 
3、根据文件名搜索
选项: -name
全盘查找:$  find   /  -name    init
模糊查询带有关键字的: $ find /etc/ -name *init*
查找关键字开头的文件:$  find  /etc/ -name init*
# find /etc/ -name init???
*号:通配符,匹配任意的字符
?号:匹配单个字符
Linux中大小写是严格区分的
选项:-iname,表示不区分大小写
# find /etc/ -iname init???
4.根据文件大小搜索
选项:-size
指定方式:+大于,  -小于,不加符号表示等于
$  # find /etc/ -size  +2M
5.根据所有者和所属组查找
$  find   /root  -user root
$  find   /root  -group root
6.根据文件类型进查找
$  find  /etc/ -name init* -type f
$  find  /etc/ -name init* -type d
f表示文件     d代表目录


六、sudo 权限
1、操作对象是系统命令
2、命令: # visudo 管理员(root)身份执行


3.配置sudo   # visudo
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
user01  ALL=(root)     NOPASSWD: ALL



那三个ALL到底是什么意思。
第一个ALL是指网络中的主机,我们后面把它改成了主机名,它指明user01用户可以在此主机上执行后面的命令。
第二个括号里的ALL是指目标用户,也就是以谁的身份去执行命令。
最后一个ALL当然就是指命令名了。




4.使用:在需要root用户操作的时候,在原来命令的前方加sudo
$ vi /etc/hosts
"/etc/hosts" [readonly] 3L, 189C
$ sudo vi /etc/hosts


七、压缩和解压缩
WinRAR  .rar   .zip   .7z      
在windows中,使用一款压缩软件就能全部搞定压缩和解压缩的问题压缩格式


在Linux中常见的格式
.gz
.tar
.tar.gz


1、压缩格式:.gz
1)压缩命令: gzip 压缩文件
用法:$  gzip  1.txt
注意:不能保留源文件
2)解压缩命令: gunzip
用法:$ gunzip  passwd.gz
2、压缩格式:.tar   .tar.gz
1)压缩命令: tar  压缩文件或目录
用法:  $  tar -cvf  20170427.tar  passwd
2)压缩格式:  .tar.gz
分布完成:第一步,先将源文件压缩成tar   tar -cvf
 第二步,压缩成.tar.gz    gzip 
**一次性完成:
$ tar -zcvf 1202.tar.gz  demo/


***3)解压缩
$ tar  -zxvf  1202.tar.gz  -C  Desktop/  






选项:
  -z, --gzip, --gunzip, --ungzip   filter the archive through gzip
       -c, --create               create a new archive
       -x, --extract, --get       extract files from an archive
       -v, --verbose              verbosely list files processed
       -f, --file=ARCHIVE         use archive file or device ARCHIVE


综合练习:
安装jdk
1.创建两个目录
$ sudo mkdir /opt/software   //安装包的存放目录
$ sudo mkdir /opt/modules    //解压安装的目录




2.修改目录的所属用户及所属用户组
$ sudo chown user01:user01 /opt/software/ /opt/modules/

3.上传并解压jdk
$ tar -zxf jdk-7u67-linux-x64.tar.gz -C ../modules/


4.配置环境变量
# vi /etc/profile


#JAVA_HOME
export JAVA_HOME=/opt/modules/jdk1.7.0_67
export PATH=$PATH:$JAVA_HOME/bin


5.使生效
source /etc/profile


6.检查是否成功
java -version


//查询自带的jdk
$ rpm -qa | grep jdk
java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64
java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64


//卸载自带的jdk
$ sudo rpm -e java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64 --nodeps
$ sudo rpm -e java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64  --nodeps


//重新生效
$ source /etc/profile


再次进行验证
$ java -version
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)




八、磁盘管理(添加硬盘、分区、挂载)
磁盘的管理:
如何磁盘进行分区
如何对磁盘进行格式化
如何对磁盘进行挂载


在linux中,第一块硬盘sda,第二块硬盘sdb...
将第一块硬盘分成3个区, sda1, sda2, sda3
在分区完成之后需要对每一块分区进行格式化
格式化完成之后需要对每一块分区进行挂载(临时,永久)
完成了挂载之后才能使用df -l 命令进行查看


添加一块新硬盘的步骤:
第一步:添加一块硬盘
第二步:开机,在/dev目录下已经识别到新的硬盘  sdb
# fdisk -l   查看系统所有设备的情况
第三步:分区
# fdisk /dev/sdb
分区分两种:
1.主分区  primary partition
主分区的数量1~4个
2.扩展分区   extended partition
如果想划分更多的分区,那么就要使用到扩展分区
cylinder:柱面
圆柱体的截面
3.逻辑分区  logical (5 or over)
扩展分区不能直接使用,必须再划分逻辑分区


分区类型
82:swap 交换分区
当物理内存不够使用的时候,使用交换分区充当内存
83:linux


  (m for help): m
  l   list known partition types
n   add a new partition
p   print the partition table
q   quit without saving changes
     w   write table to disk and exit


Command action
   e   extended
   p   primary partition (1-4)


   First cylinder (1-2610, default 1): 
Using default value 1
p
Partition number (1-4): 1
First cylinder (1-2610, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): +5G




Command action
   e   extended
   p   primary partition (1-4)
e
Partition number (1-4): 3
First cylinder (1309-2610, default 1309): 
Using default value 1309
Last cylinder, +cylinders or +size{K,M,G} (1309-2610, default 2610): 
Using default value 2610




Command action
   l   logical (5 or over)
   p   primary partition (1-4)
First cylinder (1309-2610, default 1309): 
Using default value 1309
Last cylinder, +cylinders or +size{K,M,G} (1309-2610, default 2610): +5G


  Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         654     5253223+  83  Linux
/dev/sdb2             655        1308     5253255   83  Linux
/dev/sdb3            1309        2610    10458315    5  Extended
/dev/sdb5            1309        1962     5253223+  83  Linux
/dev/sdb6            1963        2610     5205028+  83  Linux






     第四步:格式化分区
             ->命令:#mkfs
             ->文件系统:ext4,ext3,ext2
             ->用法:# mkfs.ext4  /dev/sdb1
     Linux常用的文件系统File  System
     etx2    ext3  ext4 


     # mkfs.ext4  分区文件
      mkfs.ext4 /dev/sdb1
      mkfs.ext4 /dev/sdb5
      mkfs.ext4 /dev/sdb6


      第五步:挂载分区
      df -h 
      ->挂载命令:mount (临时挂载)
      ->用法:# mount /dev/sdb1  /mnt/system
      ->/mnt是挂载点,是访问分区的唯一入口
      ->挂载点必须要存在


      创建挂载点
# mkdir system  software  study  games
# mount /dev/sdb1   /mnt/system
# mount /dev/sdb2   /mnt/software
# mount /dev/sdb5   /mnt/study
# mount /dev/sdb6   /mnt/games


# df -l
/dev/sdb1        5170664  141336   4766668   3% /mnt/system
/dev/sdb2        5170696  141336   4766700   3% /mnt/software
/dev/sdb5        5170664  141336   4766668   3% /mnt/study
/dev/sdb6        5123204  141240   4721716   3% /mnt/games




第六步 永久挂载
用法:#  vi   /etc/fstab   //启动时按fstab文件描述内容加载文件系统


被挂载设备        挂载点       文件系统类型
/dev/sdb1         /mnt/system    ext4    defaults        0 0
/dev/sdb2         /mnt/software  ext4    defaults        0 0
/dev/sdb5        /mnt/study      ext4    defaults        0 0
/dev/sdb6        /mnt/games      ext4    defaults        0 0

你可能感兴趣的:(hadoop,linux,基础)