AMcoder - javascript, python, java, html, php, sql

Ինչպե՞ս խմբագրել *nix համակարգի ֆայլը՝ օգտագործելով Ruby's File.open հրամանը:

Իմ CMS-ում (Rails 4), ես պետք է թույլ տամ օգտվողին CRUD գործընթացներ կատարել CIFS ամրացման կետերում: CentOS (6) համակարգում մշտական ​​CIFS տեղադրում ունենալու համար ես պետք է խմբագրեմ /etc/fstab ֆայլը և թարմացնեմ տեղադրման ցուցակը sudo mount -a հրամանով: Երբ փորձում եմ բացել /etc/fstab ֆայլը File.open-ով.

File.open("/etc/fstab", "a") do |f|
  f.puts "\n test"
end

Ես ստանում եմ այս սխալը.

Errno::EACCES: Permission denied - /etc/fstab

Դա նորմալ է, քանի որ /etc/fstab ֆայլը պատկանում է արմատային օգտվողին: Ֆայլը որպես սուպեր օգտատեր բացելու միջոց կա՞: Մյուս կողմից, ես բաց եմ տարբեր գաղափարների համար: Իմ պահանջն է խմբագրել fstab ֆայլը իմ հավելվածի ներսից:

03.03.2014

Պատասխանները:


1

Դիտեք այս պատասխանը ruby ​​ֆորումում.

Սկսեք ձեր սցենարը օգտագործելով

sudo ruby myscript.rb

Դուք չեք կարող ստանալ արմատային արտոնություններ միջին սցենարի համար, եթե ոչ

system("sudo ruby anotherscript.rb")
03.03.2014
  • Ի՞նչ անել, եթե ես պետք է օգտագործեմ դինամիկ պարամետրեր այդ սցենարում: :\ Ես պետք է օգտագործեմ params[:path] պարամետրը: 03.03.2014
  • system("sudo ruby anotherscript.rb #{params[:path]}"), stackoverflow.com/a/4244651/1120015 03.03.2014

  • 2

    Այս մեկը բարդ է, բայց դուք կարող եք ավելացնել ձեր վեբ օգտվողին sudoers ցուցակում և ներկայացնել sudo գաղտնաբառը, երբ փորձում եք խմբագրել ֆայլը: Համոզվեք, որ ձեր կապն ապահովված է https-ի միջոցով

    03.03.2014
    Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..