当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪Linux下修改终端提示符及颜色的方法(图文)      给大家介绍下如何修改终端的提示,顺便介绍下提示符的颜色: PS1变量简介 PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。 可以使用 man bash命令查看bash手册,找到该变量.........
    ▪恢复linux及windows启动引导的方法分享      1,恢复linux启动引导(以ubuntu为例) 有喜欢用wubi装linux的朋友吗,这种安装方法是基于windows的,如果windows挂了,比如重装了或还原了,那么原来安装的linux也就没了,进不去了。 这里分享.........
    ▪linux下pam_chroot的实例分享      查看文件issue的内容:   代码示例: [root@node1 ~]# cat /etc/issue Red Hat Enterprise Linux Serverrelease 5.8 (Tikanga) Kernel \r on an \m 建立测试用户:   代码示例: [root@node1 ~]# useradd test [root@node1 ~]# mkdir /ch.........

[1]Linux下修改终端提示符及颜色的方法(图文)
    来源: 互联网  发布时间: 2013-12-24

给大家介绍下如何修改终端的提示,顺便介绍下提示符的颜色:

PS1变量简介

PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。

可以使用 man bash命令查看bash手册,找到该变量支持的特殊字符,以及这些特殊字符的意义:
 

\d :#代表日期,格式为weekday month date,例如:"Mon Aug 1"  
\H :#完整的主机名称。  
\h :#仅取主机的第一个名字,如上例,则为fc4,.linux则被省略  
\t :#显示时间为24小时格式,如:HH:MM:SS  
\T :#显示时间为12小时格式  
\A :#显示时间为24小时格式:HH:MM  
\u :#当前用户的账号名称  
\v :#BASH的版本信息  
\w :#完整的工作目录名称。家目录会以 ~代替  
\W :#利用basename取得工作目录名称,所以只会列出最后一个目录
\# :#下达的第几个命令  
\$ :#提示字符,如果是root时,提示符为:# ,普通用户则为:$ 

 修改终端提示符

查看默认提示符设置:
 

代码示例:
$ echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$

修改默认设置,将如下命令添加到当前登录用户的~/.bashrc文件中,然后使用source使其生效。
 

代码示例:
$ vi~/.bashrc
#在文件最后添加如下设置
export PS1="[\u@\h \W] \$ "
$ source ~/.bashrc#使其设置生效

颜色设置

