shell腳本切換到root
⑴ linux shell腳本有一條sudo語句,如何在腳本里獲得本人的密碼,從而得到root許可權
echo"yourpasswd"|sudo-Syourcmd
⑵ linux shell腳本切換用戶執行一段命令
ls -l /bin/echo 看看echo命令的許可權是什麼 如果其他用戶沒有執行許可權,就切到root下加一下x許可權
chmod o+x /bin/echo
⑶ 有沒有辦法在Shell腳本中切換到root用戶
如果adsl-start不是腳本,則
chmod 4755 /usr/sbin/adsl-start
如果是腳本就找到對應的程序再 4755
或是用 expect 來搞也可以。看 expect 的例子。
⑷ 如何給一個shell腳本提權為root執行
第一步:安裝USB驅動,進入設置-應用程序-開發-USB調試,將第一個選項打鉤選中。然後通過USB線連接電腦,提示安裝驅動。如果是32位的系統選擇x86文件夾安裝驅動,如果是64位系統選擇amd64文件夾。
第二步:軟體准備,將提供的軟體工具包中的TMG文件夾,放到C盤根目錄下。之所以放於此不是指定位置,只是為了後續在MS-DOS中進入文件夾帶來方便。文件夾路徑:C:\TMG\
第三步:檢查adb.exe和fastboot.exe;確定TMG文件夾里的tools有adb.exe和fastboot.exe這兩個文件,當然如果你按照前兩步提示自然不會出錯。
第四步:檢查驅動安裝情況,拔掉usb線,正常關機,然後按著後退鍵(就是右下角的那個帶箭頭的,一直按著)再按開機鍵會進入bootloader(白色背景)。然後連接電腦,手機上會出現fastboot usb(紅字),注意不要點mount之類的。
打開開始-運行-CMD, 然後輸入命令 cd C:\TMG (如果你解壓的文件夾不是C:\TMG,則根據自己的位置修改命令)
命令運行成功會顯示C:\TMG>_
然後輸入命令 fastboot devices , 成功安裝了驅動的話會出現一行字,以測試用機為例,出現「HT97FL900532 fastboot」
第五步:開始Rooting
開始進入正題,繼續步驟4,在C:\TMG>後輸入命令 fastboot boot cm-hero-recovery.img , 成功的話你應該看到你的手機進入了recovery模式。
進入Recovery模式後會看到7個選項,分別是:
[Home+Back]reboot system now \\重起
[Alt+S]apply sdcard:update.zip \\安裝SD卡里的update.zip文件
[Alt+A]apply any zip from sd \\安裝SD卡里的任意zip文件
[Alt+W]wipe data/factory reset \\清除數據
[Alt+B]nandroid v2.2 backup \\備份
[Alt+R]restore latest backup \\恢復最後的備份
[Alt+F]repair ext filesystems \\修復
建議你備份一下你的ROM,用軌跡球將游標移動到 [Alt+B]nandroid v2.2 backup 選項上,按一下選中,以後萬一出現什麼問題也可以用來恢復(備份會自動放在SD卡上)。
現在開始輸入命令,一行是一個命令,注意大小寫,注意空格
adb shell mount /system
adb push su /system/bin/
adb shell chmod 4755 /system/bin/su
adb push Superuser.apk /system/app/
adb shell reboot
成功的話手機會自動重啟,這時候你的手機已經有root許可權了。
⑸ 在Linux下能不能以shell腳本的形式由普通用戶切換到root
很多手機軟體都支持這個功能的,你是要刷機嗎,你可以下個一鍵root大師,可以備份還原,而且也能一鍵刷機。試試一鍵root大師吧,root刷機成功率都很高,而且支持很多機型。
⑹ qt中執行的shell腳本需要root許可權,怎麼辦
root方法:
1、打開手機設置--開發者選項--usb調試功能設置。
2、一鍵root這樣的Kingroot、刷機精靈等設置下手機就好了。
3、順暢的讓手機上獲取到最高的root許可權了。
通過這樣的方式就讓手機上授權獲取到手機上比較好了。
⑺ shell中調用expect 我編寫了一個普通用戶切換到root的腳本。
在bash 中直接執行expect 應該使用 -c 選項,而不是使用重定向。
# expect -c '
spawn su -
expect ":" {
send "passwdXXXX\n"
}
interact
'
你這種想法也算不上托褲子放屁,既然expect 提供了 -c 選項,就說名直接在bash 中調用expect 的大有人在。
⑻ linux中如何寫shell腳本實現改變用戶為root並且不需要手動輸入密碼
編輯/etc/sudoers,給用戶設置免密碼使用su命令的許可權,執行
sudo su -
即可免密切換到root
⑼ shell腳本,我從root用戶切換到普通用戶之後,新定義了一個變數,但列印變數的值是空的,怎麼回事
在$前面加上轉義, echo ${Result1} 替換成echo ${Result1}
這個問題跟root用戶切換到普通用戶什麼的沒關系,而是因為你在用here-document的時候,並沒有用雙引號或單引號將!引用起來,或用轉義符將here-document中的元字元$轉義,這時候here-document中的文本將被擴展,即參數替換被啟用。
你運行一下這段腳本,看看Result1值的變化,就會明白了
#!/bin/bash
Result1="001"
echo "Parameter substitution is enabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
echo "Parameter substitution is disabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
bash<<'EOF'
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
⑽ 怎樣讓shell腳本默認以root許可權運行
運行命令groups,看看自己是不是在sudo組裡面,如果是, 運行: sudo a.sh 如果不是,讓root來運行,或者讓在sudo組裡面的某個賬戶來運行試試。 以上不一定有幫助,供參考,謝謝!