Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1258869
  • 博文数量: 548
  • 博客积分: 7597
  • 博客等级: 少将
  • 技术积分: 4224
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-15 13:21
个人简介

嵌入式软件工程师&&太极拳

文章分类

全部博文(548)

文章存档

2014年(10)

2013年(76)

2012年(175)

2011年(287)

分类: LINUX

2011-02-17 17:21:31

第一、基本命令

1、帮助命令
man useradd 
man -a passwd

info  useradd
-l  回到上级菜单
home 回到页面顶部
?  接受命令的帮助
h  info介绍
q  退出




命令分两种:
外部命令   ---  对应一个真实存在可执行文件
内部命令   ---  是属于shell内嵌的功能(参数)


useradd --help
useradd -h

help cd   <---查看内部命令的帮助



2、

cd   
cd 
cd ~
cd -
cd 
cd .  切换到当前目录
cd .. 切换到上一级目录

绝对路径:一个完整的路径,从/开始算

pwd

touch  <---  touch filename  ; touch a{1,2,3}

rm   

ls  -a  -l
# ls -l
drwxr-xr-x 3 root    root        60 12-08 09:22 bus
文件属性   文件硬链接数  拥有者  拥有组  文件尺寸文件最后修改时间文件名

d |rwxr-xr-x
文件类型 |权限信息

文件类型:
d -- 文件夹 directory
c -- 字符设备文件 
b -- 块设备 block 硬盘,U盘 
s -- Socket文件,本地套接字文件 ,专门用于linux或者Unix 本地通讯的接口
l -- 字符链接文件(软链接),就相当于Windows下的快捷方式
p -- 管道文件  
- -- 普通文件

ls -al
ls -lt
ls -R 递归显示子目录和子文件
ls -lh
ls -ld  /tmp/test/dir2
ls -l ./file1

mkdir 
mkdir -p ./dir2/subdir1/fsdir2

cp -a

mv


more  less   cat   | echo 

cat /etc/fstab
more /etc/rc.d/rc.sysinit 
less /etc/rc.d/rc.sysinit 

cat /etc/rc.d/rc.sysinit | less  <---使用管道
cat /etc/fstab  | grep "home"

echo "hi  mary"

重定向  >   1>  2>  &>  <
echo "Come,baby" > ./file  <---  1> 或者 > 标准正确重定向 ,这里是把标准正确输出重定向到file文件
echo "Hi" > /dev/tty3

[root@dns test]# ls /ffff > ./file3
ls: /ffff: 没有那个文件或目录
[root@dns test]# cat file3  《---没有内容
[root@dns test]# ls /ffff 2> ./file3 《-- 2> 标准错误输出重定向

echo "123"  >> ./output  追加内容

ls -l file1 file2 2>/dev/null  <---把错误信息屏蔽
ls -l file1 file2 &>/dev/null


挂载:
# showmount -e 10.1.1.20

# mount -t nfs 10.1.1.20:/share/ftp_source/class/12  /mnt <---挂载nfs资源
# umount /mnt
或者
# umount 10.1.1.20:/share/ftp_source/class/12

# mount  -o loop,ro  /mnt/rhel/rhel-server-5.4-i386-dvd.iso /mnt2
<--- -o 指定挂载参数 ,loop是典型的镜像挂载选项 


=================================================

VIM 编辑器

分三种模式:
命令模式
末行模式
编辑模式

从命令模式 --》 编辑模式
i  I
a  A
o  O

s  S

cw 修改一个单词

从编辑模式 ---》 命令模式 ESC


命令模式
u  <--撤销上一步的操作
ctrl + r 重做
0  光标停到行首
$  光标停到行末
r  修改一个字符
dw
dd  删除一行
3dd 删除3行
yy 复制一行
p 在光标的下一行粘贴之前通过yy复制的内容
4yy
yw 复制单词
gg <--光标回到文件的顶部
GG <--回到文件的底部

从命令行模式 --》 末行模式

set nu 或者 set number  显示行号 
set nonu 
set autoindent 自动缩进

替换
:1,4s/hello/hi/  <---把每一行第一个找到的关键字替换,剩下的不替换
:1,4s/local/hello/g  <--- g全局替换,把正行找到的所有关键字都替换
:1,$s/local/come\ on/g  <--- “\ “是转义空格
:1,$s/\\/\ /  <---  把"\"题换成空格

e! 把文件的所有修改都取消掉,回到最后一次保存的状态

w 保存
q! 不保存退出
wq 保存并退出
wq!  遇到一些只读文件,需要强行保存

cp /etc/shadow  /tmp/test
要求: 
把前10行的99999替换成88888
把第11行到最后的99999题换成 16888
把: 替换成 -
把! 替换成 @
复制第一行到文件最后一行

