linux的基础命令(一)

简介: linux的基础命令(一)

linux简介


安装


安装操作系统软件 CentOS6.8-*.iso

密码原则 12位以上 大小写字符 数字 特殊符号

DeskTop 图形界面 开发

Basic Server 服务器 没有图形界面 Server

安装Basic Server 701软件包

分区 swap备用内存2000M ,/boot exit 执行内存200M 剩余全部为根目录exit空间

setup 设置防火墙之类

ifconfig 查看网络状态

最后service network restart 重启网络服务确定无误


常用端口


3306   mysql        80 apache(http)    22 ssh
pgrep  应用    得到进程号


常用命令

ls              (显示当前目录下文件)
ls 目录名        (显示指定目录下文件)
ls -l           (长格式显示目录文件)
ls -l 文件名     (长格式显示指定文件)
ls -a           (显示所有文件(包含隐藏文件))
ls -al          (长格式显示当前目录下所有文件)
ls -h           (文件大小显示为常见大小单位 B KB MB ...)
ls -d           (显示目录本身,而不是里面的子文件)
cd /usr/local/src   切换到指定路径(使用绝对路径方式)
cd ~                进入当前用户的家目录
cd -                进入上次目录
cd ..               进入上一级目录
cd .                进入当前目录
/bin              命令保存目录(普通用户就可以读取的命令)
/boot             启动目录,启动相关文件
/dev              设备文件保存目录
/etc              配置文件保存目录
/home             普通用户的家目录
/lib              系统库保存目录
/mnt              系统挂载目录
/media            挂载目录
/root             超级用户的家目录
/tmp              临时目录
/sbin             命令保存目录(超级用户才能使用的目录)
/proc             直接写入内存的
/sys              将内核的一些信息映射,可供应用程序所用
/usr              系统软件资源目录
/usr/bin/         系统命令(普通用户)
/usr/sbin/        系统命令(超级用户)
/var              系统相关文档内容
/var/log/         系统日志位置
/var/spool/mail/  系统默认邮箱位置
/var/lib/         默认安装的库文件目录 

提示符

[dragon@localhost ~]$
   ①       ②    ③ ④
①:dragon 代表 当前登录用户
②:localhost 代表 主机名
③:~ 代表 当前所在目录
    ~ 用户家目录;  /root 管理员;  /home/用户名 普通用户
④:$ 代表 当前用户身份
    $ 普通用户;  # 超级用户

linux简单操作

追加

ls -lR  可以看当前目录文件以及目录里面的文件
/opt  临时应用的SH 可以放置
bd 数据库          bak 备份
last  查看历史登录记录(用户名,时间,登录中断之类)
$0   文件本身      printf 格式化打印

常用操作

mkdir   t1        创建目录
mkdir   -p   t1/t2/t3      递归创建目录
rmdir   t1         删除目录(只能删除空目录)
rm -rf   t1    强制删除目录文件
rm  -r   t1   递归删除文件和目录   
touch  t1.py    创建空文件
touch  -t  20170612   t1    修改文件时间
cat   t1.py       查看文件内容
cat   -n    t1.py      查看文件内容并列出行号
more   t1.py      分屏显示文件内容   空格向上   b 向下      q 退出
head  t1.py   显示文件前几行(默认10行)
head  -n  20   文件名    显示文件前20 行
head   -n  -29  文件名   显示文件最后20行(不常用,有tail)
ln  -s   源文件    目标文件       创建链接文件(必须用绝对路径)
nano    文件名          纳米编辑器
man   ls     帮助命令             ls    --help     帮助命令
date        查看系统时间
    date  -s  20170220      设定日期
    date  -s  09:30:00      设定时间
du  -sh  目录名        统计目录大小
    -s  和
    -h  常见单位 
df  -h       查看系统内存(查看占用内存。以便为后安装程序做准备)
df   -hT      查看系统内存(T 类型)
netstat -an |grep ESTABLISHED | wc -l   查看服务器的连接数
source 文件名      执行这个文件(一般在改配置时使用)
cp 源文件 目标位置             (复制)
cp 源文件 目标位置/目标名称      (复制并改名)
cp -r       复制目录
cp -p       连带文件属性一起复制
cp -d       若源文件是链接文件,则复制链接属性
cp -a       相当于 cp -pdr
mv 源文件 目标位置
mv /root/test /tmp/           将/root/下的test文件移动到/tmp/目录下
mv /root/test /root/newtest   将/root/下的test文件改名为newtest

快捷键


ctrl +c      强行终止
ctrl   + l     清屏
tab         命令补全   文件目录名补全(常用)
反撤销  ctrl + r


