欢迎来到千学网!
您现在的位置:首页 > 实用文 > 其他范文

linux中vim保存root权限的文件linux操作系统

时间:2023-07-15 08:46:17 其他范文 收藏本文 下载本文

以下是小编整理的linux中vim保存root权限的文件linux操作系统,本文共8篇,欢迎阅读分享,希望对您有所帮助。

linux中vim保存root权限的文件linux操作系统

篇1:linux中vim保存root权限的文件linux操作系统

Linux中经常会遇到用vim编辑好了文件,保存的时候提示当前文件是只读的。

E45: 'readonly' option is set (add ! to override)

原因也很简单,因为用户对当前编辑的文件没有写入权限,一个可行的解决办法就是重新使用sudo命令打开这个文件重新进行编辑,但是这样做的话,之前的编辑工作就需要全部重来了,怎么样才能在忘记使用sudo vim编辑自己不可写的文件后,仍然可以正常写入文件呢?

vim的强大之处就体现出来了,下面的指令轻松搞定

:w !sudo tee %

下面是命令使用的情况

:w !sudo tee %

[sudo] password for xxxx:

...

...

...

Press ENTER or type command to continue

回车后会提示文件已经改变,按O或者L重新加载一下就好,

W12: Warning: File “xxx” has changed and the buffer was changed in Vim as well

See “:help W12” for more info.

[O]K, (L)oad File:

命令解释

:w 是vim的写入命令

% 当前编辑的文件名

!sudo tee vim中调用shell命令都是以!开头的

整个命令就是:以root的身份运行tee命令,读取vim :w命令的输出作为标准输入,将其内容输出到标准输出设备,同时保存到%表示的文件中

篇2:Linux中如何保存未命名vim

在命令终端,输入vim命令,会打开vim文件,当编辑完文件后,保存时会提醒E32:

No file name,如何保存未命名vim?下面介绍方法:

在命令模式下,输入file,后跟路径和文件名,即可在保存,

如将此文件命名为welcome.txt,并保存在当前目录下。

命令:file welcome.txt

浏览当前目录,可以看到该文件。

通过cat命令,可以浏览文件内容。

注:我使用的Linux版本是Federa15

篇3:非 root 权限如何读写Linux文件Linux

用户在使用 Linux 系统时难免会出现口令遗失、配置错误、系统故障等问题,导致不能正常登录进自己的 Linux 系统,如果能够以其它的方式去读写 Linux 文件,对文件进行修改,则有可能恢复问题,至少也可以拷贝出重要文件,使重要数据不会被丢失。在此,有以下

用户在使用 Linux 系统时难免会出现口令遗失、配置错误、系统故障等问题,导致不能正常登录进自己的 Linux 系统。如果能够以其它的方式去读写 Linux 文件,对文件进行修改,则有可能恢复问题,至少也可以拷贝出重要文件,使重要数据不会被丢失。在此,有以下几种方法可以在不能正常登录时实现对 Linux 文件的读写。

紧急修复模式

紧急修复模式是以紧急修复软盘或 Linux 安装光盘引导启动后,在 boot 提示符下输入 “linux rescue” 参数引导进入的 Linux 基本环境。在紧急修复模式下,能够使用 chmod、vi、fsck 等命令去读写硬盘上的 Linux 文件,从而挽回某种过失,恢复系统正常。

单用户模式

与紧急修复模式只能加载本机 Linux 上的文件系统不同,单用户模式是在本机 Linux 内核引导启动后进入的一个运行级别(运行级别是1)。单用户指的是系统运行惟一的用户??超级用户模式下,进入时无需口令验证。进入此模式时,系统只是加载了可以运行的最低软硬件配置,可以做 Kernel 升级、设备安装等维护工作。在系统维护时,系统管理员往往要进入单用户模式来维护系统。

进入单用户模式的方法有许多种,如果安装了 LILO 多重启动管理器,在系统启动时的 “LILO boot” 提示符下输入 “linux single” 参数,即可进入单用户模式。