=============================================================
用户管理
单用户多任务的系统
多用户多任务的系统  Linux
用户分类: 
管理员  仅且只有一个,用户的id (uid)= 0
系统帐号(伪帐号)uid >=1  <=499  一般不允许登录系统,存为的意义只为了让某些服务和程序运行的时候保留所用的身份
普通帐号 一般是后期手工建立,允许登录系统的


手工添加用户的命令
useradd  == adduser

# useradd hellen  <---添加一个普通帐号,名字叫hellen

分析一下添加用户的过程:
1、在/etc/passwd文件最后一行添加相关的信息
hellen:x:543:543: :/home/hellen:/bin/bash  
1     :2:  3  :4  :5:  6          : 7

1  用户名 ,这个用户名是为了访问用户登录时候使用的名字
2  密码字段 ,现在的linux操作一般都把这个密码字段的值存放到/etc/shadow文件,只留下一个x
3  uid 用户的id
4  gid 用户的组id
5  用户的描述
6  用户的家目录 ,在家目录里,拥有者具有所有权限,而别的用户无法访问
普通用户默认的家目录都是在/home/username 
7  默认使用的shell
普通帐号的默认shell 一般是/bin/bash
系统帐号的默认shell 一般是/sbin/nologin  <-- 起到阻止用户登录系统的目的

2、在/etc/shadow添加相应的信息
hellen:$1$Ole7qWxc$u4htj5BdvZbSiLFXMo1ZS.:14586:0:99999:7: : :
1     :2: 3   :4 :5    :6 :7: 8: 9

1 用户名
2 加密之后的密码
3 用户密码最后修改的时间,而这个时间是距离1970-01-01到现在的天数
4 密码修改最低间隔时间 ,如果是0 就是不受限制,用户可以随时修改密码
如果是2 用户每次修改密码之后需要两天后才能再次修改
5 代表密码的有效期 ,99999就是密码永久生效,如果是30,就代表密码30天后期,必须进行修改
6 代表密码过期前多少天就警告用户  如果是7 也就是密码过期前7天就开始警告用户,密码快过期了
7 密码过期之后在多少天之内可以登录  如果留空,就是默认值-1 也就是说,不管密码过期多少天之后,都允许登录,但强行要求修改密码 ,如果 5 ,就代表密码过期之后的5天之内,帐号可以登录,但强行要求修改密码,过了5天都没登录过,帐号就不能登录。
8 帐号的过期时间, 只要帐号过了这个日期,帐号就失效,不能再登录了 ,这个时间也是相对于1970-01-01的天数
9 保留字段,没有用处

3、在/etc/group文件添加对应的组信息
hellen:x:543:
组名字:组密码:组ID gid: 组成员

4、在/etc/gshadow添加信息
hellen:!::
组名:密码字段:组管理:组成员
密码字段和shadow的密码字段如果是“!”就代表这个用户禁止登录

5、添加用户家目录
/home/hellen
6、把对应的bash环境变量文件复制到用户的家目录
.bash_history
.bash_logout
.bash_profile
.bashrc

这几个文件都是从/etc/skel复制过去的,复制过去之后,并且把文件的相关权限修改正确

7、添加用户的邮件文件,同样权限需要设定正确
/var/mail/hellen 

-----------------
手工添加用户

1、vim /etc/passwd
mj:x:544:544:Micheal Jackson:/home/mj:/bin/bash

2、vim /etc/shadow
mj:$1$Ole7qWxc$u4htj5BdvZbSiLFXMo1ZS.:14586:3:14:5:3:14606:
关于密码的设定可以2种方式:
a、编辑好这个文件,然后通过passwd mj 修改
b、通过命令grub-md5-crypt 获取到加密的字符串,然后替换文件里的密码字符串

3、vim /etc/group
mj:x:544:

4、vim /etc/gshadow
mj:!::
5、添加用户的家目录
mkdir /home/mj

6、复制环境变量文件
cp /etc/skel/.bash*  /home/mj

chown -R mj:mj  /home/mj 
chmod  700 /home/mj

7、创建用户的邮件文件
touch /var/mail/mj
chown mj:mail /var/mail/mj
chmod 660 /var/mail/mj
-----------------------------------------------------

man useradd
# useradd -c "acer boy" -d /home/acerboy -e 12/28/09 -f 5 -g hellen -s /bin/ksh acer


修改用户信息的命令 
usermod

# usermod   -s /bin/bash  acer

====================

用户组的管理,权限管理等明天讲


作业:
学习手工添加一个用户,名字随便,要求:
密码只能每隔3天修改一次,密码有效期8天,密码过期前3天开始警告,密码过期2天后就不能登录了,帐号在2009/12/26 就不能再使用
阅读(684) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:ule笔记之02

给主人留下些什么吧!~~