权限位

-rw-r--r--. 1 root root 44736 7月  18 00:38 install.log
权限位是十位
    第一位:代表文件类型
    -   普通文件
    d   目录文件
    l   链接文件
默认文件   644   默认目录  755     默认链接文件  777
最大  777   最小 000
    其他九位:代表各用户的权限
    (前三位=属主权限u  中间三位=属组权限g  其他人权限o)
    r   读   4
    w   写   2
    x   执行  1
    权限对文件的含义
    r:读取文件内容 如:cat、more、head、tail
    w:编辑、新增、修改文件内容 如:vi、echo 但是不包含删除文件
    x:可执行  /tmp/11/22/abc   ---------    
权限对目录的含义
    r:可以查询目录下文件名 如:ls
    w:具有修改目录结构的权限 如:touch、rm、mv、cp
    x:可以进入目录 如:cd

权限操作

chmod u+x aa      aa文件的属主加上执行权限
chmod u-x aa      aa文件的属主减去执行权限
chmod g+w,o+w aa  aa文件的属组和其他人加上写权限
chmod u=rwx aa    aa文件的用户权限改为所有权限(读+写+执行)
chmod 777 -R aa    给当前文件和子文件都给上权限
另一种表现方式:
chmod 755 aa      aa文件的属主权限是rwx,属组和其他人是rx
chmod 644 aa      aa文件的属主权限是rw,属组和其他人是r
chown 用户名 文件名      改变文件属主
chown user1 aa         user1必须存在
chown user1:user1 aa   改变属主同时改变属组

### 用户操作

useradd 用户名        功能描述:添加用户
userdel -r  用户名    功能描述: 连同家目录一起删除用户
id -u 检测当前用户的UID
passwd 用户名         功能描述:设定用户密码 


查找命令

whereis ls 查找命令所在位置

find 查找位置 -name 文件名
find / -name aabbcc    查找/目录下名为 aabbcc的文件
更多选项:
    -name 文件名      按照文件名查找
    -user 用户名      按照属主用户名查找文件
    -group 组名       按照属组组名查找文件
    -nouser          找没有属主的文件 (除了这三个文件:/proc、/sys、/mnt/cdrom)
    -size            按照文件大小k M  如:find / -size +50k
    -type            按照文件类型查找(f=普通  d=目录  l=链接)
    -perm            按照权限查找  如:find /root -perm 644
    -iname           按照文件名查找,不区分大小写
格式  
find   /    -name   index.html
find   /   -user   python
find   /   -group   python
find  /    -nouser
find  /  -type     f
find   /  -perm     777
find / -size +10M -a -size -20M  -exec rm -rf  {} \;
find / -size +10M -a -size -20M  -ok   rm -rf  {} \;
exec  直接执行不提示     OK  提示危险操作
grep 选项 '字串' 查找路径
grep  '字串'    路径
grep -i "root" /etc/passwd
    -v       反向选择
    -i       忽略大小写
    -n       显示行号

管道符


| 连接命令

ls -l /etc/ | more 分屏显示etc里面的目录和文件

cat -n install.log | grep “zip” 查看文档显示行号并且查找‘zip’字符


压缩和解压

tar.gz    
tar  -zcvf       p1.tar.gz     test1.py  install.log    压缩文件
tar   -zxvf     p1.tar.gz    解压缩  
tar  -ztvf    p1.tar.gz  查看不解压
tar   -zxvf   p1.tar.gz   -C   txt     定向解压缩
tar -zcPf   p1.tar.gz test1.py    压缩文件  
-P 保留备份文件的原有权限和属性。常用于备份
.tar.bz2
tar  -jcvf      txt.tar.bz2    txt    压缩目录
tar  -jxvf    txt.tar.bz2   解压缩
tar  -jtvf    txt.tar.bz2    查看不解压
tar   -jxvf    txt.tar.bz2   -C   /tmp    定向解压缩

关机重启


shutdown  -h  now     现在关机 
init  0  关机
shutdown   -r   now    重启系统 
reboot   重启系统 
init  6  重启


挂载

1. 物理连接    2.手动挂载  3.识别设备使用
   mount     光驱设备名   (/dev/sr0    /dev/cdrom)     挂载点  /media   /mnt  (手动建立挂载点      mkdir  /mnt/cdrom)
   mount   /dev/sr0    /media
   cd  /media/
1. 卸载    umount 
   umount  /dev/sr0   
   umount  /media   注意:退出挂载目录,才能卸载
fdisk  -l    查看设备名
mount -t iso9660 /dev/cdrom /mnt/cdrom

网络命令