如果没有安装多重启动管理器,可以用系统启动盘引导。在 boot 提示符下输入 “linux single” 参数也可引导进入单用户模式。

如果没有系统启动盘,也可以在 DOS 环境下以 loadlin 程序引导进入单用户模式。如果主机上安装有 Windows 9x 系统,在 Windows 9x 启动时按 F8 可以进入 MS-DOS,如果没有安装 DOS 或 Windows 9x, 可以用 Windows 9x 安装光盘引导进入 DOS 环境,然后输入如下命令:

D:DOSUTILS>loadlin autobootvmlinuz root=/dev/hda5 ro single

即可引导进入 Linux 单用户模式(假设 D 盘是光盘驱动器,/dev/hda5 是 Linux 系统的根分区)。

软盘上的 Linux

把 Linux 系统做在一张或数张软盘上,以此软盘引导启动就能进入一个完全独立于硬盘的 Linux 系统。用 mount 命令加载硬盘上相应的分区,就能够对该分区上的文件进行读写和系统维护。软盘上的 Linux 体积虽小,但五脏俱全,而且功能还不少,不仅可以用于 Linux 的学习试用、系统维护等,也有人将它应用于防火墙、简单路由器管理等方面。

软盘上的 Linux 有很多种,大家可以到相关网站下载img 或 zip 等文件,并用 rawrite 等程序把它制作到软盘上。

下面是相关网站:

◆ Tomsrtbt(The most GNU/Linux on 1 floppy disk)www.toms.net/rb/

◆ HAL91 www.itm.tu-clausthal.de/?perle/hal91/

◆ LOAF(Linux on a floopy) www.ecks.org/projects/loaf/

◆ MuLinux linux/“>sunsite.dk/mulinux/

◆ Coyotelinux linux.com”>www.coyotelinux.com

◆ FloppyFW www.zelow.no/floppyfw/

◆ LinuxRouter lrp.steinkuehler.net

光盘上的 Linux

DemoLinux 是一个可以直接运行在光盘上的 Linux,不需要分区、安装等复杂的步骤,只需以 DemoLinux 安装光盘引导启动就能进入 Linux 环境,而且不会将 Linux 安装到硬盘上,完全独立于硬盘,

默认情况下它会自动检测硬盘上的分区,并且 mount 到相应的目录,例如设硬盘上 Linux 系统的根分区是 /dev/hda5,那么就可以进入 /mnt/hda5 目录去读写相关文件。

DemoLinux 对文件系统有着广泛的支持,不仅支持 Linux 系统要用到的 ext 文件系统,而且也支持 FAT、NTFS 等文件系统,所以,如果 Windows 系统发生故障,那么也能用 DemoLinux 引导启动后去读写 Windows 系统所在分区内的文件,从而修复 Windows 系统故障。

DemoLinux 发行的本意是为了推广 Linux,用于 Linux 演示,让初学者了解 Linux 的使用方法和体会它的强大功能,让软件开发商知道基于 Linux 的开发并不是一件复杂的事情。因为它的功能非常强大,在本人看来它也是 Linux 系统管理员要必备的工具盘。相关网站 linux.org“>www.demolinux.org。

在 DOS/Windows 下读写 Linux 文件

几乎所有版本的 DOS/Windows 都没有提供对 Linux 文件系统(如 ext2、ext3 文件系统等)的支持,但借助不少软件可以帮助实现这一点,如 FSDext2、ext2fsnt、ext2ifs、Ltools 和 Explore2fs 等,并且这些工具都是免费的。

在操作方式上,FSDext2、ext2fsnt 和 ext2ifs 以设备驱动的方式让 Windows 提供了对 ext2 文件系统的支持。把 Linux 上的 ext2 文件系统直接挂载到某个盘符上,对它的访问就相当于访问 Windows 上的某个盘符,这样就非常易于使用。ext2 tools、Ltools 和 Explore2fs 提供了命令或图形界面等的方式来访问 Linux 上的 ext2 文件系统。虽然这些工具说是用来提供访问 ext2 文件系统,但在本人实际使用中,大多数也支持最新的 ext3 文件系统。这些工具都非常易于安装使用,大家只要看一下它的操作界面或帮助说明就基本不成问题了。

