1. linux里怎麼修改TXT文檔
1、進入Ubuntu桌面後,打開終端,快捷鍵為ctrl+alt+T。
2. Linux下想編輯/etc/sudoers文件,出現Found a swap file 的問題
Linux下想編輯/etc/sudoers文件,出現Found a swap file的問題,是設置錯誤造成的,解決方法如下:
1、首先打開虛擬機的Linux系統,輸入用戶名。
3. linux 給用戶sudo 和 操作文件許可權
給讀寫許可權(當前目錄下所有文件)
chmod -R 755 ./
給讀寫可執行許可權
chmod -R 777 ./
當前目錄
chmod -R 777 xxx
-rw------- (600) 只有所有者才有讀和寫的許可權
-rw-r--r-- (644) 只有所有者才有讀和寫的許可權,組群和其他人只有讀的許可權
-rwx------ (700) 只有所有者才有讀,寫,執行的許可權
-rwxr-xr-x (755) 只有所有者才有讀,寫,執行的許可權,組群和其他人只有讀和執行的許可權
-rwx--x--x (711) 只有所有者才有讀,寫,執行的許可權,組群和其他人只有執行的許可權
-rw-rw-rw- (666) 每個人都有讀寫的許可權
-rwxrwxrwx (777) 每個人都有讀寫和執行的許可權
[root@localhost ~]# chown [-R] 所有者 文件或目錄
4. linux sudo用法
一種約束用戶執行系統管理命令方面的安全機制,允許指定的用戶以root身份執行指定的命令而不需要提供root密碼。用過Ubuntu(Debian系)的小夥伴很有發言權。
當用戶要執行比如systemctl stop httpd時,如果該用戶不被允許使用systemctl stop命令,則命令無法運行,從而實現只允許指定用戶(信任的小夥伴)才可運行相關系統、服務管理方面的命令;如果用戶被允許使用該命令,sudo機制也會提醒用戶輸入其賬號密碼,從而存在一個緩沖的時間,可以讓命令執行者腦袋清醒一下,確認無誤後敲下回車。
Sudo應該是Switch User Do的簡寫(尚未考證),簡單粗暴的翻譯就是「切換用戶干」,當指定sudo systemctl stop httpd命令時,事實上是以root用戶的身份運行的。下面以Redha系CentOS7.6來介紹一下sudo的使用,通過visudo直接回車可看到:
圖中可以看出默認有8個命令別名,每一個別名分別對應一些命令,比如PROCESS,是nice、kill、killall三個命令的別名。之所以要有別名,是因為將命令分門別類後便於後面的引用。
看懂語法,基本就可以搞定了。每個框框中注釋部分說的很清楚。比如「%wheel ALL=(LL) NOPASSWD:ALL」表示wheel這個群組中的用戶可以在任何主機上執行任何命令且不需要輸入密碼。
用戶名:ds
群組: testgroup
要求:只允許testgroup群組用戶執行跟networking相關的命令
步驟:
1、 [endif]命令行中輸入visudo回車—編輯/etc/sudoers文件
2、 [endif]去掉「Cmnd_Alias NETWORKING…「一行的的注釋
3、 加入下面一行
4、 測試
可以看到ds用戶執行ping是可以的,但是執行kill命令就不行了,即使使用sudo嘗試使用root身份執行也不行:
通過/var/log/secure日誌文件可以看的更詳細:
常用實例講解
1 .oracle用戶可以在任何地點以任何的身份執行所有命令,等同於root。
oracle ALL=(ALL) ALL
2. oracle2用戶可以在任何地點以root的身份執行命令useradd(無需密碼)和usermod(需要密碼).
這樣oracle2就可以免密碼useradd,有密碼(密碼為oracle2的自身密碼)使用userdel。
oracle2 ALL=(root) NOPASSWD:/usr/sbin/useradd, PASSWD:/usr/sbin/userdel
使用方式如下
[oracle2@centos74 ~]$ useradd test001 # 直接使用命令是不可以的。
-bash: /usr/sbin/useradd: Permission denied
[oracle2@centos74 ~]$ sudo useradd test001 # 必須加sudo
[oracle2@centos74 ~]$ id test001 # 查看添加的用戶信息
uid=1031(test001) gid=1032(test001) groups=1032(test001)
3. oracle3用戶只能在192.168.1.120主機遠程登錄並以root身份執行ifconfig eth0命令。
Cmnd_Alias NETCMND = /sbin/ifconfig eth0
oracle3 192.168.1.120 = (root) NOPASSWD:NETCMND
4. oracle4用戶可以執行/usr/sbin下的所有命令除了/usr/sbin/userdel
oracle4 ALL=(ALL) /usr/sbin/,!/usr/sbin/userdel
5. oracle5用戶可以cat /var/log/secure*的文件
oracle5 ALL=(ALL) /bin/cat /var/log/secure*,!/bin/cat /var/log/secure* *