Di Slackware, menggunakan sbopkg
izin untuk membuat paket dari sumber. Repos tidak sebesar Debian, tapi bagus.
Beberapa perangkat lunak dapat menggunakan variabel lingkungan, misalnya pada emulator VICE c64, jika variabel
FFMPEG
diatur ke yes
, itu akan memungkinkan ffmpeg
perekaman emulator.
Saya mencoba menggunakan
$ export FFMPEG=yes; sudo sbopkg -B -i vice
tetapi ffmpeg
dinonaktifkan.
Sebaliknya saya harus menggunakan
$ su -
$ export FFMPEG=yes
$ sbopkg -B -i vice
yang bekerja
Bagaimana cara menggunakan variabel lingkungan sudo
?
sumber
sudo
membersihkan variabel-variabel di lingkungan sebelum menjalankan perintah yang diberikan. Anda harus memintanya untuk mempertahankan variabel di lingkungan agar perintah Anda berfungsi.Selain itu, Anda harus
export
denganFMPEG
variabel sebelum menggunakansudo
(export FMPEG=yes; sudo
), menetapkan di mana saja sama seperti memohonsudo
(FMPEG=yes sudo
), atau menggunakanenv
(env FMPEG=yes sudo
).Untuk mempertahankan variabel lingkungan, gunakan
-E
(atau--preserve-env
):Dimungkinkan juga untuk menetapkan variabel lingkungan spesifik seperti ini:
Jika gagal karena kebijakan keamanan yang berlaku, buka shell root dan setel variabel di sana:
sumber
perhatikan bahwa:
(export a=b; command)
sama dengana=b command
. Perhatikan tanda kurung.Maka jika kita menerapkan variabel tidak
sudo
tetapi langsung kesbopkg
, maka alih-alihFFMPEG=yes sudo sbopkg -B -i vice
kita bisa melakukannyasudo FFMPEG=yes sbopkg -B -i vice
Jika polisi keamanan mencegah hal ini, maka:
sudo bash -c "FFMPEG=yes sbopkg -B -i vice"
(Jangan gunakan
-E
, itu tidak aman karena akan membocorkan semua jenis variabel yang tidak terduga.)sumber