如上所述,如果主机上安装有 DOS/Windows 和 Linux 等多操作系统,那么就可以在 DOS/Windows 系统下实现对 Linux 文件的读写,以便修复 Linux 系统故障。相关网站如下:

◆ LTOOLS 主页www.it.fht-esslingen.de/?zimmerma/software/ltools.html,有关 LTOOLS 更详细的介绍以及下载,支持 DOS 和所有版本的 Windows;

◆ EXT2 IFS 主页 linux/ext2ifs.htm”>uranus.it.swin.edu.au/?jn/linux/ext2ifs.htm,仅支持 Windows NT//XP;

◆ Ext2fsnt 主页 ashedel.chat.ru/ext2fsnt/,仅支持 Windows NT/2K/XP;

◆ Explore2fs 主页 linux/explore2fs.htm“>uranus.it.swin.edu.au/?jn/linux/explore2fs.htm,仅能读 ext2 分区,支持所有版本的 Windows;

◆ FSDext2 主页www.yipton.demon.co.uk/,仅能读 ext2 分区,仅支持 Windows 9x/ME;

◆ Filesystems-HOWTO 主页 www.tldp.org/HOWTO/Filesystems-HOWTO.html,有各文件系统的介绍,包括提供大量有关各系统间文件互访的资料和工具。

第二硬盘法

如果你的主机上既没有软驱、光驱、没有安装双操作系统,也没有安装 LILO、Grub 等多重启动管理器,导致以上方法都失效,那么除了在这台主机上增加软驱或光驱设备外,还可以把这台主机上的硬盘拆卸下来挂接到别的 Linux 主机上做为第二块硬盘,然后用 mount 命令加载第二块硬盘内相应的分区来达到读写这块硬盘内 Linux 文件的目的。

从上面可以看出,只要能在本地重新启动系统,那么即使没有超级用户的口令也能很轻易地去读写 Linux 文件,从而获取重要数据。所以,系统管理员有必要加强机房安全管理,以免重要数据失窃。

原文转自:www.ltesting.net

篇4:关于Linux系统中文件及文件夹权限笔记linux操作系统

chmod -R 777 dir/

-R 更改dir 目录及dir内所有子文件和文件夹

777 指将“文件所属用户、所属用户组、其它用户”改为读、写、执行。

篇5:关于Linux系统中文件及文件夹权限笔记linux操作系统

chmod 参数:a(用户及组)、u(用户)、g(组)、0(其他用户)

chmod 运算符:+(加)、-(减)、=(赋予)

chmod +x file.txt (用户、组、其他用户,加执行权)

chmod u+x file.txt (用户,加执行权)

例4:

$ chmod a–x mm.txt

$ chmod –x mm.txt

$ chmod ugo–x mm.txt

三、Linux 常用文件权限

777(读写执行、读写执行、读写执行)

755(读写执行、读执行、读执行)

644(读写、读、读)

