linux面试问题

发布于:2022-12-15 ⋅ 阅读:(368) ⋅ 点赞:(0)
  1. 修改密码的命令默认为passwd,需要按Enter键两次,如何一条命令快速修改密码呢?

echo 密码 | passwd

方法一、直接使用passwd命令

/bin/echo newpass|/usr/bin/passwd --stdin username

*注:该方式只适用于红帽系操作系统,比如centos,redhat等系统,在Debian系操作系统中,如Debian,Ubuntu等系统下,passwd命令没有 --stdin参数,无法完成该命令

方法二:使用chpasswd命令

上面用passwd命令的方法只能用于红帽系系统,这里提供一个可以用于Debian系系统的方法,使用chpasswd命令

/bin/echo username:newpass |chpasswd

方法三:使用python+usermod命令

usermod命令有一个-p参数,可以直接将一个已经加密得到的密文设置为系统密码

python中有个crypt的库,可以将一个字符串用DES单项加密,相对安全性较低

所以二者结合起来使用,现将我们想要的密码用crypt库加密得到密文,再用usermod 命令的-p参数修改成系统密码

def R_chpass(user,pass_):

username=user

passwd=crypt.crypt(pass_,'ab')

os.system("usermod -p %s %s" % (passwd,username))

转: 如何用linux命令修改linux主机ip网关子网掩码

linux一般使用ifconfig命令修改linux主机的ip.网关或子网掩码. 1.命令格式: ifconfig [网络设备] [参数] 2.命令功能: ifconfig 命令用来查看和配置网络设备 ...

linux系统执行多条命令,linux系统执行复合命令

在操作linux系统的时候,你是否遇到过打开一个目录,然后查看一个文件里面的内容. 我们可以使用命令   cd + 目录     cat + 文件名,我们需要输入两次,点击两次 enter   有没有 ...

Linux基础命令---修改用户密码

passwd 更改用户密码,超级用户可以修改所有用户密码,普通用户只能修改自己的密码.这个任务是通过调用LinuxPAM和LibuserAPI来完成的.本质上,它使用LinuxPAM将自己初始化为一个 ...

使用Linux命令修改数据库密码

通过登录mysql系统,# mysql -uroot -pEnter password: [输入原来的密码]mysql>use mysql;mysql> update user set p ...

shell chpasswd 命令 修改用户密码

使用useradd 命令增加一个用户后,它默认是没有设置密码的.如果需要给用户设置或者修改密码,一般会使用passwd命名. 但是passwd命令有一个缺陷,它需要人工交互操作. 如果你是一名系统管理 ...

date命令--修改linux系统时间