ping     测试网络连通性
ping   -c   5   192.168.2.222  
ifconfig     查看网络设备    Linux  
ipconfig        windows  
ipconfig   /all


vim操作

vim编辑器
全屏幕纯文本编辑器
vi -> vim (加强版)
三种模式: 
命令模式                插入模式                 末行模式
                       a   i   o  s             Shitft + : 
                         ESC
a  追加   i 插入  o 打开  s 删除当前字符插入 
:wq  保存退出  :w 保存  :q 退出
:q! 不保存退出  :wq! 强制保存退出(root)
vim   test1.py       命令模式
vim   install.log 
光标移动     h  j   k   l             :n   行号   :300      gg  光标移动到第一行   G 移动最后一行
设置行号  :set nu    取消行号  :set nonu            
复制  yy      复制多行  nyy    
粘贴    p   
删除(剪切)单字符   x     删除多字符  nx 
删除(剪切)行  dd      删除多行 ndd            
dG   从当前行到最后全部删除
撤销  u        反撤销  ctrl + r
颜色开关(语法高亮) :syntax off  关闭   :syntax  on   开启 
手动建立配置文件
vim   ~/.vimrc        
 可以写   set nu    让每个文件都显示行号
查找功能
vim  install.log 
/i686   N  向下    n 向上   查找i686 
/root    查找root 
替换功能
vim  install.log
:%s/要替换内容/替换后内容/g    全文替换
:1,20s/要替换内容/替换后内容/g  范围替换
注释   #  
:21,30s/^/#/g    添加注释       :25,30s/^#//g   取消注释
:60,70s/^/\/\//g   添加注释      :65,70s/^\/\///g  取消注释 

软件包安装

一   软件包分类
源码包:    
        优点: 特点  开源  自由定制
        缺点: 编译时间长,一旦报错,很难解决
二进制包:rpm包
        优点:安装速度快        简易
        缺点:自定义性差        依赖性
                a---->b---->c       树形依赖
                a---b----c---a      环形依赖            
库文件依赖       www.rpmfind.net

rpm手动安装


手动RPM命令安装
        1   包命名
            包名-版本号-发布次数-适合linux系统-硬件平台.rpm
        2   安装
            rpm  -ivh  包名(绝对路径)
                -i  安装  -v  显示详细信息      -h 显示进度
            rpm  -Uvh  包名
                -U  升级
        3   卸载
            rpm  -e  软件名    
        4   查询
            rpm  -q  软件名                查询包是否安装
            rpm  -qa  | grep  httpd         显示所有安装包
            rpm  -qi  软件名   查询包的信息      -p  未安装包
            rpm  -qip 包名    查询没有安装包的信息
                -i  information
            rpm  -ql  软件名   查询包中文件的安装位置
            rpm  -qlp  包名   查询没有安装的包,打算安装位置
                    -l  list
            rpm  -qf  系统文件名     查询系统文件属于哪个包


yum安装

yum  -y  install  软件名        安装         -y  自动回答yes
yum  -y  remove   软件名        删除
yum  -y  update   软件名        升级
yum  list                  查询所有可以安装的包
光盘作为yum源:
    1   cd  /etc/yum.repos.d/
        mv  CentOS-Base.repo  CentOS-Base.repo.bak
    2   mount /dev/sr0     /mnt/cdrom
    3   vim  /etc/yum.repos.d/CentOS-Media.repo
            baseurl=file:///mnt/cdrom/  指定yum源位置
            enabled=1                   yum源文件生效
            gpgcheck=0                  rpm验证不生效
yum  -y  install  gcc       (gcc是c语言编译器,不装gcc,源码包不能安装)

源码包安装(apache)

!!!  必须先安装gcc  !
apache解析php的效率特别高
1   远程传输工具传输apache到linux。
                httpd-2.2.29.tar.gz
2   安装
    1)解压
    2) cd  解压目录
    3)  查看安装文档
         INSTALL        README
    4)编译前准备
        ./configure  --prefix=/usr/local/apache2
        功能:
            1   检测系统环境,生成Makefile
            2   定义软件选项
    5)编译            
        make
    6)编译安装
        make  install
        报错判断:
            第一:安装过程是否停止
            第二:注意error  warning  no  等错误报警
3   启动
    /usr/local/apache2/bin/apachectl  start
    /usr/local/apache2/bin/apachectl  stop    
4   删除
    直接删除安装目录

用户和用户组管理

用户管理命令

一   用户管理命令      
        用户信息文件: /etc/passwd
    超级用户  uid 0
    普通不需要登录, uid 500 开始 人为用户(系统服务使用)
        影子文件:   /etc/shadow
        组信息文件:  /etc/group
    1   添加用户
        useradd  用户名        
        useradd  选项  用户名