400(读、禁止、禁止

四、创建时的权限

(1)用户id(uid)用来设置文件所有者,主组用来设置用户组(除非创建文件的目录有Sgid位设置),

(2)”umask “命令可以为用户账号中新文件的创建进行缺省设置。具体来 说,umask是用来设置权限掩码的,将现有的存取权限减掉权限掩码后,即可产生建立文件时默认的权限。例如,root的权限为 777,若权限掩码设为022,那么两都相减后可得755。在命令行中键入”umask “命令,查看当前设置 ,如要修改” umask“设置,输入:$umask 号码,如:umask 0022(默认设置),”umask“ 命令不设置文本文件和脚本文件而只在目录中设置执行位。

(3)如果你创建一个文件夹或文件 (以umask 0022为例),777-022=755为创建文件夹的权限,而666-022=644为创建文件的权限,执行”ls -l“,会显示:rwxr-xr-x(文件夹),rw-r--r--(文件)

五、修改文件夹的权限──chmod

(1)参数含义:ugoa分别表示属主、属组、其它、所有;+表示追加权限;-表示删除权限;=表示追加指定的权限并删除其它非指定的权限。

(2)使用示例:追加属主可执行、删除属组可写、更改其它为仅读。

$chmod -c u+x,g-w,o=r file_name

(3)权限可以用字母或数字表示,读 (r) = 4,写(w) = 2,执行(或搜索)(x)=1这些数字加到一起就得到用于chmod命令的数字。(注意:如果您正在文件或目录中使用ACL,使用数字模式chmod命令会使ACL无效)

例:

所有者权限:读+写+执行=4+2+1=7

组许可权限 : 读+写= 4+2=6

其他用户许可权限:读=4

则命令为:$chmod 764 file_name4.将某个目录下的子目录和文件权限一次性更改的方法使用命令:chmod -R 777 目录名参数R即是对子目录进行递归操作

六、比较实用权限修改例子

查看linux文件的权限:ls -l 文件名称

查看linux文件夹的权限:ls -ld 文件夹名称(所在目录)

修改文件及文件夹权限:

sudo chmod -(代表类型)×××(所有者)×××(组用户)×××(其他用户)

常用修改权限的命令:

sudo chmod 600 ××× (只有所有者有读和写的权限)

sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)

sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)

sudo chmod 666 ××× (每个人都有读和写的权限)

sudo chmod 777 ××× (每个人都有读和写以及执行的权限)

篇6:linux怎么悠文件和目录权限linux操作系统

在linux中设置目录与文件权限我们都需要使用命令模式来操作,下面我来介绍利用chmod命令来改变文件与目录权限实例,有需要的朋友可参考,

chmod 命令可以改变所有子目录的权限:

改变一个文件的权限:

代码如下复制代码

chmod mode file|dir

改变所有子目录的权限:

代码如下复制代码chmod mode dir -R

//注意后面加了个-R参数

如:将file目录下所有文件权限改为777:

代码如下复制代码

chmod 777 file -R

数字设定法

我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加,

所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。

例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。

篇7:Linux查看文件权限、修改文件权限linux操作系统

在linux中查看与修改文件权限我们都必须使用命令来操作,不能像windows一样点几下就好了,下面我们简单的介绍一下linux中的相关命令.

查看权限命令

查看目录的相关权限可以采用命令ls -lD,或者直接用ls -la

ls -l www.111cn.net //这里表示查看111cn目录

修改权限命令

chmod 777 文件名

1.chmod 577 /home/stuser -R

2.umask -p 0200

3.chown XXXX YYYY (XXXX 为用户名 YYYY为文件名)

权限列表

-rw-------  (600) 只有所有者才有读和写的权限

