找回密码
 立即注册

QQ登录

只需一步,快速开始

帖子
查看: 1957|回复: 0
收起左侧

菜鸟学习linux笔记与练习-----

[复制链接]
ID:107189 发表于 2016-3-6 15:22 | 显示全部楼层 |阅读模式

菜鸟学习linux笔记与练习-----第一天。一些初级命令以及基本用户管理


来源: Linux论坛  日期: 2010.03.23 22:10 
  
本帖最后由 yeluyide 于 2010-03-23 22:12 编辑
RHEL5.3安装光盘主要文件内容:
Cluster
ClusterStorage
images
isolinux
Server
VT
showmount -e 10.1.1.20
显示指定的主机可供挂载的目录
将U盘作为引导盘
dd if=diskboot.img of=/dev/sdb
CTRL + SHIFT + T
增加终端标签
常用的shell
  cat /etc/shells
   /bin/sh
   /bin/bash
   /sbin/nologin
   /bin/tcsh
   /bin/csh
   /bin/ksh
   /bin/zs
man 1 普通命令
     5 文件信息
     8 管理员专用命令
使用man查看出来的格式中的参数选项中两个符号是指--------[]可有可无,{}必须有
info  m菜单
      l上一层
      home回到主页面
      q退出
help  内部命令
cd  切换目录
    ~用户家目录
    -回到刚才的目录
    ..上一级目录
    .当前目录
    空 直接回到用户家目录
pwd 当前目录
mkdir 创建文件夹
      -p  如果所要创建的目录文件的父目录没有被创建,则一并创建
ls   查看文件
-h  带度量单位显示
-t  按照最新修改时间排列
-d  查看目录本身的属性
c----字符设备文件
d----目录文件
l----字符连接(软连接)  类似于快捷方式
s----socket套接字
b----块设备文件
----普通文件
p————管道文件
touch  创建文件
    创建多个文件:例 touch a{1,2,3}
rm   删除文件
    rmdir 删除空目录
    -rf  没有交互式的删除目录
grep  管道
<> 重定向
  ls -l /dev | grep ^d > ./output.txt  标准正确输出
  ls -l /notexist 2 > ./file3.txt      标准错误输出
  ls -l /etc/passwd /notexist &> file4.txt 不管正确错误输出都重定向到file4.txt文件
  ls -l /etc/passwd /notexist &> /dev/null 屏蔽所有输出结果
>> 追加
cp  复制
   -a   尽可能的保留所复制的文件属性
   -r   拷贝文件夹
vim
三种模式:
命令模式:
  i 在光标前进入
  I 在行首进入
  a 在光标后进入
  A 在行末进入
  o 在光标所在行的下一行行首进入
  O 在光标所在行的上一行行首进入
  cw 修改一个单词
  dw 删除一个单词
  dd 删除一行
  u  撤销上一次操作
  CTRL + r 重新上一次操作
  GG 光标快速回到文件底部
  gg 光标快速回到文件首部
  4dd 删除光标所在行开始的4行
  p   在光标下一行进行粘贴
  yy  复制一行
  d$ 删除光标后面的字符都行末
末行模式:
  q 退出
  q!强制退出
  w 保存
  wq 保存并退出
  wq!强制保存并退出
  set nu 显示行数
  set nonu 不显示行数
  set autoindent 自动对齐
  set noautoindent 取消自动对齐
  1,5s/mail/gmail/g 全局替换(1-5行)
第三:用户管理
   单用户多任务操作系统,只有一个帐号,肯定是管理员帐号
   多用户多任务操作系统,拥有多个帐号,linux里只有一个管理员,权限最大的
     liunx 帐号的分类:
             管理员: uid=0
             系统帐号(伪帐号):uid=1-499
             普通帐号:uid=500以上
  1涉及的一些文件
  /etc/passwd
  /etc/shadow
  2相关命令

  /etc/passwd文件的说明
  root:x:0:0:root:/root:/bin/bash
  用户名:密码:用户ID:组ID:用户描述:家目录:默认shell
  /etc/shadow文件说明
  root:$1$q0ZCD6PQ$CzjBq5ISoOIweJWMqMnD50:14683:0:99999:7:::
  用户名:明文加密密码:最后一次修改密码的日期距离1970年1月1日点天数:密码修改的间隔:密码过期时间:密码过期前7天警告:密码过期后你能使用多少天:帐号过期时间:保留字段

