suaLinux账户管理】
1, 怎样登入Linux主机?当你输入账号密码系统怎么判断呢?
1)先寻找 /etc/passwd 文件里有木有这个账号
没有:跳出
有:将跟该账号对应的UID 与 GID 读出来,还有 shell设定与家目录(home)
2)再寻找 /etc/shadow 文件里对应的 GID跟UID 密码是不是符合
符合:登入系统
不符合:跳出
root的 UID 跟 GID均为 0
2, passwd 的构造
第一栏:账号名称
第二栏:密码(由于将密码搬到etc/shadow 中就用 x代替)
第三栏:UID
第四栏:GID 跟/etc/group 文件有关
第五栏:说明
第六栏:家目录
第七栏:shell 沟通人类下达命令与硬件之间真正动作的界面!
3, shadow 的构造
第一栏:用户名
第二栏:密码(密码栏第一个字符为 * 表示用户不用来登陆)就是说管理员只要在“不听话”的账号密码前加一个 * 他就登陆不上了!
【root密码忘记了怎么办?】
Single 模式登陆进入 /etc/shadow 文件编辑将密码清空:登陆后用 passwd再设定密码就可以了。
第四栏:上次更改密码的日期。15274为累计天数
第五栏:密码需要变更的天数
第六栏:以后的都不重要了…………囧囧囧
4, /etc/group 与 /etc/gshadow简介
群组名称密码群组ID 支持的账号名称
了解下就行了
5, 增加使用者的一般步骤
Groupadd –g 600 test //-g 是自行设置GID大小
Groupdel test
Useradd -u 666 -g 600 -d /home2 -s bash tian
// UID 666 属于GID为600的群组 -d 说明家目录 -s 说明 shell
//此外使用useradd 时候系统会自动的将 /etc/skel 复制为家目录要想增加家目录下面的东西只需要在使用 useradd 之前更改 /etc/skel
6, 关于账号变更时间、密码长度、密码最小值、UID_MIN、GID_MAX的设定在/etc/login.defs
关于useradd 命令的情况及其设定在文件 /etc/default/useradd
7, passwd 命令的使用
查看其存放位置:which passwd ls –l `which passwd`存放在/usr/bin/passwd
Passwd root 根据提示更改密码
8, sudo 执行root用户才能执行的命令
sudo vi /etc/shadow但是需要输入使用者的密码而不是 root密码
9,查询账户的 UID GID (除了在 /etc/passwd /etc/group中直接查看)
Id root
Finger root //查询相关信息
Groups //直接输入就可以看到当前用户所属的群组
【一, 例行性命令】定时做的任务
1, 关于使用图形化设置界面命令的解答
ntsysv //打开界面
如果 RedHat 提示找不到命令的话,应该是变量设置的问题!
解决方法如下:
1) 先在命令行中输入
export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin:
回车
这样你可以临时恢复环境变量设置,
然后就可以用了。想一直有用的话
#或者$ cd ~
vi .bashrc或者vi .bash_profile
然后把上边那句写进去,好象要加点什么吧。
export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin$PATH
下次使用bash的时候就生效了。
2) 长久设置(没有解决)
2, at 用法(一次性执行的命令)
【】/etc/crontabcron服务会每分钟读一次这个文件跟下面的文件
【】当你下达命令时候,命令会写在:/var/spool/cron目录中自动创建一个以用户名命名的文档记下命令
【】执行的记录放在:/var/log/cron
1)at –m time (例如:at -m 10pm 在晚上10点执行****任务执行时屏幕输出结果)
-m //表示屏幕输出执行结果
time格式:04:20 2011-11-03; 4pm+3 days;三天后的下午4点执行
1am May 30 //5月30 凌晨1点执行
写上时间后会出现这个符号>写上要执行的命令 Ctl+D 结束命令
2)atq //查看当前任务
3)atrm number //删除任务这里的number 为任务号 atq可以查看
3,crontab用法(可以循环执行的命令)
参数解析:-l //列出crontab的内容
-e // 编辑crontab
-r //删除crontab的内容(全部删除)
例题:Crontab -e //进入vi编辑界面
59 23 1 5 * mail tianshuai </home/test/lover.txt
解析:分钟/小时/日/月/年(*代表什么都适合)
意义:想要在每年的 5月1号 23:59 发一份信给tianshuai
// */5 每隔5分钟执行一次
收到的mail 会存放在 /var/spool/mail/tianshui 文件内
【二, 程序与资源管理】
1,X-Window只是Linux下的一套软件,不能算操作系统
2,man 命令(系统执行man命令的时候会到 /etc/man.conf中查找 MANPATH而MANPATH存放在 /usr/share/man /usr/local/man中)
, 3,背景工作管理
1) &让命令在背景执行。如:Find / -name test &
2) Ctrl + Z 背景执行不被 Ctrl +C中断(比如:vi 编辑时可以先暂停)
3) Jobs 查询
4) fg number //将暂停的任务拿到前台来执行
5) bg number //将背景中任务由暂停à运行
6) kill number // -9 强制中断进程
7) ps –aux //查看正在执行的系统进程。
重要的一列:STAT:该程序的状态,( R )为可执行的,( S )为该程序正在睡眠中,就是没有执行了,( T )正在侦测或者是停止了,( Z )僵尸程序,就是 zombie 死掉的程序啦!需要以 kill 除去啰!
Ps -l //也可以显示
8) Top 查看进程 //动态查看,每隔5秒刷新
9) Free 查看内存使用情况
10) Uname -a //所有系统信息 -p //CPU信息 -n //列出host name -r//kenel 版本信息
ps –aux | grep crondd
【三, 开机流程与Loader】没仔细看
【四, 原始码与Tarball】
1),File aa.txt //查看文件的类型及相关信息
2),利用Patch 更新原始码
1,原始代码,想更新expatch.old
expatch.old
echo tianshuai
expatch.new
echo tianshuai
echo is a student
2,输入命令查看两个文档不同
diff -c expatch.old expatch.new
输出:
*** expatch.old 2011-11-04 19:42:09.000000000 +0800 //这是等待更新的
--- expatch.new 2011-11-04 20:03:24.000000000 +0800
***************
*** 1 ****
--- 1,2 ----
echo tianshuai
+ echo is a good student //先添加代码
3,vi patch.path
将上述代码拷贝进去
执行命令:patch –p0 < expatch.patch
3),静态链接库 lib***.a
编译行为:整个静态链接库都整合到执行文件
独立执行状态:编译成功后可以独立执行,不必要求读取函数库
升级难度:需要从新编译
动态链接库 lib***.so
编译行为:编译后只指向动态函数库位置,没有整合到执行档中
独立执行状态:不可以独立执行,必要求读取函数库存在且目录不变
升级难度:不需要重新编译
4),验证软件的正确性
MD5sum -bct filename
-b //binary 的读文档方式
-c //检验MD5sun的档案指纹
-t //文字形态读取 MD5sum 的档案指纹
【六,RPM与SRPM套件管理员】
1),RPM (RedHat Package Manager) *******.rpm
安装套件时不需要将套件源码编译,但是一定要跟当初安装的主机的环境一致才可以安装。必须满足套件的相依性属性需求。安装的时候会将套件的信息写入RPM数据库,以便未来的查询、验证、与反安装。
缺点:反安装时,不要把系统底层套件移除,否则会出现问题。
2),SRPM(Source RedHat Package Manager) ********.src.rpm
带源码的套件。就是要想安装需要,编译一下。
好处是,自己可以修改源码后再编译。
3),详解RPM
rpm -i ****.rpm //安装时
-I //安装的意思
-v //显示细节
-h //已安装信息列显示安装进度
rpm -e **** //卸载
提示:can't create transaction lock on /var/lib/rpm/__db.000
原因:没有以root身份登录安装
解决方案:su root 然后安装就可以了
4),linuxqq-v1.0.2-beta1.i386.rpm
套件名版本释放次数适合的硬件平台附文件名
********************制作成功RPM********************************
5)1,下载zxvf rp-pppoe-3.10.tar.gzhttp://www.roaringpenguin.com/pppoe/
2,最好转到root身份下执行 su root
3, cp /home/rp-pppoe-3.10/rp-pppoe.spec /usr/src/redhat/SOURCES/
cp /home/rp-pppoe-3.10.tar.gz /usr/src/redhat/SOURCES/
//需要将配置文件跟压缩包同时拷贝到制作RPM 所需路径下
4, cd /usr/src/redhat/SOURCES/
5,rpmbuild -bb rp-pppoe.spec <==仅编译成 RPM 档案
rpmbuild -ba rp-pppoe.spec <==编译并同时产生RPM 与 SRPM 档案
出现错误: RPM build errors:
Installed (but unpackaged) file(s) found:
解决办法:
将/usr/lib/rpm/macros 中
%__check_files /usr/lib/rpm/check-files %{buildroot} 注释掉
步骤:cd /usr/lib/rpm/然后:chmod a+w macros
6,rpm –ivh ******.rpm //安装自己制作的rpm包吧
【七,Tarball跟rpm区别】
Tarball 是原始码,打包成 .tar.gz 解压后含:
1. 原始码2,侦测程序档案(configure/config)3,套件的安装说明(INSTALL或READEME)
2. 但是反安装很麻烦,就是卸载起来不好办。
RPM 是安装包 rpm –ivh ******.rpm 安装即可。可能依赖性比较高!!
【八,核心编译与模块管理】
概念:将核心的原始码编译成binary的可执行文件,成为系统可以认识的执行文件。
下载命令:wget http://aerosol.ev.ncku.edu.tw/~vbird/download/linux-2.4.18.tar.gz
查看内核版本:uname -r
1),核心的编译:要将核心放在这个文件夹下/usr/src/linux
2),如果没有linux 文件夹。直接将解压的kernel 文件夹放到/usr/src目录下。然后cd usr/src/linux***
3),make mrproper //去除已经编译过的文件
4),特别注意:如果你编译两次以上,会有上次编译的模块放到 /lib/modules中
Cd /lib/modules
Mv file file.old
5),make menuconfig //设定 kernel 的选项(这里一定要参照说明,有很多服务还有硬件支持一定要选中)
6),开始编译: make dep //建立相依的属性关系
Make clean //将旧资料去除
Make bzImage //开始编译核心
Make modules //开始编译模块
Make modules_install //将数据安装在 /lib/modules/***中
Make install //将建立的核心安装上
7)安装核心:核心编译完成放在/usr/src/linux/arch/i386/boot/bzImage中了
需要将核心放在/boot目录下
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.4.18
【九,系统设定常用指令】
1),setup //一个图形化设置界面
2),立即启动服务:启动apache
/etc/rc.d/init.d/httpd start
【十,认识系统服务】
1),vi /etc/services //窗口与服务的对应关系
第一栏:Daemon name
第二栏:daemon 使用的port以及网络数据包传送时的类型
第三栏:服务的说明
Service **** start //启动服务
3),系统开启的服务
netstat -r //显示当前的路由表
netstat -a //显示目前所有网络的联机状态
netstat -t/-u //显示Tcp Udp 封包的状态
netstat -l //仅显示LISTEN的内容
netstat -tlp //得到目前在 LISTEN 的 port 的服务名称
LISTEN:亦即监听状态中的 port
ESTABLISHED:已经建立联机的联机状况
TIME_WAIT:该联机已经是等待的状态
【十一,认识登录档】
Chattr +a filename //文件将不能进行操作
Chattr -a filename //文件恢复操作
Last // 调出登陆日志
分享到:
相关推荐
Linux 命令学习笔记 本笔记将涵盖 Linux 命令的基本概念、虚拟机的概念、Linux 主要目录结构、Linux 命令速查表、文件和目录常用命令等几个方面。 一、Linux 概念 Linux 是一种免费、开放源代码的操作系统,广泛...
这份"Linux学习笔记(强悍总结值得一看)"是Linux初学者的宝贵资源,也适合有经验的用户作为参考手册。以下是对笔记内容的详细概述: 1. **Linux常用命令**: Linux命令行是其强大的工具,掌握常用命令是Linux学习...
### Linux常用命令学习笔记 #### 一、更改帐号密码 - **命令**: `passwd` - **功能**: 更改用户密码。 - **语法**: `passwd` - 输入旧密码:`Old password:` - 输入新密码:`New password:` - 重新输入新密码...
程序员多少都需要了解一点linux命令的知识。 《Linux学习笔记》这份资料非常全面且详细,从 Linux 常用命令到 Linux 常用操作,再到网络管理、性能优化,几乎覆盖了 Linux 基础学习的方方面面,非常适合初学者入门...
在Linux操作系统的学习中,掌握命令行的使用是至关重要的。...总的来说,Linux学习笔记是一个全面了解和掌握Linux系统操作的基础教程,涵盖了从基本命令到高级管理的诸多方面,对提升Linux技能有很大帮助。
### Linux命令学习笔记 在本篇文章中,我们将详细介绍如何运用Linux命令来编写高效的Shell脚本。这不仅仅是一份简单的指南,而是深入探索Linux系统管理、自动化任务和脚本编写的一次旅程。文章涵盖的主要内容包括:...
【linux学习笔记--17】POSIX IPC——消息队列.doc 【linux学习笔记--18】POSIX IPC——信号量.doc 【linux学习笔记--19】...【linux学习笔记-5】编写自己的ls命令.doc 【linux学习笔记-6】文件IO操作--读写、重定向等.
学习linux的笔记,发到博文了,鉴于文档方便保存和查阅,发出来,免费的哈 博文来自http://blog.csdn.net/wklken,共12篇,类似手册,可快速练习和查阅,容易上手 文档列表: Linux笔记——vim常用操作及扩展补充...
linux shell命令学习笔记
以上就是Linux系统中一些常用命令的学习笔记。每个命令后面通常可以跟上不同的选项和参数,来满足不同的需求。掌握这些命令,对于Linux系统的日常运维工作至关重要。随着时间的推移,建议持续学习和实践,不断提高对...
### Linux学习笔记与命令总结 #### 一、Linux基础概念 1. **Kernel 内核**: Linux 的核心部分,负责管理系统的硬件资源,并提供必要的服务给其他系统软件和应用程序。 2. **Shell 外壳**: 用户与操作系统之间的...
这份“Linux学习笔记.doc”文档可能会详细讲解以上各点,对于初学者来说是一份非常实用的学习资料。通过深入学习,你可以掌握Linux操作系统的核心技能,为后续的系统管理、开发或运维工作打下坚实基础。
Linux 基本命令学习笔记 Linux 是一个基于 Unix 的免费操作系统,它的历史发展可以追溯到 1960 年代。1969 年,Ken Thompson 在美国贝尔实验室用汇编语言完成了 UNIX 操作系统。1971 年,Dennis Ritchie 发明了 C ...
“ule”和“code”可能指的是课程中的示例代码或实验项目,可能包含了实现特定功能的Linux命令、脚本或者驱动程序代码,帮助学习者通过实践来加深理解。而“txt”文件可能包含了额外的注释、讲解或者练习题,以辅助...
【linux学习笔记-5】编写自己的ls命令 【linux学习笔记-6】文件IO操作--读写、重定向等 【linux学习笔记-7】用户标识UID与有效用户标识EUID 【linux学习笔记-8】Linux进程相关系统调用(1) 【linux学习笔记-9】...
Linux终端命令学习笔记.odt
Linux 嵌入式学习笔记主要涵盖了Linux操作系统的基础知识以及C语言编程的相关内容。下面将对这些知识点进行详细的解析。 1. Linux基础操作: - 登录:在Linux系统中,用户通过`用户名:密码`的方式登录系统。 - ...