在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便. 1.命令格式: date [参数 ...

两条命令在Linux主机之间建立信任关系

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa //生成当前用户密钥 ssh-copy-id -i /root/.ssh/id_rsa.pub r ...

  1. 企业服务器,某天发现系统访问很慢,需要查看系统内核日志,请写出查看系统内核日志的命令;

tail -n 100 /var/log/messages

  1. 如果在Linux系统/tmp/目录,快速创建1000个目录,目录名为:jfedu1、jfedu2、jfedu依次类推,不断增加;

mkdir jfedu{1..1000}

  1. Httpd.conf配置文件中存在很多以#号开头的行,请使用vim相关指令删除#开头的行;

更新:最终答案为:

:g/ *#.*/d

 

简单解释一下:

g :全区命令
/ :分隔符
^\s*$ :匹配空行,其中^表示行首,\s表示空字符,包括空格和制表符,*重复0到n个前面的字符,$表示行尾。连起来就是匹配只有空字符的行,也就是空行。
/d :删除该行

笔记:

1,$:对所有行生效.(从第一行到最后一行($)都生效)

s/x/y/:将x替换为y.

^#:开头为#的.

.*:和后面若干个字符.

g:(global)全局的.例如,s/x/y/只会将一行中第一个x替换为y,但s/x/y/g会将一行中所有的x替换为y.

^:[反向选择] 或 [定位在行首],在[]内代表反向选择,在[]外代表定位在行首.

$:定位在行尾.

.(小数点):代表[一定有一个任意字符].

举例: #grep -n 'g..d' xx.txt

意义:从xx.txt中找出有开头是g,结尾时d,g和d中间必有两个字符的行.

*(星号):代表[重复前一个字符,0到无穷多次]

举例:[xx*] 第一个x必须有,第二个x可有可无,x*是一起的. 

  1. RPM及YUM管理工具的区别是什么?

一、rpm和yum命令安装软件的区别:

        rpm命令和yum命令都可以用来安装软件。

        rpm 只能安装已经下载到本地机器上的rpm 包,yum能在线下载并安装rpm包,能更新系统。

        rpm适用于所有环境,而yum要搭建本地yum源才可以使用!

        yum是上层管理工具,rpm是底层管理工具。

        yum命令在安装软件时如果碰到了依赖性的问题,yum会去主动尝试解决依赖性,如果解决不了才会反馈给用户。而rpm命令一旦遇到了依赖性的问题不会去解决依赖性,而是直接反馈给用户,让用户自行解决。

        yum是在rpm的基础上建立的一个工具,在配置好yum源之后很多功能比rpm命令更强大,更方便。rpm可以查询包安装后生成的配置文件等,查询未安装软件包中的内容,查询软件包相关的脚本。一般情况下软件包的查询,安装,卸载,和软件属于的软件包等命令用yum的相关命令来完成更好。

linux中yum与rpm区别_ziyun_xiaoyan的博客-CSDN博客

  1. 企业中安装软件,何时选择YUM安装或者源码编译安装?

常用安装软件rpm、yum、源码编译安装方式的介绍_Meimei_X的博客-CSDN博客

  1. 将Linux系统中PHP5.3版本升级至PHP5.5版本,升级方法有几种,分别写出升级步骤?

linux php 升级5.3,linux php5.3.x升级到php5.5.x

  1. 使用源码编译安装httpd-2.4.25.tar.bz2,写出安装的流程及注意事项。

一、导入文件httpd-2.4.25.tar.bz2

二、解压httpd-2.4.25.tar.bz2  

tar xvf httpd-2.4.25.tar.bz2

三、cat README看这软件是干什么的

四、看安装方法 cat INSTALL

五、

 ./configure --prefix=/apps/httpd24 --sysconfdir=/etc/httpd --enable-ssl --enable-so

出错了,缺少安装包apr

yum install apr-devel 正常缺少的都是devel

安装缺少的文件  gcc ,openssl-devel ,pcre-devel ,apr-devel ,apr -util-devel .

六、然后就有了Makefile 

七、make -j 4 或者make

可以先看一下,现在只有tree没有其他的

八、

make install

九、

apachectl start (/apps/httpd24/bin apachectl )
修改env.sh或者.bashrc
PATH=/apps/httpd24/bin;$PATH

已经完成安装

十、vim /etc/rc.d/rc.local开机自启

/apps/httpd24/bin/apachectl start

十一、chmod +x /etc/rc.d/rc.local   给这个文件执行权限

十二、修改显示网页cd /apps/httpd24/htdocs

 注释:  防火墙开着会导致网站打不开

sudo systemctl status firewalld 查看防火墙是否关闭

systemctl disable firewalld.service  关闭防火墙

启动不成功 

cd  /apps/httpd24/bin/  通过解决路径启动

没有配置环境变量的话就得用bash或者./执行,

写进变量vim/etc/profile.d/env.sh  ,添加PATH=/apps/httpd24/bin:

systemctl status httpd  查看httpd状态

systemctl start httpd 开启httpd

ps -aux |grep httpd  查询端口是否被占用,

pkil -9  httpd 

修改http的的文件位置

1 vim /etc/httpd/conf/httpd.conf

2、/DocumentRoot 修改后面的路径 

curl 192.168.1.7/test.sh|bash 访问其他服务器的脚本,传送给bash执行


网站公告

今日签到

点亮在社区的每一天
去签到