useradd   -g    python   f1     添加f1 同时修改初始组为python
useradd   -G    python   f2    添加f2  同时添加f2为python组的附加组员
useradd   -c    "pyer"    f3    添加f3用户 同时注释
useradd    -d    /home/four    f4    添加用户f4同时修改家目录名
useradd    -s    /bin/nologin   f5    添加用户f5同时禁止登录
    2   设定密码            
        passwd  用户名
        passwd          改变当前用户密码
        passwd   root       改变root密码
    3   删除用户                
        userdel  -r  用户名
        -r  连带家目录一起删除
    4   添加组             
        groupadd  组名
    5   删除组             
        groupdel  组名        
    6   把已经存在的用户加入组         
        gpasswd  -a  用户名  组名        用户加入组
        gpasswd  -d  用户名  组名        把用户从组中删除

用户相关命令(id和切换)

id   用户名     查看用户相关ID号 ,显示用户的UID,初始组和附加组
su  - 用户名    切换用户身份

ACL权限

1.给特殊身份的人设置权限 
  getfacl  文件名  查看文件的acl权限
  setfacl   -m   u:用户名:权限   文件名    设置用户的ACL权限
  ls -l    查看有没有 +
  getfacl   test1.py  
  setfacl   -m   g:组名:权限     文件名     设置组的ACL权限 
  getfacl 文件名    查看权限
  setfacl  -x  u:f2   test1.py   删除f2用户ACL权限
  setfacl  -b  文件名   删除所有ACL权限
2.对目录设置ACL权限
  1)对目录本身设置ACL权限
  setfacl  -m  u:f2:rwx    目录名   
  2)对目录和目录内文件设置ACL权限 
  setfacl  -m  u:f2:rwx   -R   目录名     递归设置 
  3)对未来建立的文件设置ACL权限 
  setfacl  -m   d:u:f2:rwx    -R   目录名
  -R  递归
 !!! 如果给目录赋予ACL权限,2和3 命令都要输入 !!!


目录
相关文章
|
13天前
|
Linux 网络安全 Python
linux后台运行命令screen的使用
linux后台运行命令screen的使用
50 2
linux后台运行命令screen的使用
|
13天前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
124 3
|
19天前
|
存储 监控 安全
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
|
9天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
166 73
|
2天前
|
Linux Shell
Linux 中 Tail 命令的 9 个实用示例
Linux 中 Tail 命令的 9 个实用示例
20 6
Linux 中 Tail 命令的 9 个实用示例
|
7天前
|
Linux 应用服务中间件 nginx
|
3天前
|
机器学习/深度学习 安全 网络协议
Web安全-Linux网络命令
Web安全-Linux网络命令
8 1
|
8天前
|
Ubuntu Linux Shell
Linux系统命令 安装和文件相关命令
本文档详细介绍了Linux系统中的常用命令,包括软件安装卸载命令如`dpkg`和`apt-get`,压缩与解压命令如`gzip`、`bzip2`和`xz`,以及`tar`命令用于打包和解包。此外还介绍了文件分割命令`split`,文件操作命令如`cat`、`head`、`tail`、`more`、`less`等,管道命令和`wc`、`grep`、`find`、`cut`、`sort`、`uniq`、`diff`等实用工具。最后,文档还讲解了文件属性相关的命令如`chmod`、`chown`、`chgrp`以及创建硬链接和软链接的`ln`命令。
|
8天前
|
Linux Shell 网络安全
Linux 用户管理命令
本文详细介绍了Linux系统中的各类常用命令,包括用户管理(如`adduser`, `usermod`, `passwd`等)、系统操作(如关机、重启、注销)、磁盘管理(如`df`, `mkfs`, `mount`)及网络管理(如`ifconfig`, `ping`, `ssh`)等。通过具体示例展示了每个命令的基本用法和应用场景,帮助用户更好地理解和掌握Linux系统的管理和操作技巧。
|
8天前
|
存储 Ubuntu Linux
linux中的find 命令详细用法
本文介绍了如何将 `find` 命令与 `exec` 结合使用,通过具体示例展示了多种应用场景,如显示文件属性、重命名文件、收集文件大小、删除特定文件、执行工具、更改文件所有权和权限、收集 MD5 值等。文章还探讨了 `{} \;` 和 `{} +` 的区别,并演示了如何结合 `grep` 命令进行内容搜索。最后,介绍了如何在一个 `find` 命令中使用多个 `exec` 命令。这为 Linux 用户提供了强大的文件管理和自动化工具。