-rw-r--r--  (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限

-rwx------  (700) 只有所有者才有读,写,执行的权限

-rwxr-xr-x  (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限

-rwx--x--x  (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限

-rw-rw-rw-  (666) 每个人都有读写的权限

-rwxrwxrwx  (777) 每个人都有读写和执行的权限

篇8:linux中php使用root权限执行shell脚本linux操作系统

如果你的apache 用户有root权限那么你的网站如果不安全就有可能很简单的给其它人获取root权限来执行shell命令哦,下面我来给大家演示一下,

今天晚上:19:30分,这个困扰了我好久的问题终于解决,其中的原理也终于弄清楚了,总之是利用sudo来赋予Apache的用户root的执行权限,下面记录一下:

利用php利用root权限执行shell脚本必须进行以下几个步骤:(所有步骤都是我亲自实验,若有不妥可指出,谢谢!)

1. 确定一下你的Apache的执行用户是谁。注:不一定就是nobody,我自行安装的httpd,我的Apache的用户就是daemon

2. 利用visudo为你的Apache执行用户赋予root执行权限,当然还有设置无密码。注:为了安全起见,这里最好是新建一个用户,让他作为Apache的执行用户即可(修改httpd.conf文件,后面我会指出)

3. 这步就简单了,编写你的脚本,利用php的exec,system...函数来执行。

接下来就是详细的实现过程:

1. 查看一下你的Apache的执行用户是谁: lsof -i:80        运行之后的结果为:

从图中我们可以清楚的看到,httpd(也就是Apache)的执行用户为:exec_shell(注:这是我本机上改过之后的用户,只是用来说明一下,你的肯定不是这个!)

确定了你的Linux上Apache的执行者是谁,下面为了安全起见,新建一个用户将Apache的执行用户修改为我们新建的用户。

2. 新建Apache的执行用户

useradd your_exec_user 我们知道创建用户的时候都会默认创建一个用用户名同样的用户组,也就是说现在我们也有一个your_exec_user的用户组

下面我们修改一下Apache的配置文件,使它的执行用户改为我们刚才新建的这个用户your_exec_user :

vi /home/houqingdong/httpd-exe/config/httpd.conf(这个是你的Apache所在的目录位置)

找到下面的地方,修改为你新建的用户:your_exec_user

重新启动Apache:  /home/houqingdong/httpd-exe/bin/apachect1 restart             ------------->重启完之后你可以利用:lsof -i:80 查看一下。

3. 执行visudo(或者是 vi /etc/sudoers) , 为your_exec_user赋予root权限,并且不需要密码,还有一步重要的修改(我被困扰的就是这个地方)

visudo   找到这个地方,添加your_exec_user,并且设置无需密码

我之前的时候,做完这里就去执行php脚本去了,结果一直创建不成功,而且很郁闷的是我切换到your_exec_user用户下直接执行是可以执行成功的,

后来,查看了一下Apache的日志文件,发现:

这里明显看出,在执行sudo的时候说必须要有一个tty去运行sudo , 知道问题出在哪里问题就好解决了: vi /etc/sudoers  将下面的这句注释掉:

这是因为默认的情况下,执行sudo需要一个终端,这里注释掉就可以了。接下来,写你的shell脚本和php命令吧

4. 这里贴一下我写的很简单的一个脚本,就是利用在php端传来的$directory和$name,在该目录下创建一个$name的目录

#!/bin/bash#Program# This program will execute mkdir: cd $directory ; mkdir $namePATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHcd $1if [ ! -d $2 ]; then mkdir $2else echo ”Already exist...“ exit 1fi

功能很简单,就是进入到$directory  判断要创建的目录名是否存在, 然后创建该目录 。

构造的php执行函数:(部分)

if(0==”dir“){ $make_dir_command=”/usr/bin/sudo /home/houqingdong/myshell/mkdir.sh /$directory/ $name“ ; echo $make_dir_command; exec($make_dir_command,$output,$return); if($return == 0){echo ”“; }else{echo ”"; }

这里顺带提一句:构造的命令里面最好都使用绝对路径。

5. 在网页端的执行结果:

提交之后,要过几秒中才会弹出执行结果的提示信息:

执行成功,在我们的/home/目录下:

哈哈。。。大功告成!(谢谢存哥的帮助指点!)

linux中清空Mysql数据库ROOT密码教程linux操作系统

chmod修改文件权限失败

Word中更改自动文件恢复的保存间隔和位置

提权不仅仅是文件权限上的问题

限制目录的文件执行权限保障服务器安全WEB安全

Linux 删除乱码文件与文件夹(支持批量)方法linux操作系统

excel编辑后保存自动出现TMP文件且无法删除?

如何在虚拟环境中运行操作系统Windows安全

linux两台服务器间copy传输文件的最简单方法linux操作系统

linux中mySQL的安装和配置教程linux操作系统

《linux中vim保存root权限的文件linux操作系统(集锦8篇).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式

最新推荐
猜你喜欢
点击下载本文文档