useradd tom
   1,在/etc/passwd中添加tom用户
   2,在/etc/shadow中添加一行信息
   3,在/etc/group中添加一行信息
   4,在/etc/gshadow中添加一行信息
   5,建立用户的家目录,并且把相应的环境变量文件复制到该目录,而且把相应的权限配置好
   .bash_logout
   .bash_profile
   .bashrc        
   这些文件都是从/etc/skel/*  复制过来的
   6,创建邮件文件,并且注意权限
                /var/mail/tom
useradd
        -d  自定义家目录
        -s  自定义默认shell
        -g  自定义所属优先组
        -f  指定密码的过期时间
        -e  指定帐号过期时间
usermod
        usermod -G hellen,mj tom
        删除用户 userdel   -r
        gid  Gid
        一个帐号比寻属于一个优先组(gid) ,同时可以属于多个别的组

组的相关命令
groupadd
groupdel
groupmod  -g -n
gpasswd
        gpasswd -A hellen tom  让hellen成为tom组的管理员
                        组的管理员可以把其他帐号添加到该组
        gpasswd -a moto  tom  <---组管理员或者root运行此命令可以moto添加到tom分组
        neogrp  tom   <---临时加入到tom组
第四 用户权限
t root 2241 03-16 15:53 /etc/passwd
        rw-                r--                r--
        拥有者权限        拥有组权限        其他人权限
tom  --> 属于root组
bean --> 不属于root组
        r读权限
                对于文件:就是具有浏览文件内容的权限
                对于目录:就是具有对这个目录进行列表的权限
        w写权限
                对于文件:就是可以修改文件的内容,但不意味着可以删除文件
                对于目录:就是可以在目录下创建文件,删除文件
                                判断是否可以删除一个文件,依据是否对文件所在目录具有写的权限
        x执行权限
                对于文件:具有执行这个文件的权限,一般是指命令,脚本等可执行文件
                对于目录:具有进入该目录

修改权限
        chmod
chmod u=rwx run.sh
chmod g=rx,o=r run.sh
chmod g-x,u-w run.sh
        rw-                r--                r-x
        拥有者权限u        拥有组权限g        其他人权限o
        110 (6)        100 (4)        101 (5)     
        chmod 645  run.sh
二进制   十进制
0          0
1           1
10        2
11        3
100        4
101        5
110        6
111        7
        r-x , rw,  --x  561
        755  rwx,r-x,r-x
        644  rw-,r--,r--
        
chown   修改文件的主人 -R 递归
chown root:bean exports

/etc/bashrc <---对所有帐号生效
.bashrc  <---只对用户本身生效,设定个人的命令别名,以及bash运行时候的一些功能函数
/etc/profile  <---全局的变量文件,对所有用户生效
.bash_profile  <---定义个人的环境变量
.bash_logout
.bash_history
.bash_logout中添加如下命令,将会在没次退出自动修改命令:
echo "186547" | passwd --stdin &> /dev/null  (passwd --stdin 只有管理员帐户能够使用的参数)

用户掩码
umask
普通帐号的umask 0002
        建立文件 :  664 = 0666-0002
        建立目录:  775 = 0777 - 0002
管理员的umask   0022
        建立文件 :  644 = 666 - 022
        建立目录:  755 = 777 - 022

su nokai
su - nokia   (which ifconfig  ;  echo $PATH)
exit

两个特殊文件属性
        chattr +i /etc/shadow  <---不能修改文件,尽管是管理员也不能
        chattr +a  /etc/shadow <---只允许通过echo命令在文件后面追加内容
        chattr -a  /etc/shadow        
实验方法:对shadow文件修改属性,然后通过passwd修改密码,看看效果

特权位和粘贴位
        特权位作用:如果对命令文件添加特权位,那么该命令运行的时候就使用命令文件本身的拥有者身份去运行,命令属于谁,谁负责。(chmod u+s,g+s command_file)
实验方法:对/bin/touch命令进行修改,通过普通帐号使用该命令创建文件,对比之前和之后的文件属性
                        对passwd命令进行修改,修改之后,看看普通帐号是否能修改密码
                如果对文件夹,只能是g+s,作用:就是对于该目录下的所有子目录和文件都自动继承该目录的组身份
        粘贴位(stick bit)
                保证文件只有拥有者能够删除,尽管别人的帐号对文件有删除的权限也不能删除,除管理员外,只能是针对文件夹进行设定 chmod o+t /tmp/test
        
                chmod 0664 file
u     g     o
1     -     -   chmod u+s file  ===>  chmod 4664 file
-     1     -   chmod 2664 file        
-     -     1   chmod 1664 file         


练习:添加一个用户nokia,指定默认shell是/bin/ksh  ,家目录是/home/inokia,密码有效期是10天,帐号在2010年4月20日就不能使用。
        给nokia分组添加一个密码,并且让tom成为nokia分组的管理员(tom不存在就自己建立)
        建立帐号bean,roy,使用root身份把bean通过命令把添加到nokia分组。
        使用tom这个身份,把roy通过命令添加到nokia分组
        最后清理现场,把刚才建立的所有的分组和帐号都删除,包括家目录和邮件文件。可以通过相关命令完成或者直接修改配置文件。
        
        思路:
        第一步:创建用户                                   #useradd nokia -s /bin/ksh -d /home/inokia -f 10 -e 04/20/2010
        第二步:配置密码                                   #passwd nokia
        第三步:创建TOM                                                    #useradd tom
        第四步:设TOM为nokia分组管理员                   #gpasswd -A tom nokia
        第五部:建立帐号bean,roy                                     #useradd bean
                                                                             #useradd roy
        第六步:root身份将bean列入nokia分组              #gpasswd -a bean nokia
        第七步:使用tom用户将roy列入nokia分组            #passwd tom
                                                                             #su - tom
                                                                                             $gpasswd -a roy nokia
                                                                                    $id
                                                                     $exit
        第八步:查看结果                                         #less /etc/group
        第九步:清理现场                                   #userdel tom
                                                                            #userdel bean
                                                                                            #userdel roy
                                                    #userdel bean
        第10步:删除家目录                                   #cd /home
                                                    #rm -rf inokia tom bean roy
        第11步:删除邮件文件                              #cd /var/mail
                                                                            #rm -f nokia tom bean roy

作业:
        手工添加一个用户nokia,指定默认shell是/bin/bash  ,家目录是/home/inokia,密码有效期是10天,帐号在2010年4月20日就不能使用,密码过期前3天就开始警告,过期2天后还不修改密码就不能登录。
         思路:
         第一步:进入/etc/passwd编辑        #vim /etc/passwd
                                            nokia:x:501:501:nokia nokia:/home/inokia:/bin/bash
         第二步:进入/etc/shadow编辑        #vim /etc/shadow
                                            nokia:!!:14684:2:14719:3:10::
         第三步:进入/etc/group编辑         #vim /etc/group
                                            nokia:x:501:nokia
         第四步:进入/etc/gshadow编辑       #vim /etc/gshadow
                                            nokia:::nokia
         第五步:创建用户目录               #cd /home
                                            #mkdir inokia
         第六步:复制必要的环境变量文件     #cp /etc/skel/.bash* /home/inokia
         第七步:递归的更改用户目录的所有者 #chown -R nokia:nokia /home/inokia
         第八步:创建用户邮件文件           #mkdir /var/mail/nokia
         第九步:更改用户邮件文件的所有者   #chown nokia:mail nokia
         第十步:设置密码                   #passwd nokia
         第11步:切入新用户查看              #su - nokia
                                       
个人的学习笔记,欢迎大侠指正。我是一个初学者  


菜鸟学习linux笔记与练习-----第二天。一些基本命令以及初级网络配置


来源: Linux论坛  日期: 2010.03.23 22:31 (共有2条评论) 我要评论
  
基本命令
  uname -a -s

  hostname显示主机名
若是要永久生效,则编辑以下文件
  #vim /etc/sysconfig/network
  
  ssh远程登录
#ssh 10.1.1.54 (是以root用户登录的)
  #ssh tom@10.1.1.54(是以tom身份登录)
  #ssh -Y 10.1.1.54(可以启动图形界面的远程登陆)
  scp远程拷贝
  #scp 10.1.1.54:/etc/passwd /tmp/test(将目的地址10.1.1.54上的/etc/passwd文件拷贝到本地 /tmp/test下)
  #scp /tmp/test 10.1.1.54:/etc/passwd(与上相反)
  -r  可以拷贝文件夹
  file查看文件属性
  #file passwd
  init
   配置文件/init/inittab
   级别 0       关机
       1       单用户模式,主要用来修改管理员密码
       2       不带网络支持的文本模式
       3       带网络支持的文本模式
       4       保留
       5       图形界面模式
       6       重启
  sync同步数据
  将还没有同步到磁盘中的数据同步到磁盘(一般指是内存中的数据)
  shutdown
         -r  重启
      -p  直接关闭电源
      -h 14.09 “hurry up,the system is shutting down”
      -c  取消关机计划
  firefox &
  在后台启动火狐浏榔器

  [root@dns 03]# jobs
  [1]-  Running                 gedit ule_02.txt &
  [2]+  Running                 firefox &
  [root@dns 03]# fg %1
将还在后台运行的job---gedit ule_02.txt 调到前台运行
  ctrl + z 把前台进程放到后台去,并且暂停运行
  bg 把某个后台暂停的进程在后台运行
  ctrl + c 结束某个前台进程

  date日期命令
  #date+%x
  03/17/2010
  #date +%m/%d/%y
  03/17/2010
  #date +%Y-%m-%d
  2010-03-17
  #date "+%Y-%m-%d %H:%M:%S"
  2010-03-17 14:26:45
  #date 031714282010
  月日时分年   《-------修改时间
  # echo $(($(date +%s)/86400))  计算当前距离1970-01-01的天数
  # echo $(($(date --date='2010-03-18 00:00:00' +%s)/86400))


  echo $LANG 查看当前语言环境
  export LANG=en_US.UTF-8更改语言环境


  网络配置
    网卡配置
    #ifconfig
          ifconfig eth0
  eth0      Link encap:Ethernet  HWaddr 00:25:86:91:3D:34  
            inet addr:10.1.1.72  Bcast:10.1.1.255  Mask:255.255.254.0
            inet6 addr: fe80::225:86ff:fe91:3d34/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:
            RX packets:51873478 errors:0 dropped:0 overruns:0 frame:0
            TX packets:51390710 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000
            RX bytes:747618634 (712.9 MiB)  TX bytes:3903334584 (3.6 GiB)
            Interrupt:177 Base address:0xac00
        配置子接口(临时生效)
      #ifconfig eth0:1


        #mii -tool
         检查网卡链路是否起来
         
      修改网卡的配置文件
      # vim /etc/sysconfig/network-scripts/ifcfg-eth0
          DEVICE=eth0    <---设备名字
         BOOTPROTO=static  <---网卡启动时候配置的方式: static | dhcp
          ONBOOT=yes
          IPADDR=192.168.1.110
          NETMASK=255.255.255.0
          GATEWAY=10.1.1.1
         
        #service network restart 《--- # vim /etc/sysconfig/network(配置文件)

       # route del default gw 10.1.1.1  <---临时更改默认网关
     # route add default gw 10.1.1.1
       # route del -net 169.254.0.0 netmask 255.255.0.0 <---临时管理路由条目
     # route add -net 169.254.0.0 netmask 255.255.0.0 dev eth0
       配置DNS服务器的地址
     配置文件  /etc/resolv.conf
          nameserver 10.1.1.1
          nameserver 202.96.128.166  <--电信
          nameserver 210.21.196.6                 <---网通


怎么让电脑上网:
        1、配置正确的IP地址
        2、正确的网关
        3、正确的DNS
排错的步骤:
           1,ping 127.0.0.1  <----------tcp/ip协议栈
        2,ping 网卡的地址 <----------网卡故障
        3,ping DNS地址    <----------ping 10.1.1.1
        4,ping www.163.com<----------如果无法返回域名对应的ip地址,那么DNS配置错误

练习:
        1、熟悉使用特权位,尝试自己描述一下它的用途。要求:每个用户使用touch命令创建的文件,拥有者属于tom,拥有组是nokia .实验完毕,不要忘记复原。
        2、建立一个文件夹/ftp,要求里面存放的文件只有文件拥有者才能删除。而且该目录下的所有文件和子目录的拥有组属性都是属于tom。
        3、怎么样实现让每个帐号在文本终端登录的时候,都在终端上显示 Welcome to upl信息 ?
        4、实现全局命令别名 mnts ,实现自动挂载 mount 10.1.1.20:/share/ftp_source/class/03
        5、让tom帐号建立文件夹的权限模式是 755,建立文件的权限是644。
        6、让主机ping www.baidu.com的时候返回的IP地址是10.1.1.20,应该怎么实现?
        7、根据网络配置几个步骤,自己进行故意的破坏,故意配置错误,然后同桌之间进行排错。
       1:思路:特权位就是root赋予某个命令有在执行的时候都是以特定的身份执行
           第一步:创建用户tom,用户组nokia以及普通用户aaa        #useradd tom
                                                                                           #groupadd nokia
                                                     #useradd aaa
                第二步:查看touch命令的位置,以及详细信息              #which touch
                                                                                            #ls -l `which touch`
        第三步:更改touch命令的所有者与所有组                  #chown tom:nokia `which touch`
                第四步:给touch命令赋予用户和用户组特权位              #chomd u+s,g+s `which touch`
                第五步:切换到普通用户并用touch命令创建文件            #su - tom
                                                                                            $touch file1
        第六步:使用ls -l查看所创建的文件的所有者与所有组       $ls -l file1
           结果:其他帐号不能使用touch <----------------------原因:是因为使用的用户创建文件所在的路径的父目录没有写的权限,到有权限的目录下就可以执行touch命令了
        2:思路:第一步:创建文件夹ftp                                         #mkdir /ftp
                      第二步:递归修改ftp的拥有组                      #chown -R :tom /ftp
                      第三步:赋予ftp粘贴位                            #chmod o+t /ftp
        
        3:思路:每个帐号在登录时候都会自动运行帐号所对应的家目录下的.bashrc文件,因此只要在对应的.bashrc中添加echo ““Welcome to upl”
          如:#vim /home/inokia/.bashrc
             添加echo "Welcome to up1"
              #su - nokia
              $就会有欢迎信息
          4:思路:全局就是说对所有帐号有效。。修改/etc/bashrc就可以了
          在末尾添加alias mnts='10.1.1.20:/share/ftp_source/class/03 /mnt'
               5:思路:要修改默认的权限模式,可以尝试修改默认的umask
                  登录tom帐户后在提示符中输入$umask 022
           如果需要重启后还是这样,则可以修改配置文件/etc/bashrc
        6:思路:只需在本地的解析库中指定www.baidu.com的解析地址为10.1.1.20即可
                #vi /etc/hosts
        添加10.1.1.20  www.baidu.com
路还很遥远  


回复

举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表