在PS1中设置字符序列颜色的格式为:[\e[F;Bm]

其中“F”为字体颜色,编号30~37;“B”为背景色,编号40~47。

下面看下颜色表:

 前景背景      颜色
------------------------
30      40      黑色  
31      41      红色  
32      42      绿色  
33      43      黄.色  
34      44      蓝色  
35      45      紫红色  
36      46      青蓝色  
37      47      白色 


效果控制代码:

代码              意义  
-------------------------  
0                 OFF  
1                 高亮显示  
4                 underline  
5                 闪烁  
7                 反白显示  
8                 不可见

修改提示符颜色示例
$ PS1="\[\e[32m\]#\##\[\e[1;31m\]^_^@\[\e[36m\]\h \w]\$\[\e[m\]"

说明:

‘\[\e[32m\]’用来设置‘#\##’的颜色为绿色,#\##就是显示现在运行的是第几条命令
‘[\e[31m\]’设置‘\u@’的颜色为红色并高亮显示,如果指定多个数字需要用分号隔开。\u@ 就是当前登录的用户名后跟一个‘@’符号。
‘\[\e[36m\]’设置‘\h\w’为青蓝色,\h表示主机名的第一位,如果主机名为centos6.lampbo.org,那么就显示centos6;\w将显示完整的绝对路径。
‘\$’ 提示字符,如果是root时,提示符为:# ,普通用户则为:$。
‘\[\e[m\]’使用来关闭颜色设置的。要是你没有这个的话;那么,你的命令提示符,包括你通过命令提示符输出的东西都是和最后一次的颜色设置相同。
为了能够在启动和登录是可以保持刚刚设置的变量,需要将PS1的设置加入到用户home目录的.bashrc文件后。
最终效果:


    
[2]恢复linux及windows启动引导的方法分享
    来源: 互联网  发布时间: 2013-12-24

1,恢复linux启动引导(以ubuntu为例)
有喜欢用wubi装linux的朋友吗,这种安装方法是基于windows的,如果windows挂了,比如重装了或还原了,那么原来安装的linux也就没了,进不去了。

这里分享一个简单的恢复方法:
首先,找到原来的系统安装目录,然后将目录重命名,比如把“ubuntu”重名名为“ubuntu1”,因为如果不重命名的话,安装的时候就会提示你先卸载原来的linux系统。
然后,找到原来的系统安装光盘,或镜像文件重新安装一次。

注意:
这次安装一定要选择与原来的盘符一致,比如原来安装到D盘这次还要安装到D盘,安装大小越小越好,输入用户名和密码点击安装就行了。
安装完后,选稍后重新启动,然后再到系统安装目录下,将新生成的“ubuntu”系统文件夹删除,然后把原来的“ubuntu1”文件夹再改名为“ubuntu”,重启即可。

这样就可以登录进原来的linux了。

2,恢复windows启动引导
如果windows挂了,甚至开机什么都不显示,可以尝试下面几种方法
方法1,如果还有原来的windows安装盘(必须是原来的)或者修复盘,从光盘启动后选择修复即可。

方法2,如果不幸把windows启动盘也丢了,那可以用PE修复。

方法3,如果连PE也没有的话,还有一种方法,就是装一个其他的系统安装盘,xp或win7或linux或苹果系统。


    
[3]linux下pam_chroot的实例分享
    来源: 互联网  发布时间: 2013-12-24

查看文件issue的内容:
 

代码示例:
[root@node1 ~]# cat /etc/issue
Red Hat Enterprise Linux Serverrelease 5.8 (Tikanga)
Kernel \r on an \m

建立测试用户:
 

代码示例:
[root@node1 ~]# useradd test
[root@node1 ~]# mkdir /chroot
[root@node1 ~]# export _DIR=/chroot
[root@node1 ~]# export _USER=test

创建必要的设备文件:
 

代码示例:
[root@node1 ~]# mkdir -pv$_DIR/{etc,bin,dev/pts,lib,home/$_USER,proc}
[root@node1 ~]# mknod -m 644$_DIR/dev/tty1 c 4 1
[root@node1 ~]# mknod -m 644$_DIR/dev/tty2 c 4 2
[root@node1 ~]# mknod -m 644 $_DIR/dev/tty3 c 4 3             
[root@node1 ~]# mknod -m 644$_DIR/dev/tty4 c 4 4
[root@node1 ~]# mknod -m 644$_DIR/dev/tty5 c 4 5
[root@node1 ~]# mknod -m 644$_DIR/dev/tty6 c 4 6
[root@node1 ~]# mknod -m 444$_DIR/dev/urandom c 1 9
[root@node1 ~]# mknod -m 666$_DIR/dev/zero c 1 5
[root@node1 ~]# mknod -m 666$_DIR/dev/null c 1 3
[root@node1 ~]# mknod -m 666$_DIR/dev/ptmx c 5 2
 
[root@node1 ~]# vim /etc/fstab
devpts  /chroot/dev/pts
devpts
gid=5,mode=620  0 0
proc /chroot/proc  proc  defaults  0 0
 
[root@node1 ~]# cp /bin/bash/bin/false /bin/pwd /usr/sbin/sshd /bin/true $_DIR/bin/

ldd 命令查看每个可执行文件需要的 lib:
 

代码示例:
[root@node1 lib]# ls $_DIR/lib
ld-linux.so.2     libfipscheck.so.1     libnspr4.so
libaudit.so.0     libgssapi_krb5.so.2  libnss3.so
libcom_err.so.2  libk5crypto.so.3      libnssutil3.so
libcrypto.so.6   libkeyutils.so.1      libpam.so.0
libcrypt.so.1     libkrb5.so.3           libplc4.so
libc.so.6          libkrb5support.so.0  libplds4.so
libdl.so.2         libnsl.so.1 libpthread.so.0

配置文件:
 

libresolv.so.2
libselinux.so.1
libsepol.so.1
libtermcap.so.2
libutil.so.1
libwrap.so.0
libz.so.1

查看:
 

代码示例:

[root@node1 ~]# echo "$_USER
[root@node1 ~]# echo "session
[root@node1 ~]# echo "session

$_DIR">>/etc/security/chroot.conf
required     pam_chroot.so" >>/etc/pam.d/sshd
required      pam_chroot.so">>/etc/pam.d/login

[root@node1 ~]# grep"root:\|$_USER" /etc/passwd > $_DIR/etc/passwd
[root@node1 ~]# grep"root:\|$_USER" /etc/group > $_DIR/etc/group
[root@node1 ~]# chown -R root:root$_DIR
[root@node1 ~]# chown -R$_USER:$_USER $_DIR/home/$_USER

重启服务:
 

代码示例:
[root@node1 ~]# service sshd restart

客户端测试:
 

代码示例:
[root@Server250 ~]# sshtest@192.168.10.10
test@192.168.10.10's password:
-bash-3.2$ ls
-bash: ls: command not found

服务器查看 sshd 进程:
 

代码示例:

[root@node1 ~]# ps -ef | grep sshd
root      10131     1  0 12:06 ?
root      10249 10131  0 12:21 ?
root      10287 10131  0 12:24 ?
test      10291 10287  0 12:24 ?
root      10296 10253  0 12:24 pts/0
00:00:00 /usr/sbin/sshd
00:00:00 sshd: root@pts/0
00:00:00 sshd: test [priv]
00:00:00 sshd: test@pts/1
00:00:00 grep sshd

[root@node1 ~]# ls -l/proc/10291/root
lrwxrwxrwx 1 root root 0 11-05 12:24/proc/10291/root -> /chroot
cp /bin/uname  /chroot/bin/
cp /usr/bin/dirname  /chroot/bin/
cp /bin/touch   /chroot/bin/
cp /lib/tls/librt.so.1  /chroot/lib/tls
cp /usr/bin/tty  /chroot/bin/


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
php开源软件 iis7站长之家
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
▪Shell脚本实现检测文件是否被修改过代码分享
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
▪C语言实现的ls命令源码分享
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
▪linux shell 自定义函数方法(定义、返回值、变...
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3